vladislavbelov
90f064ff03
Switches from per draw vertex attribute format to precompiled vertex input layout.
...
Comments By: phosit, Stan
Differential Revision: https://code.wildfiregames.com/D4852
This was SVN commit r27363.
2023-01-06 00:39:25 +00:00
vladislavbelov
4ed41d4a9a
Switches from pipeline state descriptions to pipeline states.
...
Tested By: phosit, Stan
Differential Revision: https://code.wildfiregames.com/D4850
This was SVN commit r27328.
2022-12-31 18:29:44 +00:00
vladislavbelov
2d0cde4e64
Disallows backend buffer uploading inside framebuffer pass.
...
Differential Revision: https://code.wildfiregames.com/D4815
This was SVN commit r27182.
2022-10-29 23:20:04 +00:00
vladislavbelov
908d9a0079
Moves vertex buffer offset to SetVertexBuffer.
...
This was SVN commit r27137.
2022-10-09 11:47:34 +00:00
vladislavbelov
b0c29b8676
Removes GL types from regular renderer code after 3ed4eaf247.
...
This was SVN commit r26920.
2022-06-06 07:30:45 +00:00
vladislavbelov
a6f60afdc5
Adds instancing support to backend and enables it for minimap.
...
Tested By: Langbart
Differential Revision: https://code.wildfiregames.com/D4650
This was SVN commit r26901.
2022-05-24 07:11:23 +00:00
vladislavbelov
62e589ab76
Adds renderer backend interface and dummy backend.
...
Comments By: phosit, Stan
Tested By: Langbart, phosit
Differential Revision: https://code.wildfiregames.com/D4636
This was SVN commit r26858.
2022-05-08 22:02:46 +00:00
vladislavbelov
04bd96cee0
Moves uniform and texture binding to CDeviceCommandContext.
...
Tested By: Langbart
Differential Revision: https://code.wildfiregames.com/D4631
This was SVN commit r26848.
2022-05-02 20:57:22 +00:00
vladislavbelov
d2d22a4538
Makes the terrain and decals rendering code load effect once per usage.
...
This was SVN commit r26823.
2022-04-24 13:44:00 +00:00
vladislavbelov
aba7a170d9
Moves vertex attribute binding to CDeviceCommandContext.
...
Tested By: Langbart, Stan
Differential Revision: https://code.wildfiregames.com/D4610
This was SVN commit r26815.
2022-04-23 20:11:14 +00:00
vladislavbelov
2c8f4c4837
Moves AssertPointersBound to draw commands to not forget to call it for new shaders.
...
In the future it allows to call AssertPointersBound in a more lazy way.
This was SVN commit r26784.
2022-04-12 18:02:08 +00:00
vladislavbelov
37b30901b3
Removes C++ code for conditional defines removed in f29d059617.
...
Differential Revision: https://code.wildfiregames.com/D4551
This was SVN commit r26661.
2022-03-15 22:13:22 +00:00
vladislavbelov
b4253d48cb
Moves CShaderProgram to backend and handling via CDeviceCommandContext.
...
Differential Revision: https://code.wildfiregames.com/D4548
This was SVN commit r26652.
2022-03-14 22:16:14 +00:00
vladislavbelov
647fccd410
Replaces native GL types by backend format in vertex attributes in CShaderProgram.
...
This was SVN commit r26594.
2022-03-07 02:21:05 +00:00
vladislavbelov
bc6ab4ac49
Removes redundant CShaderProgram streams.
...
This was SVN commit r26582.
2022-03-06 20:53:39 +00:00
vladislavbelov
3a4bbd11fd
Moves all GL draw commands to CDeviceCommandContext.
...
Differential Revision: https://code.wildfiregames.com/D4518
This was SVN commit r26525.
2022-03-03 07:09:59 +00:00
vladislavbelov
59a0a74951
Fixes a degenerate triangle on terrain sides of map corners.
...
This was SVN commit r26487.
2022-02-25 23:45:54 +00:00
vladislavbelov
d5d1754991
Moves polygon mode handling to PipelineState and CDeviceCommandContext.
...
This was SVN commit r26486.
2022-02-25 22:05:06 +00:00
vladislavbelov
cff79b421a
Moves GL vertex and index buffer management to CDeviceCommandContext.
...
Tested By: Stan
Differential Revision: https://code.wildfiregames.com/D4493
This was SVN commit r26406.
2022-02-18 17:33:12 +00:00
vladislavbelov
4de89c3db1
Moves texture management to CDeviceCommandContext, adds quality options.
...
Comments By: nwtour, Stan
Tested By: nwtour, Stan
Differential Revision: https://code.wildfiregames.com/D4488
This was SVN commit r26365.
2022-02-13 19:30:28 +00:00
vladislavbelov
d4d1bc039f
Moves culling mode and front face state management to DeviceCommandContext.
...
Tested By: Langbart
Differential Revision: https://code.wildfiregames.com/D4456
This was SVN commit r26259.
2022-01-27 17:25:37 +00:00
vladislavbelov
5adbe4f1a3
Moves blend state management to DeviceCommandContext. Fixes #6420
...
Tested By: Langbart
Comments By: Stan
Differential Revision: https://code.wildfiregames.com/D4441
This was SVN commit r26228.
2022-01-19 17:28:47 +00:00
vladislavbelov
40e75f9c89
Removes binding additional attribute for water shader added in 1d9a8b2b0b.
...
Reported By: Freagarach
This was SVN commit r26223.
2022-01-15 16:47:42 +00:00
vladislavbelov
1d9a8b2b0b
Splits water surface and shore drawing functions and fixes their switch.
...
Differential Revision: https://code.wildfiregames.com/D4436
This was SVN commit r26215.
2022-01-14 17:34:58 +00:00
vladislavbelov
15c40861b4
Separates terrain alphamap combining and uploading.
...
Tested By: Stan
Differential Revision: https://code.wildfiregames.com/D4419
This was SVN commit r26184.
2022-01-07 14:33:54 +00:00
vladislavbelov
87b5c233c5
Splits CRenderer part about scene to CSceneRenderer.
...
Tested By: Stan
Differential Revision: https://code.wildfiregames.com/D4412
This was SVN commit r26165.
2022-01-04 13:29:01 +00:00
vladislavbelov
2f90becb28
Removes SkipSubmit and unused friends from Renderer.
...
This was SVN commit r26162.
2022-01-03 12:16:16 +00:00
vladislavbelov
4fba543488
Unifies providing SkyManager and WaterManager like other managers, refs b889826a3d.
...
This was SVN commit r26158.
2022-01-03 10:49:12 +00:00
vladislavbelov
abc3190c03
Removes binding native GLuint textures from public ShaderProgram API.
...
Differential Revision: https://code.wildfiregames.com/D4407
This was SVN commit r26143.
2021-12-30 16:37:51 +00:00
vladislavbelov
60a422b668
Moves water textures and terrain alpha composite map to GL texture class following 57ba7c4a1c.
...
Tested By: Stan
Differential Revision: https://code.wildfiregames.com/D4394
This was SVN commit r26120.
2021-12-27 08:14:47 +00:00
vladislavbelov
3809457513
Replaces unclear PreferGLSL by direct renderer backend choice.
...
Commented By: Stan
Differential Revision: https://code.wildfiregames.com/D4363
This was SVN commit r26069.
2021-12-14 06:34:02 +00:00
vladislavbelov
c0e0d620eb
Draws fancy water and its shore waves only for GLSL shaders.
...
This was SVN commit r26017.
2021-11-26 21:47:04 +00:00
vladislavbelov
b360b7bd2b
Disallow hardware without VBO support to simplify vertex buffer usages.
...
Tested By: Stan
Differential Revision: https://code.wildfiregames.com/D4054
This was SVN commit r25659.
2021-06-03 22:06:59 +00:00
wraitii
0c23e595fa
Include CStrInternStatic where necessary only.
...
This makes incremental recompilation faster when changing static
interned strings.
Differential Revision: https://code.wildfiregames.com/D3975
This was SVN commit r25457.
2021-05-18 11:09:54 +00:00
vladislavbelov
e90aaf6348
Adds line drawing to DebugRenderer.
...
This was SVN commit r25314.
2021-04-25 20:48:44 +00:00
vladislavbelov
65aa3d9292
Switches decals to VBChunk to reduce the number of state changes.
...
Also allows to use compressed vertex formats in future.
Tested By: Stan
Differential Revision: https://code.wildfiregames.com/D3553
This was SVN commit r24870.
2021-02-10 23:48:43 +00:00
vladislavbelov
5e1b84ed64
Batches decals and reduces the number of state changes.
...
Reviewed By: wraitii
Tested By: Langbart
Differential Revision: https://code.wildfiregames.com/D3545
This was SVN commit r24867.
2021-02-10 16:42:56 +00:00
vladislavbelov
6d4fd01a59
Separates allocated vertex buffers into groups for data locality.
...
Tested By: Langbart, OptimusShepard, Stan
Differential Revision: https://code.wildfiregames.com/D3522
This was SVN commit r24860.
2021-02-08 22:34:10 +00:00
vladislavbelov
a564892fab
Removes redundant normalizations for float types.
...
Tested By: Langbart
Differential Revision: https://code.wildfiregames.com/D3517
This was SVN commit r24833.
2021-02-04 20:03:03 +00:00
vladislavbelov
30fc281a4c
Significantly reduces number of OpenGL state changes for terrain rendering.
...
Tested By: Freagarach, Langbart, Stan
Differential Revision: https://code.wildfiregames.com/D3512
This was SVN commit r24826.
2021-02-03 17:01:38 +00:00
vladislavbelov
55f6eae7c5
Removes unused dummy shader from terrain rendering.
...
This was SVN commit r24822.
2021-02-02 15:34:52 +00:00
wraitii
8ae3c09dc0
Fix renderer crash in GCC 7.5.
...
The 'arena' allocator does not take memory alignment into account, which
can result in crashes at -O3 with gcc 7.5 (presumably because of SSE
instructions).
This accounts for alignment issues, fixing the issue.
Also do various cleanup in lib/allocators.
Reported by: Bellaz89, Freagarach
Comments by: vladislavbelov
Differential Revision: https://code.wildfiregames.com/D3181
This was SVN commit r24517.
2021-01-06 14:56:17 +00:00
Stan
4942cabab5
Fix most Clang 10 Warnings
...
Refs: #5550 , #5294
Remove dead code from f71be3c764
Fix buggy code from ff50b0b74c
Comments by: @wraitii, @vladislavbelov
Differential Revision: https://code.wildfiregames.com/D3177
This was SVN commit r24487.
2020-12-31 14:25:37 +00:00
wraitii
369c2e8801
Further header & precompiled cleanup, fix no-PCH builds.
...
GUIObjectBase is made a IGUIObject* to avoid including those headers
un-necessarily. Subsequent diffs ought to clean up the various of
pointers for that with a similar type with reference semantics.
Also:
- Add standard C and C++ headers (mostly cstring for memcpy, string and
vector) where needed.
- Swap out some includes for forward declarations
- Clean up un-necessary boost includes in precompiled and other headers.
- Clean up precompiled headers, including fewer things.
- Move ACPI to the windows-specific folder as it's included there only
and mostly specific to that platform.
Thanks Stan for the testing.
Differential Revision: https://code.wildfiregames.com/D3129
This was SVN commit r24352.
2020-12-09 14:39:14 +00:00
Stan
9ae084519f
Fix most of the new vs2017 induced warnings.
...
Refs: https://code.wildfiregames.com/D3096
https://code.wildfiregames.com/D3103 #5862
Reviewed by: @wraitii
Comments by: @Angen
Differential Revision: https://code.wildfiregames.com/D3126
This was SVN commit r24268.
2020-11-26 22:28:50 +00:00
vladislavbelov
4b52e87934
Adds wireframe mode to overlays and replace the private m_TerrainRenderMode usages by related getter.
...
This was SVN commit r24143.
2020-11-08 11:31:32 +00:00
vladislavbelov
2d54653bc3
Little cleanup of PatchRData by reordering includes and correctly formats some loops.
...
This was SVN commit r24126.
2020-11-04 15:53:33 +00:00
vladislavbelov
d7d02a4740
Moves terrain lighting calculation to GPU.
...
Reviewed By: wraitii
Tested By: OptimusShepard, Stan, wraitii
Differential Revision: https://code.wildfiregames.com/D3052
This was SVN commit r24124.
2020-11-04 12:54:17 +00:00
vladislavbelov
a19b14aeb7
Cleanup Camera related code and uses constant references where possible.
...
Commented By: elexis
Differential Revision: https://code.wildfiregames.com/D2350
This was SVN commit r23033.
2019-10-03 12:58:47 +00:00
wraitii
5c4d124d2a
Refactor renderer options.
...
This moves the renderer options into their own class to:@
- allow one to only include the rendering options, not the whole
renderer header, when one wants access to rendering options.
- centralise rendering changes and their side-effects.
- clean up code.
Tested by: historic_bruno, Freagarach
Commented by: historic_bruno
Differential Revision: https://code.wildfiregames.com/D1929
This was SVN commit r22610.
2019-08-04 08:28:30 +00:00