1
0
Fork 0
Commit Graph

2056 Commits

Author SHA1 Message Date
Juan Manuel Costello 5dc25db6da Fix lightmap dynamic objects with physical lights 2025-07-17 20:58:03 -03:00
clayjohn a8efa55bed Add depth resolve to the mobile renderer 2025-07-16 20:37:39 -07:00
clayjohn 17b9469bac Never overwrite motion vectors in the transparent pass 2025-07-16 04:58:39 -07:00
Thaddeus Crews eb0caa6029
Merge pull request #108510 from bruvzg/bake_no_atomic
[macOS] Selectively bake "no image atomics" shader variants.
2025-07-14 10:30:36 -05:00
Thaddeus Crews 6bc7fcb7af
Merge pull request #108567 from beicause/multimesh-null-checks
Add some multimesh null checks to avoid crash
2025-07-14 10:30:35 -05:00
Thaddeus Crews 35a2d7843e
Merge pull request #104302 from brennennen/reflection_probe_count_error_check
Add error check for reflection probe invalid atlas index.
2025-07-14 10:30:31 -05:00
Thaddeus Crews 2be2cbb720
Merge pull request #107782 from allenwp/vulkan-nonlinear-color-correction-dithering
Always perform color correction and debanding on nonlinear sRGB values.
2025-07-14 10:30:28 -05:00
LuoZhihao 5352638f95 Add some multimesh null checks to avoid crash 2025-07-13 10:09:36 +08:00
Pāvels Nadtočajevs 87e91f7c7a
[macOS] Selectively bake "no image atomics" shader variants. 2025-07-12 21:05:48 +03:00
brennen 2583aa4a68 Add error check for reflection probe invalid atlas index. 2025-07-10 19:03:21 -05:00
Pāvels Nadtočajevs a8873727ac
[macOS] Selectively bake specific shader variants for MoltenVK. 2025-07-09 20:09:56 +03:00
Thaddeus Crews bfb379b766
Merge pull request #108378 from Mingxi-Z/fix/clearcoat-nan-issue
Fix division by zero in clearcoat specular BRDF
2025-07-09 11:33:21 -05:00
Allen Pestaluky a1591512f8 Always perform color correction and debanding on nonlinear sRGB values.
Fixes #107730

Co-authored-by: LuoZhihao <luo_zhihao@outlook.com>
2025-07-08 13:44:53 -04:00
retrotails a5e681df77 Fix crash when creating voxel GI data 2025-07-07 23:26:56 -04:00
Mingxi Zhang 2096e4c007 Fix division by zero in clearcoat
Prevents the clearcoat model from generating NaN values at grazing angles
2025-07-08 01:58:37 +00:00
Stuart Carnie 5230f6c60c Apple: Use image atomic operations on supported Apple hardware
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2025-07-05 05:59:00 +10:00
Apples 62a5cd90a7 Fix opaque stencil rendering 2025-07-02 21:49:19 -05:00
Thaddeus Crews e750950dc6
Merge pull request #107568 from Rudolph-B/Issue-92708
Fix floating point precision errors when setting particle trail length
2025-07-01 17:57:58 -05:00
BlueCube3310 16b9ee6f50 Image: Implement 16-bit unorm and uint formats 2025-06-28 00:30:52 +02:00
Dario 4921a3e711 Fix VVL errors by changing frag_color to FP32 and dFdx/y. 2025-06-26 13:42:17 -03:00
Thaddeus Crews 05640191e7
Merge pull request #107928 from Kaleb-Reid/scatter-no-LIGHTX
Always send lights to sky shader if using sun scatter
2025-06-24 18:34:31 -05:00
Thaddeus Crews 01410f19f8
Merge pull request #107876 from clayjohn/vs-data-issues
Fix a few improper memory accesses in the clustered forward vertex shader
2025-06-24 18:34:25 -05:00
Kaleb Reid e659daf6e0 Always send lights to sky shader if using sun scatter 2025-06-24 14:24:49 -07:00
celyk 7f9b8dae4f Use double emulation on modelview 2025-06-24 15:37:18 +10:00
LuoZhihao ea75954575 Vulkan Mobile: Fix writing vertex color in spatial shader 2025-06-23 21:30:48 +08:00
clayjohn b4adaa291a Fix a few improper memory accesses in the clustered forward vertex shader
draw_call.instance_index should not be used directly since it doesn't take into account auto-batching

