Commit Graph

61 Commits

Author SHA1 Message Date
Paul Chote
52f4e24e22 Fix spectator minimap not updating when in "Disable Shroud" view. 2020-02-14 23:07:31 +01:00
tovl
695d9a6cb1 Centralize shroud changes in one pass to improve performance. 2020-01-12 04:50:25 +01:00
abcdefg30
23b3c237b7 Update the year numbers in all license headers to 2020 2020-01-05 17:00:34 +00:00
teinarss
a47f60d3a6 Add a trait PlayerRadarTerrain to track explored terrain 2019-11-20 16:24:56 +01:00
Paul Chote
ab4a7e3558 Replace System.Drawing primitives with our own. 2019-03-04 18:26:42 +00:00
abcdefg30
cadbd0d9ab Change the year number in all cs headers from 2018 to 2019 2019-01-26 23:15:21 +01:00
Andre Mohren
a0ad79e555 Extracted RadarUp and RadarDown notifications to RadarWidget. 2018-09-24 22:43:14 +02:00
Paul Chote
ba38878933 Add TextureChannel.RGBA for RBGA sprites. 2018-06-04 23:33:57 +02:00
Arular101
8a60918841 Update copyright notice year to 2018 2018-01-17 00:47:34 +01:00
RoosterDragon
0899d02377 Avoid allocations when generating RadarSignatureCells.
The RadarWidget can supply a reusable buffer to each trait to avoid individual traits having to return new enumerables. Additionally, this allows the two traits to avoid LINQ and further allocations as they can manually enumerate and populate the buffer themselves.
2017-12-12 00:00:51 +01:00
Taryn Hill
43317e0f5d Update copyright notice year to 2017 2016-12-31 23:46:13 -06:00
Paul Chote
9ddfdc45b3 Introduce SoundType enum. 2016-12-23 11:34:23 +00:00
Paul Chote
65df25b1a4 Remove lazy loading of binary map data. 2016-03-18 20:16:24 +00:00
Paul Chote
602acabe47 Remove World.TileSet. 2016-03-12 19:47:07 +00:00
Paul Chote
e71225496b Clarify GPL version. 2016-02-21 16:30:48 +00:00
Paul Chote
b396965fd9 Update licence header year. 2016-02-21 16:27:31 +00:00
Sean Hunt
a7a22d7a49 Style fixes. 2016-01-03 12:02:26 -05:00
RoosterDragon
b5f24c3fa6 Add some missing Dispose calls, fix some Dispose implementations. 2016-01-01 04:51:54 +00:00
atlimit8
b07cd683e8 Easier actor selection in game by actor bounds center 2015-12-23 12:09:08 -06:00
Paul Chote
1b755d9833 Use RgbaColorRenderer in RadarWidget. 2015-12-19 12:28:58 +00:00
RoosterDragon
b0619a3e25 Added comments in performance sensitive code. 2015-12-13 16:24:54 +00:00
Philipp Schärer
830288b5a0 Fixed the minimap orders for left click control
Use the correct actions when orders are issued
over the minimap.
2015-11-13 08:56:43 +01:00
RoosterDragon
9f728b287b Remove event handlers to CellEntryChanged when done.
Several classes would attach event handlers to the Map which would live longer then they did. Detaching them when no longer needed allows the GC to reclaim them.
2015-11-04 23:09:32 +00:00
Pavel Penev
b16ebd480b Rename MapGridType.Diamond to MapGridType.RectangularIsometric 2015-10-26 00:42:30 +02:00
Pavel Penev
bb3aea338a Rename enum TileShape to MapGridType 2015-10-26 00:41:21 +02:00
Paul Chote
e819ff832b Record the SheetType in each Sheet. 2015-10-17 22:28:19 +01:00
Pavel Penev
642468ce0c Add MapGrid class
MapGrid is a mod Manifest field which includes (and thus makes redundant) TileSize, TileShape, SubCells info and MaximumTerrainHeight.
2015-09-27 04:14:43 +03:00
Paul Chote
ef55d646f7 Unstatic the Sound class. 2015-09-20 14:11:06 +01:00
Guido L
9bad84e117 Add Cell check to RadarWidget. 2015-08-22 09:31:09 +02:00
Paul Chote
3a8a18499e Fix radar pixel <-> cell conversions.
Fixes #8869.
2015-08-01 20:19:20 +01:00
Paul Chote
ed359c8aeb Improve radar display for isometric maps. 2015-07-31 08:34:16 +01:00
Paul Chote
372d93994c Account for heightmaps in choosing the minimap bounds. 2015-07-31 08:34:16 +01:00
Paul Chote
66f4e1d775 Render the full map to the radar backing sheet. 2015-07-30 08:18:39 +01:00
Paul Chote
86ba26e013 Convert shroud calculations and rendering to PPos. 2015-07-27 19:34:50 +01:00
Paul Chote
e8794032e0 Introduce initial PPos plumbing.
PPos is best thought of as a cell grid applied in
screen space.  Multiple cells with different
terrain heights may be projected to the same PPos,
or to multiple PPos if they do not align with the
screen grid.

