0d350e7108
Set clang-format RemoveSemicolon rule to true
...
- Set clang-format `Standard` rule to `c++20`
2024-10-25 13:49:43 -04:00
6732a0fd86
Merge pull request #98448 from Chaosus/shader_global_builtins
...
Make `OUTPUT_IS_SRGB/CLIP_SPACE_FAR` shader built-ins global
2024-10-25 13:55:14 +03:00
78a4e634f0
Merge pull request #98257 from Rudolph-B/94210-B
...
Fix to occlusion culling where all math is based on Euclidean distance.
2024-10-24 21:06:56 -07:00
cfc05c5e0f
Merge pull request #85338 from EMBYRDEV/shadow-caster-mask
...
Add `shadow_caster_mask` to Light3D.
2024-10-24 13:22:59 -05:00
ba4e67e55e
Merge pull request #98266 from m-pranav-r/fix-light-visual-instance
...
Fix light culling mask behavior in Mobile and Compat renderers
2024-10-24 13:22:58 -05:00
9f908a3a5b
Merge pull request #86103 from ecmjohnson/fix-inside-volfog
...
Fix volumetric fog artifacts when inside the fog
2024-10-24 13:22:57 -05:00
52bbbd4338
Merge pull request #98247 from TCROC/fix-headless-graphics-driver-and-shader-crash
...
Don't create rendering device or parse glsl shader in headless mode
2024-10-24 13:22:53 -05:00
8c52533aed
Merge pull request #86539 from stechyo/gdext/expose-audio-playback-methods
...
Expose some AudioStreamPlayback methods (namely `mix_audio()`).
2024-10-24 13:22:35 -05:00
463e81413e
Make OUTPUT_IS_SRGB/CLIP_SPACE_FAR shader built-ins global
2024-10-24 12:32:05 +03:00
ff9fb0abea
Merge pull request #93590 from Chaosus/shader_custom_func_discard
...
Allow usage of `discard` inside custom shader functions
2024-10-24 09:38:10 +03:00
03641a425f
Merge pull request #93650 from Chaosus/shader_stage_custom_funcs
...
Allow using stage functions inside custom shader functions
2024-10-24 09:32:04 +03:00
fcea158927
Fixed light culling mask behavior in Mobile and Compat renderers
2024-10-23 08:38:56 +05:30
2e1fc241f9
fix headless import attempting to load graphics driver
2024-10-22 16:17:09 -04:00
533c616cb8
Merge pull request #98391 from RandomShaper/rd_thread_switch
...
Implement thread ownership change for RenderingDevice
2024-10-22 13:10:32 -07:00
7815ccbdd5
Merge pull request #98294 from Calinou/texture-placeholders-use-shared-copy
...
Use a shared copy of placeholder textures, tweak placeholder appearance
2024-10-21 16:39:29 -05:00
7dbea98c49
Merge pull request #97005 from Repiteo/core/window-corner-style
...
Core: Add `DisplayServer` flag for sharp corners
2024-10-21 16:39:25 -05:00
1a9628f937
Merge pull request #98267 from Chaosus/shader_pp_error
...
Add `#error` preprocessor directive to shading language
2024-10-21 16:39:23 -05:00
a14e9e99e5
Merge pull request #98388 from DarioSamo/sync-fixes
...
Improve synchronization of rendering after changes from transfer queues.
2024-10-21 16:39:21 -05:00
178342b058
Merge pull request #98258 from LainAmongYou/fix-bgra
...
Add support for BGRA textures with Texture*RD
2024-10-21 16:39:20 -05:00
291e4b78e2
Merge pull request #98237 from dustdfg/os_transitive_image_headers_refactor
...
Don't include `core/io/image.h` in `core/os/os.h`
2024-10-21 16:39:15 -05:00
c145e85011
Merge pull request #98226 from m-pranav-r/fix-volumetric-shadows
...
Fix incorrect depth comparison used to calculate volumetric fog shadowing
2024-10-21 16:39:11 -05:00
5e65747d90
Merge pull request #97925 from huwpascoe/lightmap_dynamic_bugfix
...
Fix updating dynamic objects in LightmapGI
2024-10-21 16:39:04 -05:00
d5d509bbd6
Implement thread ownership change for RenderingDevice
2024-10-21 20:56:42 +02:00
4ad424234f
Improve synchronization of rendering commands after changes from transfer queues.
...
Fix an error where barriers are expected to be inserted for the swap chain textures.
Add the relevant synchronization stages and accesses to resources between frames.
Fix an error where debug labels weren't finished correctly between frames.
Breadcrumbs are now behind an optional macro as they currently lead to synchronization errors which are harmless.
2024-10-21 11:27:56 -03:00
f8c4a683d7
Core: Add DisplayServer flag for sharp corners
2024-10-18 11:20:21 -05:00
af6d260c17
Don't include core/io/image.h in core/os/os.h
...
`core/os/os.h` doesn't use `core/io/image.h`. It just brings
transitive dependencies. Lots of dependencies because `core/os/os.h`
is transitively included in almost every file of godot
Also added `core/io/image.h` into files^1 where `Ref<Image>` and `core/os/os.h`
were used to prevent obscure errors involving `Ref<Image>`
^1 except those which include `core/io/image_loader.h` or `core/io/image.h` by
corresponding .h file with the same name
Signed-off-by: Yevhen Babiichuk (DustDFG) <dfgdust@gmail.com >
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com >
2024-10-18 19:04:19 +03:00
35a20fa96a
Use a shared copy of placeholder textures, tweak placeholder appearance
...
This reduces memory usage a bit in case multiple placeholders were
requested, e.g. when using multiple NoiseTextures with no noise property
defined.
The placeholder texture's appearance was also changed from a plain magenta
color to a checkerboard alternating between magenta and black pixels.
This makes it easier to spot when the placeholder texture ends up
being used in a complex scene (usually by accident).
The texture's dimensions remain identical to keep the physical size
identical in 2D.
2024-10-18 14:51:51 +02:00
8c3e46b13b
Move transitions of textures initialized by transfer workers to the main graphics queue.
...
Also adds a new possible texture layout and API trait to support a particular behavior in D3D12 where only the COMMON layout is supported in copy queues. Fixes #98158 .
2024-10-18 09:15:25 -03:00
155cf6a5b6
Add #error preprocessor directive to shading language
2024-10-18 10:56:58 +03:00
0ce4d8fcd3
Merge pull request #98086 from DarioSamo/transfer-queues-semaphores
...
Rewrite semaphore handling for transfer workers.
2024-10-17 16:54:43 -07:00
a2117f5796
Merge pull request #98187 from EnlightenedOne/98102
...
Fix Mobile Renderer - Shadow Disabled and User Vertex Lighting flags
2024-10-17 16:37:09 -07:00
7a936e8bac
Rewrite semaphore handling for transfer workers.
2024-10-17 14:07:08 -03:00
274076c5be
Lightmap Dynamic Bugfix
2024-10-17 16:27:30 +01:00
ad7e7a51b2
Allow usage of discard inside custom shader functions
2024-10-17 16:06:33 +03:00
74c000db17
Allow using stage functions inside custom shader functions
2024-10-17 15:47:01 +03:00
4e6d9813b2
Add support for BGRA textures with Texture*RD
...
This adds the ability to use BGRA textures created with RenderingDevice
with classes such as Texture2DRD.
2024-10-16 22:31:43 -07:00
ed3f990952
Alternative fix to occlusion culling where all math is based on Euclidean distance.
2024-10-17 05:59:37 +02:00
c12001a9dc
Fix incorrect depth comparison used to calculate volumetric fog shadowing
2024-10-16 14:55:41 +05:30
8d3e9aa7ae
Revert incorrect rounding when 2D transform snapping
2024-10-15 10:43:42 +02:00
cef515506b
Move preprocessor to end of line for iterator, remove redeclaration incompatible with ubershader method definitions
2024-10-14 22:19:16 +01:00
af77100e39
Merge pull request #92441 from Chaosus/shader_custom_func_overloads
...
Implement custom function overloading in shading language
2024-10-14 14:09:59 -05:00
32cc2feba2
Merge pull request #93025 from kleonc/y-sort-physics-interpolation
...
Account for physics interpolation and transform snapping when Y-sorting
2024-10-14 14:09:30 -05:00
bb20444998
Merge pull request #97744 from Nazarwadim/use_local_vector_for_skeleton
...
Use `LocalVector` for skeleton
2024-10-10 18:13:19 -05:00
1c86feee0a
Implement custom function overloading in shading language
2024-10-08 15:54:00 +03:00
842f982397
Merge pull request #96819 from clayjohn/GLES3-instance-uniforms
...
Implement instance uniforms in Compatibility renderer
2024-10-07 13:41:47 -06:00
fa1aacb455
Configure MSAA properly in canvas renderer's pipelines.
2024-10-04 10:45:59 -03:00
5ac62a6863
Merge pull request #97743 from bruvzg/has_kbd
...
[DisplayServer] Implement `has_hardware_keyboard` method for Android and iOS.
2024-10-04 11:22:02 +02:00
65f3df5923
Properly utilize surface information when creating pipelines and vertex arrays in canvas renderer
2024-10-03 16:27:14 -07:00
e2c6daf7ef
Implement asynchronous transfer queues, thread guards on RenderingDevice. Add ubershaders and rework pipeline caches for Forward+ and Mobile.
...
- Implements asynchronous transfer queues from PR #87590 .
- Adds ubershaders that can run with specialization constants specified as push constants.
- Pipelines with specialization constants can compile in the background.
- Added monitoring for pipeline compilations.
- Materials and shaders can now be created asynchronously on background threads.
- Meshes that are loaded on background threads can also compile pipelines as part of the loading process.
2024-10-02 15:11:58 -03:00
1ba168fcbc
Use local vector for skeleton
2024-10-02 20:38:40 +03:00