1
0
forked from 0ad/0ad
Commit Graph

1059 Commits

Author SHA1 Message Date
a3e8fd0fd4 Updates shadows camera frustum after its recalculation.
This was SVN commit r27493.
2023-01-26 17:12:57 +00:00
e5635a9d7f Fixes shadows cascades iteration.
This was SVN commit r27492.
2023-01-26 17:12:11 +00:00
18b2f6e184 Disables descriptor indexing on macOS.
This was SVN commit r27477.
2023-01-21 22:53:16 +00:00
e8ec04fd53 Fixes querying descriptor indexing features and properties on some drivers.
This was SVN commit r27475.
2023-01-21 17:06:55 +00:00
64bc717a18 Hides some warnings for VMA.
Differential Revision: https://code.wildfiregames.com/D4889
This was SVN commit r27450.
2023-01-16 06:37:22 +00:00
0f130fb19c Removes unnecessary PreDraw from Vulkan CDeviceCommandContext.
This was SVN commit r27446.
2023-01-15 11:51:47 +00:00
32c43eaef8 Fixes StaticVector size type warning inside Vulkan CDeviceCommandContext.
This was SVN commit r27423.
2023-01-12 06:40:42 +00:00
ec704d8179 Recreates Vulkan swapchain on window resize.
Tested By: hyperion
Differential Revision: https://code.wildfiregames.com/D4879
This was SVN commit r27422.
2023-01-12 06:35:59 +00:00
ccda54a662 Ands new depth stencil format to support all combinations on Vulkan.
Tested By: hyperion, nwtour
Differential Revision: https://code.wildfiregames.com/D4878
This was SVN commit r27421.
2023-01-12 06:32:52 +00:00
b5e8b4944d Fixes silhouettes on Vulkan by using VkStencilOpState.
This was SVN commit r27418.
2023-01-11 16:22:09 +00:00
b31e698f12 Use override in classes derived from AbstractProfileTable.
Patch By: phosit
Differential Revision: https://code.wildfiregames.com/D4825
This was SVN commit r27414.
2023-01-10 22:32:08 +00:00
7c84c23114 Adds Vulkan backend.
Comments By: phosit, Stan
Differential Revision: https://code.wildfiregames.com/D4876
This was SVN commit r27412.
2023-01-10 20:22:20 +00:00
7dca5d23ad Adds preferred depth stencil format to renderer backend.
This was SVN commit r27379.
2023-01-06 23:07:50 +00:00
ef0a644dcc Fixes status bar rendering after 4ed41d4a9a. Fixes #6674
This was SVN commit r27377.
2023-01-06 19:20:45 +00:00
38a6726a07 Fixes shore waves rendering after 29368cf776.
Tested By: phosit
Differential Revision: https://code.wildfiregames.com/D4865
This was SVN commit r27375.
2023-01-06 19:11:47 +00:00
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
e4ded1f971 Fixes vertex attribute format mismatch for silhouette debug rendering.
This was SVN commit r27331.
2023-01-01 21:46:31 +00:00
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
c0e888e2af Removes SetViewport from CRenderer.
Differential Revision: https://code.wildfiregames.com/D4849
This was SVN commit r27313.
2022-12-29 06:53:06 +00:00
7c20a8c958 Reduces shader inputs duplication and wraps them in a macro. Refs #6636
Tested By: Stan
Differential Revision: https://code.wildfiregames.com/D4837
This was SVN commit r27282.
2022-12-10 10:14:35 +00:00
d8bf4f6e62 Makes GLES using high precision for both vertex and fragment shaders.
This was SVN commit r27275.
2022-12-06 18:30:34 +00:00
2ef801f5d0 Remove some unnecessary string copy related to substr.
Patch By: phosit
Differential Revision: https://code.wildfiregames.com/D4772
This was SVN commit r27271.
2022-12-04 19:56:12 +00:00
3723cbf692 Fixes big screenshots after 29368cf776 and 3a4c8342a0.
Differential Revision: https://code.wildfiregames.com/D4835
This was SVN commit r27269.
2022-12-04 19:28:34 +00:00
29368cf776 Adds framebuffer attachment load and store operations.
Comments By: phosit, Stan
Differential Revision: https://code.wildfiregames.com/D4830
This was SVN commit r27256.
2022-11-26 21:55:17 +00:00
8e51dfa91a Moves post processing out of scene rendering to avoid framebuffer pass duplicate.
Comments By: phosit, Stan
Differential Revision: https://code.wildfiregames.com/D4827
This was SVN commit r27232.
2022-11-18 19:59:18 +00:00
92f2152900 Removes unused UV1 stream in OverlayRenderer and moves vertex data setup out of a loop.
This was SVN commit r27222.
2022-11-13 19:19:08 +00:00
192585008a Removes skycolor from GL framebuffer.
Differential Revision: https://code.wildfiregames.com/D4822
This was SVN commit r27220.
2022-11-11 23:03:01 +00:00
f4c730a887 Reduces the uniform size of an instancing transform of overlay solid shader.
This was SVN commit r27209.
2022-11-06 20:04:26 +00:00
3978149386 Reduces the uniform size of a texture transform of debug overlay shader.
This was SVN commit r27208.
2022-11-06 19:40:47 +00:00
097725e1e0 Moves particles data uploading out of framebuffer pass.
Comments By: phosit
Differential Revision: https://code.wildfiregames.com/D4820
This was SVN commit r27207.
2022-11-06 11:31:05 +00:00
3a4c8342a0 Makes AcquireNextBackbuffer returns true in case of successful backbuffer acquirement.
This was SVN commit r27184.
2022-10-30 00:38:45 +00:00
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
968fd50fb0 Moves Backend enum from CVideoMode to backends.
Comments By: phosit, Stan
Differential Revision: https://code.wildfiregames.com/D4809
This was SVN commit r27173.
2022-10-25 22:45:54 +00:00
8691674cc6 Moves skybox vertex array creation and uploading before its rendering.
This was SVN commit r27167.
2022-10-23 14:47:23 +00:00
47aae99fbe Skips renderer resources preloading for screenshots.
This was SVN commit r27156.
2022-10-13 21:46:08 +00:00
64bd81ae6b Adds usage flags to backend textures.
This was SVN commit r27152.
2022-10-12 23:19:27 +00:00
d3f0395d2a Adds BeginFramebufferPass/EndFramebufferPass instead of SetFramebuffer.
This was SVN commit r27151.
2022-10-12 21:51:27 +00:00
8ae3a2bfd6 Adds AcquireNextBackbuffer to CDevice to have something to present.
This was SVN commit r27148.
2022-10-11 22:48:07 +00:00
b728c9e97e Fixes vertex attribute format in minimap and passes dependent textures as parameters.
This was SVN commit r27145.
2022-10-11 20:37:27 +00:00
c57b416e20 Fixes calls to SetVertexAttributeFormat with zero stride.
This was SVN commit r27139.
2022-10-09 13:03:42 +00:00
908d9a0079 Moves vertex buffer offset to SetVertexBuffer.
This was SVN commit r27137.
2022-10-09 11:47:34 +00:00
178850cb23 Replaces border color of sampler by enum.
This was SVN commit r27134.
2022-10-08 09:40:06 +00:00
ca427529c0 Fixes include guards of CDeviceCommandContext headers.
This was SVN commit r27132.
2022-10-07 23:02:15 +00:00
4d77de66d4 Removes GUI dependency from Canvas2D.
Initially the GetDefaultGuiMatrix function was added in 4113aa0a36 and
renamed in 04c63a4093.