PPos coordinates are used primarily for map edge
checks and shroud / visibility queries.
2015-07-27 19:34:49 +01:00
Paul Chote
86bf9086d9 Rename WorldRenderer.Position -> ProjectedPosition. 2015-07-05 14:57:59 +01:00
Paul Chote
f1e6f01e44 Use the standard radar shroud updating when switching to observer. 2015-07-05 11:14:59 +01:00
Paul Chote
aee951c86f Remove region assumptions from fast shroud tests. 2015-06-15 18:06:42 +01:00
Paul Chote
bf4722fb9f Distinguish between all map cells and cells inside map bounds. 2015-06-02 21:53:25 +01:00
Pavel Penev
0d33fdb5e1 Merge pull request #8200 from RoosterDragon/sheet-fixes
Sheet fixes
2015-05-22 18:30:13 +03:00
RoosterDragon
b48b994f16 Remove half-baked thread-safety mechanisms from Sheet.
Sheet is now thread-unsafe, rather than attempting to expose a dodgy thread safety model.
2015-05-20 18:50:28 +01:00
RoosterDragon
b9ebeaadca Improve performance of line rendering.
- Create an overload that renders a line in one color, as this allows most existing calls to be simplified. This also allows a slight performance improvement by only normalizing the components once.
- Introduce a DrawLineStrip method. This improves performance by allowing the color components to be normalized once for the whole strip, and only needing to calculate vertices once per point rather than twice since we can reuse the last result.
2015-05-19 21:41:50 +01:00
Paul Chote
acee680083 Use the correct (tile-based) radar color when updating the radar. 2015-04-26 07:19:57 +12:00
Paul Chote
145f7b28f5 Adjust IRadarSignature to support per-cell colors. 2015-04-19 22:27:47 +12:00
Matthias Mailänder
99283da84f Merge pull request #7723 from RoosterDragon/batch-shroud-cell-changes
Batch shroud cell changes
2015-03-28 12:16:30 +01:00
RoosterDragon
1584018dcd Batch shroud cell changes.
By maintaining a set of changed cells we can avoid repeating work for cells that change multiple times before being rendered. The shroud renderer and radar widget now delay their work until they must render, and thus process each changed cell only once. This avoids significant repetition that was causing major slowdown when many actors were in the world.
2015-03-27 19:50:05 +00:00
Paul Chote
2444f35695 Fix radar origin for non-square widgets. 2015-03-22 17:01:24 +00:00
abcdefg30
8ca61aa917 Updated all year numbers 2015-01-09 21:18:05 +01:00
RoosterDragon
7cfece6dc0 Introduce a new type for representing map coordinates.
To resolve the ambiguity introduced when the introduction of isometric maps meant that cell and map coordinates were no longer equivalent, a new type has been introduced so they can each be represented separately.
2015-01-07 17:30:34 +00:00
RoosterDragon
a6cda967c2 Formatted all files.
Automatically formatted all files via VS. This generally corrects indentation, removes trailing whitespace and corrects misplaced tabs or spaces. Manually tweaked a few files where required.
2015-01-06 21:28:50 +00:00