scene_data_block.data should not be used directly in the vertex shader since it can change between frames and impact motion vector generation

IN_SHADOW_PASS can only be accessed inside functions, so it needs to be a global and not a constant
2025-06-22 23:41:03 -07:00
Mingxi Zhang de2aa1bc4d Fix: Ensure sky orientation is set when reflection uses sky 2025-06-22 23:50:39 +08:00
Lukas Tenbrink 28fd557c58 Add missing `vpv.push_back(pv);` in `render_target_get_sdf_texture`. 2025-06-20 14:46:03 +02:00
Thaddeus Crews c9511255de
Merge pull request #107684 from dsnopek/revert-shadow-normal-bias-relative
Revert "Use lower shadow normal bias for distant directional shadow splits"
2025-06-19 09:53:54 -05:00
David Snopek 4cc1d0ba67 Revert "Use lower shadow normal bias for distant directional shadow splits"
This reverts commit dfc05caf06.
2025-06-18 18:14:22 -05:00
Thaddeus Crews 8f6597ad41
Merge pull request #107625 from beicause/forward-plus-fix-light-shader-builtins
Forward+: Fix builtins in light shader
2025-06-18 18:14:05 -05:00
Lukas Tenbrink 2b36c79f7b Use `Span<uint8_t>` in `RenderingDevice` allocation APIs to avoid intermediary arrays on calls. 2025-06-18 12:31:48 +02:00
LuoZhihao 8a2fd98004 Forward+: Fix builtins in light shader 2025-06-17 20:14:53 +08:00
Rudolph Bester 3c5d4a2410 Fix floating point precision errors when setting particle trail length 2025-06-15 20:38:50 +02:00
devloglogan 36128bfc29 Check render target validity before getting motion vector texture in mobile renderer 2025-06-13 18:52:02 -05:00
Rémi Verschelde 3b2b0157ff
Merge pull request #107475 from beicause/fix-global-shader-texture-uniform
Fix global shader texture uniform
2025-06-13 15:54:09 +02:00
LuoZhihao 7419e4429d Fix global shader texture uniform 2025-06-13 13:24:38 +08:00
Rémi Verschelde 9eda3c682d
Merge pull request #107404 from beicause/mobile-spatial-light-shader-builtins
Vulkan Mobile: Fix reading builtins in `light()` of spatial shader
2025-06-12 22:48:58 +02:00
Rémi Verschelde da05a6b775
Merge pull request #106907 from SpockBauru/fix-mobile-lightmap-instances
Vulkan Mobile: Fix lightmap instances count
2025-06-12 11:56:32 +02:00
Rémi Verschelde 0497ae9947
Merge pull request #80710 from apples/7174-apples-stencil
Add stencil support to spatial materials
2025-06-12 01:15:35 +02:00
Dario 8804c88443 Change all interpolators to FP32 in mobile renderer. 2025-06-11 15:36:22 -03:00
Apples d674c9e289 Add stencil support for spatial materials 2025-06-11 09:59:10 -05:00
LuoZhihao 2a1d2afaca Vulkan Mobile: Fix reading builtins in `light()` of spatial shader 2025-06-11 21:32:59 +08:00
Rémi Verschelde a1ef1130ad
Merge pull request #107364 from DarioSamo/adreno-fix-interpolators
Upgrade normal interpolators to FP32 to fix Adreno.
2025-06-10 17:56:29 +02:00
Dario e53b67df03 Upgrade normal interpolators to FP32 to fix Adreno. 2025-06-10 12:26:58 -03:00
David Snopek 951ca21f02 Vulkan Mobile: Fix crash from shader compilation with `USE_RADIANCE_CUBEMAP_ARRAY` 2025-06-10 09:19:32 -05:00
Rémi Verschelde 40b251ba8e
Merge pull request #103899 from Ivorforce/idiomatic-template-vargs
Use idiomatic templating vargs in a few places to reduce code.
2025-06-10 12:29:40 +02:00
Thaddeus Crews fc523ec5f6
Merge pull request #107230 from dsnopek/rd-depth-image-swizzle
RendererRD: Fix swizzle on depth formats
2025-06-09 17:08:49 -05:00
Thaddeus Crews 7584546399
Merge pull request #101941 from dsnopek/opengl-global-uniform-sampler2darray
Fix wrong default texture for global uniforms of type `sampler2DArray`
2025-06-09 17:08:47 -05:00
SpockBauru fe1d499aa4 Mobile: Fix lightmap instances count 2025-06-09 17:58:17 -03:00
Dario 46277836a6 Optimize Mobile renderer by using FP16 explicitly. 2025-06-09 14:39:35 -03:00
Lukas Tenbrink df7dab4946 Use idiomatic templating vargs in a few places to reduce code. 2025-06-08 12:24:07 +02:00
SaracenOne 761d5474dc Shader compilation fix:
Fix shader compilation crash on custom shaders
using VIEW_INDEX on Vulkan Clustered Forward
renderer.
2025-06-08 03:29:47 +01:00
David Snopek 316b9aa6d2 RendererRD: Fix swizzle on depth formats 2025-06-06 16:30:17 -05:00
Rémi Verschelde 26df04377e
Merge pull request #107210 from dsnopek/vulkan-mobile-fix-missing-view-index
Fix crash when using `VIEW_INDEX` in shader with Vulkan mobile renderer
2025-06-06 17:38:23 +02:00
Rémi Verschelde e6d0b32566
Merge pull request #106673 from retrotails/master
Fix light range in VoxelGI
2025-06-06 17:37:09 +02:00
Apples 7574a5dbb3 Add depth function for spatial materials 2025-06-06 09:21:19 -05:00
David Snopek 56c2ce00d6 Fix crash when using `VIEW_INDEX` in shader with Vulkan mobile renderer 2025-06-06 07:03:35 -05:00
David Snopek fa30719814 Fix wrong default texture for global uniforms of type `sampler2DArray` 2025-06-05 11:12:03 -05:00
Rémi Verschelde 37982d4a01
Merge pull request #107116 from beicause/expose-mesh-surface-update-index-buffer
Expose `RS.mesh_surface_update_index_region`
2025-06-05 17:24:54 +02:00
LuoZhihao 63c124fa45 Expose `RS.mesh_surface_update_index_region`
And `mesh_surface_get_format_index_stride`
2025-06-05 19:35:59 +08:00
Rémi Verschelde 1e9200d065
Merge pull request #107099 from Kaleb-Reid/fix-sun-scatter
Increase directional light energy in sky for fog sun scatter
2025-06-05 13:13:40 +02:00
Rémi Verschelde 088ef7b6f6
Merge pull request #100283 from devloglogan/vk-motion-vectors
Implement motion vectors in mobile renderer
2025-06-05 13:10:20 +02:00
Kaleb Reid bac9427325 Fix sky energy in fog sun scatter + colour space discrepancy in compatibility 2025-06-04 13:59:53 -07:00
Thaddeus Crews 7a3d2f6779
Merge pull request #106606 from aaronfranke/pow2_64
Add 64-bit versions of core power of 2 functions
2025-06-02 18:51:56 -05:00
Thaddeus Crews 167a9e33d3
Merge pull request #106880 from dsnopek/meta-depth-api-nonhacks
Minor rendering and XR changes to allow Meta enivornment depth API to work entirely from GDExtension
2025-06-02 18:51:19 -05:00
Aaron Franke f6f1df7d73
Add 64-bit versions of core power of 2 functions 2025-06-01 23:11:12 -07:00
devloglogan 3b70fbdc3c Implement motion vectors in mobile renderer 2025-05-30 13:09:54 -05:00
Thaddeus Crews de37627404
Merge pull request #102552 from DarioSamo/shader-baker
Add shader baker to project exporter.
2025-05-28 17:09:38 -05:00
Thaddeus Crews 90c75d02dd
Merge pull request #106732 from stuartcarnie/rd_reduce_allocations
Renderer: Eliminate `String` allocations for all labels in the renderer
2025-05-28 09:47:43 -05:00
Thaddeus Crews 7830c5fadc
Merge pull request #106844 from LiveTrower/dfg-reconstruction
Fix missing ibl reconstruction from DFG multiscattering
2025-05-28 09:47:41 -05:00
Stuart Carnie 7d93119353 Renderer: Eliminates `String` allocations for all labels in the renderer
Uses `Span<char>` to avoid additional allocations in the graph.
2025-05-28 06:01:35 +10:00
David Snopek 0fd0feb772 Minor rendering and XR changes to allow Meta enivornment depth API to work entirely from GDExtension 2025-05-27 13:06:31 -05:00
Dario 5a30a7e7cd Add shader baker to project exporter.
Metal Support contributed by Migeran (https://migeran.com) and Stuart Carnie.

Co-authored-by: Stuart Carnie <stuart.carnie@gmail.com>
Co-authored-by: Gergely Kis <gergely.kis@migeran.com>
2025-05-27 12:45:27 -03:00
Lukas Tenbrink 4cb8a0c77e Add `resize_initialized` and `resize_uninitialized` to `Vector`. These functions serve as replacements for `resize`, to make sure the caller understands whether elements need to be initialized 'by hand' after the call. 2025-05-26 18:35:41 +02:00
Thaddeus Crews e89c4b0f9f
Merge pull request #102330 from RGDTAB/add_partial_smaa
Add SMAA 1x to screenspace AA options
2025-05-26 11:24:35 -05:00
Alfonso Grimaldo e1e1933244
fix missing ibl reconstruction from dfg multiscattering 2025-05-24 20:10:02 -06:00
BlueCube3310 546b40eee2 Mobile: Move _setup_lightmaps before _fill_render_list 2025-05-23 14:28:45 +02:00
Thaddeus Crews 452dc667fb
Merge pull request #106592 from beicause/shader-fix-editor-mat-default
Shader: Fix the default behavior when mat uniforms are null
2025-05-22 12:15:08 -05:00
Raymond DiDonato 6b99608950 Add SMAA 1x 2025-05-21 15:02:09 -04:00
clayjohn 9a1def8da1 Add new StandardMaterial properties to allow users to control FPS-style objects (hands, weapons, tools close to the camera)
Add new shader built in Z_CLIP_SCALE to easily adjust clipping distance to avoid clipping walls etc.

Add fov_override to StandardMaterial3D to easily have a custom FOV for FPS objects

Add IN_SHADOW_PASS built-in to shaders for tweaking materials without impacting shadow maps
2025-05-21 10:16:05 -03:00
retrotails ba06234309 Fix light range in voxel GI 2025-05-21 06:49:35 -04:00
LuoZhihao 4621d3e1f4 Shader: Fix the default behavior when mat uniforms are null 2025-05-21 13:28:39 +08:00
Rémi Verschelde 25a3c27c41
Merge pull request #105628 from rsanchezsaez/apple/ios-visionos-4.5
Native visionOS platform support
2025-05-20 23:09:07 +02:00
Thaddeus Crews a12e9d5c31
Merge pull request #106493 from DarioSamo/mobile-scs-permutations
Reduce amount of permutations in mobile shader.
2025-05-20 11:37:26 -05:00
BlueCube3310 67a2c69c78 Mobile: Disable subpass post-processing when using FXAA 2025-05-20 13:21:59 +02:00
Ricardo Sanchez-Saez 47971c0a27
Introduce 'visionos' platform derived from 'apple_embedded' 2025-05-19 15:47:01 -07:00
Ricardo Sanchez-Saez 457299449d
Introduce 'drivers/apple_embedded' abstract platform for code reuse 2025-05-19 15:37:13 -07:00
Dario ff3ababb09 Reduce amount of permutations in mobile shader. 2025-05-16 12:40:21 -03:00
Thaddeus Crews b7b3a1a78a
Merge pull request #106399 from DarioSamo/fix-canvas-validation-error
Rewrite textureProjLod usage to avoid a Vulkan validation error.
2025-05-15 14:53:26 -05:00
Thaddeus Crews e625565853
Merge pull request #106396 from chocola-mint/canvas-item-add-triangle-array-count
Implement the `count` parameter in `RenderingServer.canvas_item_add_triangle_array`
2025-05-15 10:22:16 -05:00
Dario 499fff51fb Rewrite textureProjLod usage to avoid a Vulkan validation error. 2025-05-15 11:35:34 -03:00
Thaddeus Crews d0693d6867
Merge pull request #89988 from LunaCapra/specular-occlusion
Add support for bent normal maps for specular occlusion and indirect lighting
2025-05-14 09:44:06 -05:00
chocola-mint 101dc9868f Implement the count parameter in RenderingServer.canvas_item_add_triangle_array() 2025-05-14 22:52:30 +09:00
landervr be01c7f5a4 fix reflection probe box projection stretching 2025-05-14 00:02:06 +02:00
Capry 9828c365c3 Add support for bent normals for indirect lighting and specular occlusion 2025-05-12 12:52:04 +02:00
Thaddeus Crews 19bb18716e
Merge pull request #102399 from clayjohn/cull-mask-overhaul
Overhaul the cull mask internals for Lights, Decals, and Particle Colliders
2025-05-09 11:29:28 -05:00
Thaddeus Crews dda0562f2f
Merge pull request #103934 from LiveTrower/dfg-lut
Forward+: Replace the current BRDF approximation with a DFG LUT and add multiscattering energy compensation
2025-05-09 11:29:16 -05:00
Thaddeus Crews 821170f054
Merge pull request #106145 from lander-vr/ambient-light-specular-occlusion
Add specular occlusion from ambient light
2025-05-09 11:29:14 -05:00
clayjohn 305216f558 Overhaul the cull mask internals for Lights, Decals, and Particle Colliders
Properly pair and unpair instances based on cull mask to avoid any unnecessary processing and to ensure that changing the cull_mask and layer_mask actually updates culling behavior
2025-05-08 21:39:12 -07:00
landervr 56730d0cb2 Add specular occlusion from ambient light
Co-authored-by: guerro323 <kaltobattle@gmail.com>
2025-05-08 23:52:01 +02:00
LiveTrower 44408eabaa Replace BRDF approximation with a DFG LUT 2025-05-08 10:23:35 -06:00
Thaddeus Crews 288822e330
Merge pull request #105570 from kroketio/texture-extension-mipmaps
RenderingDevice: Pass mipmap count to `texture_create_from_extension()`
2025-05-08 07:19:16 -05:00
Sander 6ae50cad17 RenderingDevice: introduce parameter 'mipmaps' for texture_create_from_extension() 2025-05-07 15:15:55 +03:00
clayjohn 07ef21c87a Avoid crash when allocating specular and normal-roughness buffers when render buffers aren't available 2025-05-04 13:54:11 -07:00
Thaddeus Crews 01fc9aee6c
Core: Modernize C headers with C++ equivalents 2025-05-02 08:23:01 -05:00
Thaddeus Crews f4f1471b57
Merge pull request #105910 from lawnjelly/global_get_fast4
Add `GLOBAL_GET` cached macros.
2025-04-30 09:18:44 -05:00
lawnjelly f8f350a32a Add `GLOBAL_GET` cached macros.
GLOBAL_GET is an expensive operation which should not be used each frame / tick.
This PR adds macros which do a cheaper revision check, and only call the expensive GLOBAL_GET when project settings have changed.

Co-authored-by: Lukas Tenbrink <lukas.tenbrink@gmail.com>
2025-04-30 15:08:50 +01:00
dsmtE 4e68f277c6 add REGION_RECT
fix formatting

fix shader compile (region_rect after draw_data)

fix formatting

fix formatting

Review fix (move region_rect in main + remove useless visual shader options)

fix formatting

fix alphabetic order (+ remove useless action for spatial shaders)

typo + remove TYPE_LIGHT option for  region_rect
2025-04-30 11:07:22 +02:00
landervr e3dbf74634 Fix reflection probe dark borders 2025-04-29 17:18:52 +02:00
Thaddeus Crews dedc072840
Merge pull request #105837 from clayjohn/sky-acos-bugfix
Fix float/int comparison in acos_approx in sky template shader
2025-04-28 10:01:34 -05:00
Thaddeus Crews 3947cbe3b2
Merge pull request #104386 from Repiteo/core/cpp-math
Core: Replace C math headers with C++ equivalents
2025-04-27 19:21:22 -05:00
clayjohn d2dce41681 Fix float/int comparison in acos_approx in sky template shader
Strict GLSL implementations will not automatically convert `0` to a float
2025-04-27 17:06:34 -07:00
Thaddeus Crews 8954125990
Merge pull request #105437 from Ansraer/teleport_spatial_nodes
Allow moving meshes without motion vectors
2025-04-25 11:36:08 -05:00
Thaddeus Crews 33065d8323
Merge pull request #103238 from Ryan-000/mesh_support_vram_profiler
Add Meshes to the Video RAM Profiler
2025-04-25 11:36:01 -05:00
Ansraer a4a5f4ed01 allow moving meshes without motion vectors 2025-04-25 14:25:06 +02:00
Ryan 4497e2a0d3 Add Meshes to the Video RAM Profiler
Apply suggestions from code review

Co-Authored-By: Hugo Locurcio <hugo.locurcio@hugo.pro>
2025-04-23 18:26:56 -04:00
mrjustaguy bc746f2962 Implement FXAA 3.11 2025-04-22 22:19:06 -07:00
Thaddeus Crews 1f7a8eac9d
Merge pull request #101973 from clayjohn/sky-material-opt
Optimize ProceduralSkyMaterial by removing uses of acos and simplifying logic
2025-04-22 18:25:51 -05:00
Thaddeus Crews 2ffd5a3913
Merge pull request #104738 from YYF233333/cleanup_rid_owner
Use `LocalVector` in `RID_Owner::get_owned_list`
2025-04-22 10:44:25 -05:00
Thaddeus Crews 93c13f8399
Merge pull request #105424 from bruvzg/intel_mac_rd_crash
Fix RendererRD crash on start on Intel Macs.
2025-04-21 08:24:22 -05:00
Thaddeus Crews 2a96e895e6
Merge pull request #105525 from BlueCube3310/light-probe-sh-impr
Scene shader: Improve and document SH diffuse evaluation for light probes
2025-04-21 08:24:20 -05:00
Yyf2333 1a70a06a43 Change RID_Owner::get_owned_list. 2025-04-21 01:04:27 +08:00
Matthieu Bucchianeri e3c215fc13 Add support for Direct3D 12 OpenXR backend.
This change adds support for running XR projects built with the `d3d12`
rendering backend. The XR backend hooks into the setup for the D3D12
render context in order to use the desired device and command queue for
submission to OpenXR. The XR backend takes care of importing the D3D12
swapchain images into the render context.

As part of this process, three issues are addressed:
- Ensuring that resource state transitions are only done on textures
  that require them.
- Enabling view instancing in the PSOs for multiview render passes.
- Addressing a bug in the D3D12 runtime where PSO creation may fail
  when front face detection is used.

Please refer to #86283 for additional discussions on the implementation
details.
2025-04-19 20:39:33 -07:00
BlueCube3310 5640ddd0a5 Scene shader: Improve and document SH evaluation for light probes 2025-04-19 15:08:02 +02:00
clayjohn 6fede0b951 Optimize SkyMaterials by removing uses of acos and simplifying logic
The results looks almost the same and run much faster.
2025-04-17 22:50:11 -07:00
Thaddeus Crews 98aced4e65
Merge pull request #99768 from dsnopek/openxr-vulkan-foveated-rendering
OpenXR: Use the `XR_FB_foveation_vulkan` extension to get the density map for VRS
2025-04-17 09:14:23 -05:00
Thaddeus Crews ad40939b6f
Core: Replace C math headers with C++ equivalents
- Minor restructuring to ensure `math_funcs.h` is the central point for math functions
2025-04-16 15:49:02 -05:00
Thaddeus Crews 6a9f46931a
Merge pull request #104480 from BlueCube3310/image-unsuported-format
Renderer: Warn when images need to be converted due to their formats being unsupported by hardware
2025-04-16 10:44:52 -05:00
Pāvels Nadtočajevs 472090dd88
Fix RendererRD crash on start on Intel Macs. 2025-04-15 20:35:56 +03:00
Thaddeus Crews 448f159c69
Merge pull request #105267 from clayjohn/rd-mobile-pipelines
Pre-allocate more resources when screen textures are detected in the Mobile renderer
2025-04-14 19:39:48 -05:00
Thaddeus Crews f56a4d4fe4
Merge pull request #105138 from stuartcarnie/fix_hangs
Renderer: Reduce scope of mutex locks to prevent common deadlocks
2025-04-14 19:39:47 -05:00
Thaddeus Crews a6979ef664
Merge pull request #97801 from basicer/srgb-color-hint
Add `color_conversion_disabled` shader hint.
2025-04-14 19:39:42 -05:00
Stuart Carnie 09282c316a Renderer: Reduce scope of mutex locks to prevent common deadlocks
Fixes #102877
2025-04-13 06:56:13 +10:00
clayjohn 699695e5ff Preallocate more resources when screen textures are detected in the Mobile renderer
This further reduces stutter when the screen texture suddenly becomes visible
2025-04-11 12:31:17 -07:00
Thaddeus Crews c7e9dc96a4
Rendering: Fix `Math` constant conversion 2025-04-11 12:33:57 -05:00
Rob Blanckaert 8c54290b4a Add `color_conversion_disabled` shader hint.
Sometimes shaders want to accept a color as input that is always
in the srgb color space.  This adds a hint to vec3/vec4 to enable
the color picker popup for those vectors but disable color space
conversion.
2025-04-10 21:31:15 -07:00
Thaddeus Crews 94282d88f9
Core: Use `Math` namespace for constants 2025-04-10 16:29:30 -05:00
Thaddeus Crews 06c71fbf40
Merge pull request #105175 from clayjohn/RD-pipeline-sss-roughness
Detect more pipeline settings at load time to avoid pipeline stutters
2025-04-10 11:10:22 -05:00
Thaddeus Crews d534107926
Revert early version of PR #105175
This reverts commit 6225e25f4a.
2025-04-10 11:09:50 -05:00
Thaddeus Crews 665bdf4fe2
Merge pull request #105175 from clayjohn/RD-pipeline-sss-roughness
Detect more pipeline settings at load time to avoid pipeline stutters
2025-04-10 10:18:18 -05:00
Thaddeus Crews ae80141a54
Merge pull request #103306 from Calinou/macos-intel-vulkan-disable-texture-array-reflections
Disable texture array reflections on Intel GPUs on macOS due to driver bugs
2025-04-09 18:11:52 -05:00
clayjohn bf47c42b21 Detect possible usage of SSS and screen textures at load time to allocate needed resources at load time.
This allows us to avoid a class of pipeline compilation stutters and
stutters from allocating screen textures.
2025-04-09 13:31:03 -07:00
clayjohn 6225e25f4a Detect possible usage of SSS and screen textures at load time to allocate needed resources at load time.
This allows us to avoid a class of pipeline compilation stutters and
stutters from allocating screen textures.
2025-04-09 13:15:40 -07:00
Thaddeus Crews 4d5f455cf7
Merge pull request #105037 from clayjohn/RD-instance-index-crash
Avoid using a global variable to store instance index in canvas items shader in RD renderer
2025-04-07 08:43:27 -05:00
Thaddeus Crews 5edb235018
CI: Bump various pre-commit hooks 2025-04-07 08:23:35 -05:00
BlueCube3310 a861394e13 Renderer: Warn when images need to be converted due to their formats being unsupported by hardware 2025-04-06 19:27:02 +02:00
clayjohn bef26b8861 Avoid using a global variable to store instance index in canvas items shader in RD renderer 2025-04-04 16:32:15 -07:00
Thaddeus Crews 6bd249a4c2
Merge pull request #104850 from Repiteo/core/warning-macros
Core: Integrate warning suppression macro helpers
2025-04-03 16:50:22 -05:00
Thaddeus Crews 207a2b6472
Core: Integrate warning suppression macro helpers 2025-04-03 10:13:46 -05:00