This was SVN commit r27111.
2022-10-04 20:25:39 +00:00
95106b2d9b Fixes crash in Atlas when switching from the Actor viewer. Fixes #6524
Tested By: Stan
Differential Revision: https://code.wildfiregames.com/D4732
This was SVN commit r27041.
2022-08-10 17:17:24 +00:00
9d2275e26b Fix assertion when trying to draw a line with one point. This would trigger an ensure if one enabled the unitmotion overlay.
Patch by: @vladislavbelov
This was SVN commit r27016.
2022-07-25 20:08:03 +00:00
ec723428d1 Logic fix for very high shadows on very large screens.
ON large screens like 5120x1440 calculated shadow map was 32768. That
was 16x more than high setting, 32x more than medium setting and 64x
more than low setting.

After this change shadow map sizes using very high setting by resolution
will be following:
1920x1080 - 4096
2560x1440 - 4096
3840x1440 - 4096
5120x1440 - 8192
3840x2160 - 4096
7680x4320 - 8192
Patch by: @karmux
Reviewed by: @vladislavbelov, @Stan
Differential Revision: https://code.wildfiregames.com/D4723
This was SVN commit r26983.
2022-06-23 17:04:13 +00:00
9845a99f77 Adds EGL support for Wayland.
Tested By: Freagarach, Mentula, phosit
Differential Revision: https://code.wildfiregames.com/D4642
This was SVN commit r26929.
2022-06-09 21:09:32 +00:00
12dfe2ce55 Use CVector2D instead of float arrays for TexturedLineRData
Reviewed by: @vladislavbelov
Differential Revision: https://code.wildfiregames.com/D4688
This was SVN commit r26924.
2022-06-06 21:46:37 +00:00
b0c29b8676 Removes GL types from regular renderer code after 3ed4eaf247.
This was SVN commit r26920.
2022-06-06 07:30:45 +00:00
54aae3e6d4 Moves anisotropic filtering support check from GL texture to TextureManager to make it explicit.
This was SVN commit r26919.
2022-06-06 06:59:20 +00:00
095838da0a Fixes A8 framebuffer format used for LOS interpolation and enables smooth LOS by default.
Tested By: Langbart, mastoras
Differential Revision: https://code.wildfiregames.com/D4654
This was SVN commit r26906.
2022-05-26 16:36:57 +00:00
53033ceaa2 Fixes rendering reflections and refractions in case of empty scissors.
This was SVN commit r26902.
2022-05-24 19:15:26 +00:00
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
db8d251a8b Adds XML path of GL shader descriptions to file dependencies.
This was SVN commit r26864.
2022-05-09 10:13:19 +00:00
132058bc04 Fixes RenderDoc captures by calling glGetProgramivARB to get constants only for ARB shaders.
This was SVN commit r26863.
2022-05-09 08:22:21 +00:00
67e8e28006 Fixes dynamic GL buffer orphaning forgotten in cff79b421a. Fixes #6533
Tested By: Langbart
Differential Revision: https://code.wildfiregames.com/D4638
This was SVN commit r26859.
2022-05-08 22:45:54 +00:00
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
b808adcc00 Disables writing depth for decals as they follow terrain and water (if floating) shape. Fixes #6494
Tested By: Langbart
Differential Revision: https://code.wildfiregames.com/D4637
This was SVN commit r26852.
2022-05-05 17:25:20 +00:00
3ed4eaf247 Removes ogl_WarnIfError from regular renderer code.
This was SVN commit r26850.
2022-05-02 21:52:21 +00:00
a493a9f07f Removes ARB switch optimization as it triggers slow down. Fixes #6525
Tested By: Langbart
Differential Revision: https://code.wildfiregames.com/D4635
This was SVN commit r26849.
2022-05-02 21:25:13 +00:00
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
ac60b12045 Replaces occurrences of "VBO" in comments by "backend buffer". Refs cff79b421a
This was SVN commit r26835.
2022-04-27 20:04:56 +00:00
d8b8128abb Adds AsFloatArray to CMatrix3D.
This was SVN commit r26834.
2022-04-27 19:53:42 +00:00
22a4db837b Adds backend buffer upload forgotten in aba7a170d9. Fixes #6520
This was SVN commit r26833.
2022-04-27 19:00:06 +00:00
b26aa5936d Avoids scoped binding of the already bound backend buffer.
This was SVN commit r26831.
2022-04-26 18:25:52 +00:00
98c18425a8 Adds more detailed debug name for backend buffers.
This was SVN commit r26830.
2022-04-26 18:16:45 +00:00
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
d3a7491724 Removes CONFIG2_GLES from CPostprocManager and renderers.
This was SVN commit r26817.
2022-04-23 23:49:52 +00:00
df612ab8b4 Moves GLSL-specific uniform name workaround (added in 227f9e403f) to CShaderProgramGLSL.
This was SVN commit r26816.
2022-04-23 21:39:15 +00:00
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
7bd075d570 Moves glReadPixels to GL backend.
This was SVN commit r26802.
2022-04-17 14:55:00 +00:00
c6da4d9312 Adds a fallback texture to skies to avoid a crash if a sky texture was invalid.
This was SVN commit r26800.
2022-04-17 10:10:52 +00:00
e02b402a14 Uses vertex attribute name only for GLSL. Fixes #6500
This was SVN commit r26799.
2022-04-17 08:00:10 +00:00
eaac0b0dbe Uses vertex streams to get attribute locations reducing duplication in XML.
Also adds missing streams.

