ACB
f4ac543b99
Make `RID_Owner<Texture>` threadsafe in `TextureStorage` for gles3
...
(cherry picked from commit 09d2c09434
)
2024-03-11 15:00:44 +01:00
jsjtxietian
63b1d100fb
Make dummy rendering server appear as a high end platform
...
to fix vulkan shader compile error when exporting
(cherry picked from commit f6aabd2b72
)
2024-03-11 15:00:44 +01:00
clayjohn
5f92e6e7e3
Add DummyShader handling to Dummy RenderingServer to ensure shader parameters are saved in headless export
...
(cherry picked from commit 21ade7f0f7
)
2024-03-11 15:00:44 +01:00
jsjtxietian
9926e7e8fa
Add shader_cache_dir_valid check to _save_to_cache
...
(cherry picked from commit a365c070b3
)
2024-03-11 15:00:44 +01:00
clayjohn
2ec1d8043c
Store ArrayMesh path in RenderingServer for use in error messages
...
(cherry picked from commit ead36fdcc4
)
2024-03-11 15:00:43 +01:00
clayjohn
6ba9c6bf6d
Avoid singularity when generated tangents and validate that tangents are good enough when using compression
...
(cherry picked from commit 781cd27fe4
)
2024-03-11 15:00:43 +01:00
clayjohn
a61a84ff09
Properly calculate binormal when creating SurfaceTool from arrays
...
(cherry picked from commit f267b2aa87
)
2024-03-11 15:00:43 +01:00
Lasuch
8e3740d425
Expose copy_effects copy compute shader in Mobile backend
...
(cherry picked from commit 608d41a969
)
2024-01-25 18:32:35 +01:00
kleonc
663ba67016
Fix 2D normals for transposed texture
...
(cherry picked from commit 0fe7eead02
)
2024-01-25 18:08:45 +01:00
jsjtxietian
2ba4a7dd3d
Add thread guard for force_draw and update relared doc
...
force_draw must be called from main thread
(cherry picked from commit b88b84ce18
)
2024-01-25 17:38:15 +01:00
Bastiaan Olij
41dcabb0cf
Fix SSR not working properly in stereo
...
(cherry picked from commit 10a8b88165
)
2024-01-25 17:19:41 +01:00
Yuri Sizov
36f34c8f86
Avoid crashes when engine leaks canvas items and friends
...
(cherry picked from commit 34ecfff672
)
2024-01-25 17:03:57 +01:00
jsjtxietian
d41639a4cb
Use render method from OS in compositor RD; Update related UI
...
(cherry picked from commit 453c2246b6
)
2024-01-25 17:03:57 +01:00
bruvzg
ee3a87caf1
Fix CanvasOcclusionShaderRD format error with double precision build.
...
(cherry picked from commit c0a1c5ae61
)
2024-01-25 17:03:56 +01:00
Occalepsus
c12a46d3f4
Fix body leaving area gravity influence
...
(cherry picked from commit 492f1c2406
)
2024-01-24 16:38:28 +01:00
ShirenY
045b1d5990
Transform mesh's AABB to skeleton's space when calculate mesh's bounds.
...
(cherry picked from commit 27f71c4e78
)
2024-01-24 15:56:50 +01:00
Aaron Franke
836e0181ab
Add a descriptive error message when creating a mesh surface from arrays
...
(cherry picked from commit 7d5b902838
)
2023-12-07 10:27:07 +01:00
clayjohn
d2d7261c1e
Set ReflectionProbe frame before mapping id in mobile renderer
...
(cherry picked from commit 394edf8288
)
2023-12-07 10:27:05 +01:00
jsjtxietian
b768561154
Fix bad parameter of rendering_method crashes Godot
...
Print error and default to forward plus
(cherry picked from commit b6bee1c21e
)
2023-12-07 10:27:03 +01:00
Matias N. Goldberg
a813176bb3
Fix buffer updates going to the wrong cmd buffer if barriers were 0
...
From what I could see only SSAO & SSIL were affected when they both
call:
int zero[1] = { 0 };
RD::get_singleton()->buffer_update(ssao.importance_map_load_counter, 0,
sizeof(uint32_t), &zero, 0);
int zero[1] = { 0 };
RD::get_singleton()->buffer_update(ssil.importance_map_load_counter, 0,
sizeof(uint32_t), &zero, 0);
Also documented what setup_command_buffer & draw_command_buffer are for.
(cherry picked from commit c9ec1f7727
)
2023-12-07 10:27:02 +01:00
Rémi Verschelde
bd74d92ef7
Merge pull request #84957 from BastiaanOlij/fix_msaa2d_when_no_2d
...
Ensure 2D MSAA resolve is performed when 3D content but no 2D content in scene
2023-11-22 21:56:23 +01:00
clayjohn
e2a5d2bf46
Enable non-multiview advanced shader group whenever advanced shaders are requested
...
This is needed because xr_enabled does not guarantee that we won't use the non-multiview variants
2023-11-21 15:16:25 -07:00
Rémi Verschelde
c2f8fb3015
Merge pull request #85039 from RandomShaper/mingwthreads
...
Use mingw-std-threads in MinGW builds
2023-11-21 15:44:18 +01:00
Rémi Verschelde
fa1fb2a53e
Merge pull request #85147 from RandomShaper/fix_gfx_dbg_labels
...
Fix potential double-close of draw command label
2023-11-20 21:20:54 +01:00
Pedro J. Estébanez
5c25fa4c78
Fix potential double-close of draw command label
2023-11-20 18:59:06 +01:00
Rémi Verschelde
dfd61cdac6
Merge pull request #85138 from YuriSizov/rendering-borked-meshes-dont-bork-the-editor
...
Avoid division by zero in the fix surface compatibility routine
2023-11-20 18:36:26 +01:00
Yuri Sizov
98011e032d
Avoid division by zero in the fix surface compatibility routine
2023-11-20 16:22:58 +01:00
Rémi Verschelde
ac29e8e3fe
Merge pull request #85086 from clayjohn/shaders-amount-ratio
...
Make `AMOUNT_RATIO` constant in the shader language specification.
2023-11-20 14:14:46 +01:00
clayjohn
8a95b2956f
Make AMOUNT_RATIO constant in the shader language specification.
...
Writing to it doesn't do anything and will crash the compatibility backend.
2023-11-19 14:36:26 +01:00
Pedro J. Estébanez
fe4850c0d0
Use mingw-std-threads in MinGW builds
2023-11-18 11:56:05 +01:00
Bastiaan Olij
47983e30c5
Ensure 2D MSAA resolve is performed when 3D content but no 2D content in scene
2023-11-16 13:34:34 +11:00
Alistair Leslie-Hughes
367079ffee
Renderer Viewport correct sizeof usage.
...
The current usage.
In viewport_find_from_screen_attachment
- Allocates a list of pointers, eg sizeof(RID*) * ridcount.
We need fill that buffer
viewport_owner.fill_owned_buffer(rids);
...
p_rid_buffer[idx] = _make_from_id((validator << 32) | i);
_make_from_id returns an RID object, not a pointer.
Since there isn't a copy constructor, a bitwise copy of the object occurs.
This issue will only present itself under 32bit builds.
sizeof(RID) : 8
sizeof(RID*) : 4
whereas 64bit builds they are both 8.
2023-11-16 11:02:12 +11:00
Bastiaan Olij
b1c4d4e55b
Ensure optional variants are loaded last.
2023-11-15 14:31:25 +11:00
Anutrix
3c82f4a371
Added docs for DRAW_ORDER_REVERSE_LIFETIME constant and minor XR log improvement
2023-11-11 21:17:19 +05:30
Rémi Verschelde
34e34f0945
Merge pull request #82478 from jsjtxietian/fix-AudioStreamRandomizer-random_volume_offset_db-not-working
...
Fix `AudioStreamRandomizer.random_volume_offset_db` not working
2023-11-10 21:53:45 +01:00
Rémi Verschelde
f0c52c0e35
Merge pull request #84576 from clayjohn/mesh-tangents-always
...
Create tangent array if mesh created without tangents
2023-11-08 19:09:36 +01:00
clayjohn
a74cfc2629
Use default samplers in base uniform set when rendering to reflection probes
2023-11-07 17:46:05 +01:00
clayjohn
031f221b9d
Create tangent array if mesh created without tangents
...
This extends our previous change to ensure that compressed meshes have tangents
Now we ensure tangents are always used. This greatly simplifies our compression code at the cost of a small amount of bandwidth
2023-11-07 14:24:23 +01:00
Rémi Verschelde
44a54f4500
Merge pull request #84252 from clayjohn/ensure_tangents
...
Enhance checks and user experience around tangent arrays in meshes.
2023-11-02 09:11:32 +01:00
clayjohn
d1043a5f93
Enhance checks and user experience around tangents.
...
Ensure `ensure_tangents` option actually creates tangent array. Even if it is just a dummy array.
Allow mesh to generate its own tangents when using compression. This allows users to compress meshes without tangents.
Warn users if they are trying to read from tangents without providing tangents.
2023-11-01 22:40:42 +01:00
clayjohn
be386e1876
Overhaul the SurfaceUpgradeTool
...
This defers the update to a fresh restart of the editor (to ensure we aren't mid way through loading scenes anymore.
It also ensures that the popup can't be used by multiple threads at once
Co-authored-by: Yuri Sizov <yuris@humnom.net>
2023-11-01 15:32:54 +01:00
Rémi Verschelde
2bc35308fc
Merge pull request #81494 from jsjtxietian/Fix-int-to-uint-implicit-cast-error-when-use-uniform-mat3-in-gles3
...
Fix int to uint implicit cast error when use mat3 uniform in compatibility renderer
2023-10-31 20:14:14 +01:00
Bastiaan Olij
e3b8af723e
Fix cubemap downsampler logic
2023-10-31 10:36:42 +11:00
Rémi Verschelde
93cdacbb0a
Merge pull request #84211 from clayjohn/a2c
...
Fix bug with alpha to coverage by enabling depth discard when using alpha to coverage
2023-10-30 23:24:12 +01:00
clayjohn
3f5c16dd9e
Fix multiple issues with UV compression
2023-10-30 23:11:34 +01:00
clayjohn
57ba7ded87
Fix bug with alpha to coverage by enabling depth discard when using alpha to coverage
2023-10-30 23:07:30 +01:00
jsjtxietian
967e0e6485
Fix int to uint implicit cast error when use uniform mat in gles3
2023-10-27 10:46:52 +08:00
Rémi Verschelde
2dafd06114
Merge pull request #83906 from clayjohn/GL-vertex-padding
...
Add padding to normal attribute in Compatibility renderer to match the RD renderers
2023-10-26 16:00:56 +02:00
Rémi Verschelde
bb54190253
Merge pull request #83840 from clayjohn/mesh-flat-bug
...
Ensure `r_aabb` is always used when creating surfaces through the RenderingServer
2023-10-26 16:00:32 +02:00
Rémi Verschelde
815b24d280
Merge pull request #83491 from jsjtxietian/pass-screen-size-when-render-shadow
...
Pass viewport size to shadow pass instead of using Vector2i(1,1)
2023-10-26 12:09:21 +02:00