Rémi Verschelde
f4c354630a
Merge pull request #68440 from clayjohn/redraw-TIME
...
Request redraw in OpenGL3 and mobile renderers when TIME used in shader
2022-11-09 08:58:06 +01:00
clayjohn
a1c3591461
Request redraw in OpenGL3 and mobile renderers when TIME used in shader
2022-11-08 22:52:11 -08:00
David Snopek
23603e409c
Add support for OpenGL to OpenXR
2022-11-08 18:47:11 -06:00
clayjohn
3c1e5003ab
Fix pathological corner case in drawing tileset editor
...
Interleaving draw_rect calls with and without a texture forces every rect to
have its own draw call. In this case it meant that there is a draw call for every single
tile in the atlas. This change makes it so the renderer can batch draw calls
which reduced the draw call count by a factor of 512
2022-11-04 13:04:20 -07:00
David Snopek
7fb8b931d7
Collapse three seperate texture storage methods into render_target_set_override()
2022-11-03 13:03:30 -05:00
Rémi Verschelde
4746e874ad
Merge pull request #67770 from clayjohn/GLES3-flip_y
...
Remove depth correction in GLES3 renderer
2022-11-03 00:32:07 +01:00
Rémi Verschelde
efefd9b198
Merge pull request #68120 from akien-mga/style-doc-cleanup
...
Style: Misc docs and comment style and language fixes
2022-11-02 22:36:31 +01:00
Rémi Verschelde
f7c611ab71
Style: Misc docs and comment style and language fixes
...
- Removed empty paragraphs in XML.
- Consistently use bold style for "Example:", on a new line.
- Fix usage of `[code]` when hyperlinks could be used (`[member]`, `[constant]`).
- Fix invalid usage of backticks for inline code in BBCode.
- Fix some American/British English spelling inconsistencies.
- Other minor fixes spotted along the way, including typo fixes with codespell.
- Don't specify `@GlobalScope` for `enum` and `constant`.
2022-11-02 19:01:18 +01:00
clayjohn
134a3046b6
Bind DirectionalLight buffer to uniform slot even when not used
...
This avoids a WEBGL error causes PanoramaSkys to fail to render
2022-11-02 10:38:59 -07:00
Rémi Verschelde
cb1931b271
Merge pull request #67639 from clayjohn/GLES3-2d-shadows
...
Add 2D shadows and canvas SDF to OpenGL3 renderer
2022-11-02 17:12:20 +01:00
clayjohn
eb07056e70
Add texture reading code to OpenGL3 renderer for web and mobile
...
This allows using texture_2d_get on all platforms which is needed for the get_image function
This commit also fixes some OpenGL warnings on the Web platform that came from attempting to map a buffer with zero length
2022-11-01 13:42:53 -07:00
Rémi Verschelde
5947f22be9
Merge pull request #67578 from KoBeWi/GEDITOR
...
Unify usage of GLOBAL/EDITOR_GET
2022-10-31 13:15:58 +01:00
Rémi Verschelde
5a00568afb
Merge pull request #67032 from clayjohn/GLES3-gpu-profiling
...
Add OpenGL timer queries to OpenGL3 backend
2022-10-31 10:43:13 +01:00
Yuri Rubinsky
11e1bac768
Merge pull request #67112 from Chaosus/fix_boolean_uniform_instances
2022-10-28 23:17:23 +03:00
clayjohn
2ec234ff67
Add 2D shadows and canvas SDF to OpenGL3 renderer
...
This is an initial implementation based on the current RD implementation
Performance will improve later
2022-10-28 11:33:23 -07:00
Clay John
0d711cad30
Merge pull request #66107 from devloglogan/ambient-light-disabled-fix
...
Fix ambient_light_disabled render mode flag
2022-10-27 10:08:29 -07:00
Clay John
8fd92ed867
Merge pull request #64710 from MinusKube/window-size-crash
...
Prevent windows from having a size greater than device limit
2022-10-27 10:02:44 -07:00
Clay John
e1caa8797b
Merge pull request #67043 from clayjohn/clip_children
...
Improve behaviour of clip_children by clipping to parent alpha value but still retaining parent color
2022-10-27 09:59:27 -07:00
Gordon MacPherson
56df8d5f19
Fix EXE_BAD_ACCESS caused by optional argument
...
This argument is now non optional, but this never hits the same bad access.
I voted to simplify the code here since the argument is never used optionally in our codebase.
2022-10-26 19:33:35 +01:00
Clay John
753a182797
Merge pull request #65334 from dsnopek/opengl-multiview
...
[opengl] Add multiview to the opengl3 driver
2022-10-23 17:00:01 -07:00
clayjohn
62dc9cd044
Remove depth correction in GLES3 renderer
...
This code should only have been included in the RD renderer where the
depth range is 0 - 1 instead of -1 - 1
2022-10-22 16:01:52 -07:00
keptsecret
31d44043bb
implemented mesh_surface_update_x functions
2022-10-22 16:44:33 -04:00
David Snopek
398ee08375
Add multiview to the opengl3 driver
2022-10-21 21:00:32 -05:00
kobewi
e48c5daddf
Unify usage of GLOBAL/EDITOR_GET
2022-10-18 19:01:48 +02:00
Rémi Verschelde
dc4b616596
Merge pull request #63332 from KoBeWi/static_images_aka_photos
...
Make some Image methods static
2022-10-15 12:56:57 +02:00
Rémi Verschelde
6feded171b
Merge pull request #67416 from clayjohn/GLES3-primitive
...
Fix drawing of 2D primitives in OpenGL3 renderer
2022-10-15 12:56:38 +02:00
clayjohn
6d048af42f
Fix drawing of 2D primitives in OpenGL3 renderer
...
Previously the wrong vertices were used when assembling the second triangle
of a quad
2022-10-14 16:55:14 -07:00
clayjohn
978aa05a99
Fix error in Web builds that resulting in 2D
...
objects not drawing in the GLES3 backend.
Issue came from not binding a light UBO when using the DISABLE_LIGHTING
code path
2022-10-14 11:18:27 -07:00
clayjohn
b6f44859d7
Implement multiple clip_children modes for CanvasItems
2022-10-14 08:02:28 -07:00
kobewi
072f6feaba
Make some Image methods static
2022-10-14 14:34:15 +02:00
clayjohn
09b1a6f85f
Improve behaviour of clip_children by clipping
...
to parent alpha value, but still retaining
parent color
2022-10-13 18:35:12 -07:00
Rémi Verschelde
367a9b8056
Merge pull request #67335 from clayjohn/GLES3-2d-lights
...
Add 2D lights to OpenGL3 canvas renderer
2022-10-13 09:05:36 +02:00
Rémi Verschelde
f2bd389e21
Merge pull request #67307 from TechnoPorg/lod-radial-distance
...
Use radial distance for making LOD decisions.
2022-10-13 09:05:00 +02:00
clayjohn
e600fb93a5
Add 2D lights to OpenGL3 canvas renderer
...
This is an initial implementation using the same single-pass approach as the RenderingDevice.
2022-10-12 17:55:01 -07:00
TechnoPorg
b04350828e
Use radial distance for making LOD decisions.
...
Previously, only forward basis distance from the camera was used.
This means that unnecessarily high LOD levels were used for objects located to the side of the camera.
The distance from the camera origin is now used, independently of direction.
2022-10-12 07:21:42 -06:00
Yuri Rubinsky
f4db4bb7a2
Fix incorrect setup of boolean uniform instances
2022-10-09 08:50:18 +03:00
Yuri Rubinsky
816600382e
Fix incorrect offset for vec3 datatypes in _fill_std140_ubo_empty
2022-10-09 06:32:50 +03:00
clayjohn
4765e5fa64
Allow clearing backbuffer after finishing CanvasGroup
...
This avoids an issue where having multiple CanvasGroups overlap
would create a weird artifact
2022-10-07 14:13:40 -07:00
clayjohn
aca964de4f
Add OpenGL timer queries to OpenGL3 backend
...
This is useful for the visual debugger, printing FPS, and the in-editor FPS display
2022-10-07 09:25:09 -07:00
bruvzg
0103af1ddd
Fix MSVC warnings, rename shadowed variables, fix uninitialized values, change warnings=all to use /W4.
2022-10-07 11:32:33 +03:00
clayjohn
154b9c1c91
Use a giant UBO to optimize performance in 2D
...
This removes the countless small UBO writes we had before
and replaces them with a single large write per render pass.
This results in much faster rendering on low-end devices
but improves speed on all devices.
2022-10-06 11:24:45 -07:00
Rémi Verschelde
5b6ccf2fd2
Merge pull request #66720 from qarmin/unintialized_memory
...
Remove usage of unitialized variables
2022-10-05 11:42:47 +02:00
Rémi Verschelde
3a2b0ab73d
Merge pull request #66898 from aaronfranke/proj-mat-columns
...
Rename Projection `matrix` to `columns`
2022-10-05 08:35:26 +02:00
Bastiaan Olij
c7656978ba
Adding getters to RenderTarget and implementing override functionality for XR
2022-10-05 11:37:49 +11:00
Aaron Franke
2cea42cc7f
Rename Projection matrix
to columns
2022-10-04 12:34:19 -05:00
Rémi Verschelde
bff9fcfc1c
Merge pull request #65822 from BastiaanOlij/more_reorg_20220915
...
Move cluster builder, sdfgi and gi structures to clustered renderer, and more
2022-10-04 11:20:13 +02:00
clayjohn
c8f0f27a0b
Properly expose TEXTURE_PIXEL_SIZE in Opengl3 renderer
2022-10-03 19:13:17 -07:00
Bastiaan Olij
ddc4ae1175
Move cluster builder, sdfgi and gi structures to clustered renderer, move light and probe elements into storage and reorganise our render_scene method.
2022-10-04 11:03:32 +11:00
Rafał Mikrut
2233624152
Remove usage of unitialized variables
2022-10-01 21:09:22 +02:00
Markus Sauermann
7e9327350c
Remove ERR_FAIL_COND that never happens in _draw_sky
...
In the conditional `sky` is always true.
2022-09-30 12:42:50 +02:00