This was SVN commit r26792.
2022-04-15 18:13:33 +00:00
37645670c1 Fixes crash in shader preprocessor introduced in d295dacb9b and appeared after 25332f9b86. Fixes #6033
This was SVN commit r26791.
2022-04-15 17:45:15 +00:00
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
d8d736f0eb Allows tex clients decide how to handle invalid textures instead of assertions. Fixes #6436
This was SVN commit r26783.
2022-04-12 17:39:05 +00:00
8c1a469253 Uses GL device capabilities for all vertex attribute locations.
This was SVN commit r26782.
2022-04-12 16:49:04 +00:00
ad2068dae0 Uses sequential numbering of GL vertex attributes for modern hardware. Refs #3054
Differential Revision: https://code.wildfiregames.com/D4601
This was SVN commit r26781.
2022-04-12 16:13:47 +00:00
f6837978e8 Adds GL debug labels only if they are supported (forgotten in 3db24af763). Fixes #6495
This was SVN commit r26780.
2022-04-12 06:44:06 +00:00
e6dd9f944e Moves Vulkan report code to its device to prevent crashing when a GL device is created. Fixes #6270
Differential Revision: https://code.wildfiregames.com/D4577
This was SVN commit r26779.
2022-04-12 06:39:14 +00:00
811a540382 Simplifies GL::CShaderProgram to store less data.
This was SVN commit r26777.
2022-04-11 22:10:21 +00:00
3db24af763 Adds names to GL shaders and programs.
This was SVN commit r26776.
2022-04-11 20:30:23 +00:00
73c0e40045 Fixes warnings about unused function arguments in renderer.
This was SVN commit r26763.
2022-04-08 06:49:38 +00:00
e08590ee34 Fixes warning about unused captured variable in CDeviceCommandContext.
This was SVN commit r26749.
2022-04-02 20:40:40 +00:00
02b87cdb46 Fixes MSAA on macOS GL drivers for textures with incorrect sample count, fixes #6480
Refs #5969

