Commit Graph

234 Commits

Author SHA1 Message Date
abcdefg30
cadbd0d9ab Change the year number in all cs headers from 2018 to 2019 2019-01-26 23:15:21 +01:00
Paul Chote
a06cfb4004 Move TerrainRenderer to a mod-defined trait. 2018-10-13 18:16:56 +02:00
Paul Chote
9ff177359b Split IGraphicsContext from IPlatformWindow. 2018-06-13 18:45:21 +01:00
Paul Chote
ab14a86d39 Rename Renderer.Device to Renderer.Window. 2018-06-13 18:45:21 +01:00
Paul Chote
131496ebf8 Merge RGBA sprite rendering into SpriteRenderer.
Renderer.RgbaSpriteRenderer is kept as a thin
wrapper to maintain compatibility with consumer
code.
2018-06-04 23:33:57 +02:00
RoosterDragon
95ac1aa5b2 Avoid redundant property sets in WorldRenderer.Draw. 2018-05-29 23:05:39 +01:00
Paul Chote
a329711011 Render lines using SpriteRenderer without breaking the batch. 2018-05-23 23:28:22 +02:00
RoosterDragon
f6471d411e Reuse set when rendering actors in the world to avoid allocations. 2018-03-22 23:32:03 -03:00
Arular101
8a60918841 Update copyright notice year to 2018 2018-01-17 00:47:34 +01:00
reaperrr
fbc18dfb18 Use HashSet instead of IEnumerable to pass actors to renderable lists 2017-12-23 17:56:11 +00:00
reaperrr
04fb0f209d Spatially partition some actor overlays 2017-12-23 17:56:11 +00:00
reaperrr
6ef95405bf Split overlay renderable generation to separate list
To make the code a bit more readable and consistent with normal renderables.
2017-12-23 17:56:11 +00:00
Paul Chote
6f5d035e79 Introduce IMouseBounds and split/rework mouse rectangles.
The render bounds for an actor now include the area covered
by bibs, shadows, and any other widgets. In many cases this
area is much larger than we really want to consider for
tooltips and mouse selection.

An optional Margin is added to Selectable to support cases
like infantry, where we want the mouse area of the actor
to be larger than the drawn selection box.
2017-12-11 19:45:07 +01:00
Paul Chote
9d2935935c Add a debug visualization for screen map rectangles. 2017-12-04 23:10:23 +01:00
Matthias Mailänder
1aebf9857c Add support for only rendering effects inside screen bounds 2017-09-17 12:52:04 +01:00
rob-v
d4e9e0e069 Add Visualization chat commands 2017-07-23 15:08:24 +02:00
Paul Chote
2683b2507e Fix remaining voxel references in Game. 2017-06-14 18:56:06 +02:00
Paul Chote
dc4c3fd546 Rename VoxelRenderer to ModelRenderer. 2017-06-14 18:56:06 +02:00
Paul Chote
cdf2df58a0 Define RectangularIsometric world coordinate scale along the cell axis. 2017-05-07 13:45:30 +01:00
Paul Chote
f6b65c98e4 Fix PBOG voxel rendering. 2017-02-07 10:05:06 +00:00
Taryn Hill
43317e0f5d Update copyright notice year to 2017 2016-12-31 23:46:13 -06:00
Paul Chote
a16344d347 Remove "Show Shellmap" setting. 2016-12-23 11:34:23 +00:00
Paul Chote
c092c93401 Add depth buffer support to debug overlays. 2016-08-27 15:43:20 +01:00
Paul Chote
50da18cd22 Add depth buffer support to RgbaColorRenderer. 2016-08-27 15:43:20 +01:00
Paul Chote
d2f5fe7380 Draw order generator renderables above the shroud. 2016-08-22 20:27:59 +01:00
Paul Chote
69b358ec7b Add IEffectAboveShroud for effects that draw above the shroud. 2016-08-22 20:27:58 +01:00
Paul Chote
ed349f9086 Remove health bar rendering duplication. 2016-08-22 20:27:58 +01:00
Paul Chote
6354686b58 Introduce IRenderAboveShroud interface. 2016-08-22 17:45:25 +01:00
Paul Chote
11805bb567 Rename and tweak post-render interfaces. 2016-08-22 17:40:05 +01:00
Paul Chote
f0306e7cc2 Render voxels with an approximately-correct z-offset. 2016-08-21 12:43:16 +01:00
RoosterDragon
a4949ff1d5 Only check for and render selection bars for actors on screen.
This avoids expensive FogObscures checks and saves drawing selections bars for actors that are offscreen anyway.
2016-05-29 20:57:45 +01:00
RoosterDragon
178fcfaf8c Use Contains method on Selection when possible.
This allows the set to be utilized for a fast check, rather than degrading to a linear search via LINQ.
2016-04-19 21:19:36 +01:00
Paul Chote
2634643d91 Write z data to the depth buffer. 2016-04-15 09:42:29 -04: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
Paul Chote
88e15d9100 Fix voxel z offsets. 2016-01-15 17:04:19 +00:00
RoosterDragon
a50fa4fcaa Interleave renderables for effects and actors.
Previously, renderables from actors were z-ordered, but effects were excluded and not ordered. Now we order them all as a whole.
2015-12-28 21:28:12 +00:00
Paul Chote
43226d7c55 Move DrawRollover to WICW. 2015-12-19 12:28:08 +00:00
Paul Chote
0f1fcdaca4 Move DrawTargetMarker to TargetLineRenderable. 2015-12-19 12:28:08 +00:00
Paul Chote
78556ec60c Remove obsolete WorldRenderer.DrawRangeCircle. 2015-12-10 23:25:58 +00:00
DArcy Rush
8eb34f3cfa Replace 'Always show Healthbars' checkbox with dropdown
The player can now cycle between;
-Standard: Health and Status bars display only on mouse hover.
-Show On Damage: Health shows on damaged actors, Status always shows.
-Always Show: Health and Status bars are always displayed.
2015-11-29 21:52:31 +00:00
atlimit8
b6f17df260 Add ActorsHavingTrait<TTrait>([Func<TTrait, bool]) 2015-10-28 16:36:45 -05:00
Paul Chote
83949b250a Add a visualisation mode for depth sprites.
For now this displays the raw sprites.  It will
eventually be repurposed for rendering the proper
depth data.
2015-10-17 22:35:47 +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
atlimit8
8162fa27ab Add ActorInfo.HasTraitInfo<T>() requiring ITraitInfo types 2015-09-19 09:49:24 -05:00
atlimit8
85fab45451 Remove Actor.HasTrait<T>() 2015-09-19 09:49:23 -05:00
TheRaffy
1fc2158f2e Added a WeatherOverlay 2015-09-06 20:25:29 +02:00
RoosterDragon
ccad451060 Add WorldRenderer.ScreenVectorComponents.
This allows the components to be returned via out parameters, avoiding the need to allocate an array for most callers.
2015-07-15 21:24:01 +01:00
RoosterDragon
6113892276 Cache rotation matrices used by WorldRenderer.DrawRangeCircle. 2015-07-15 20:40:36 +01:00