Tested By: Langbart
Differential Revision: https://code.wildfiregames.com/D4581
This was SVN commit r26737.
2022-03-31 07:04:51 +00:00
4934784266 Adds USE_FP_SHADOW to shader context only for GL ARB.
This was SVN commit r26712.
2022-03-26 19:00:28 +00:00
a57581471d Reduces the number of uniform changes in decals rendering and the number of render queries in models.
This was SVN commit r26688.
2022-03-20 16:08:19 +00:00
d214745f8f Reduces the number of uniform changes in decals rendering.
This was SVN commit r26687.
2022-03-20 14:58:03 +00:00
2ed2e9de0c Invalidates CDeviceCommandContext texture bind cache properly.
Tested By: Langbart
Differential Revision: https://code.wildfiregames.com/D4553
This was SVN commit r26664.
2022-03-17 18:17:11 +00:00
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
ea6af3f148 Updates a model color uniform in RenderModifier only if it was changed.
This was SVN commit r26653.
2022-03-14 22:56:38 +00:00
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
992c18aabb Enables ARB shaders only once since we should not mix different backends.
This was SVN commit r26629.
2022-03-12 22:10:47 +00:00
518a1421ab Clears the color attachment of the main framebuffer only if needed.
Differential Revision: https://code.wildfiregames.com/D4539
This was SVN commit r26623.
2022-03-11 22:26:49 +00:00
5390143b66 Fixes rendering reflections even they are disabled, broken in 9ce51f4357. Fixes #6454
Reported By: Langbart
This was SVN commit r26615.
2022-03-10 16:36:16 +00:00
1ce999a52d Creates water backend textures and framebuffers only if needed.
Tested By: Stan
Differential Revision: https://code.wildfiregames.com/D4536
This was SVN commit r26613.
2022-03-09 21:40:24 +00:00
cb1f0807c5 Removes FALLTHROUGH in VertexArray after 12c304e494. Fixes #6453
This was SVN commit r26611.
2022-03-09 07:07:02 +00:00
12c304e494 Removes duplication of backend format in VertexArray usages, optimizes vertex color attribute of quad overlay.
This was SVN commit r26609.
2022-03-08 23:28:31 +00:00