1
0
Fork 0
Commit Graph

1852 Commits

Author SHA1 Message Date
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
Aaron Franke 2800948d61
Organize ifdefs for disabling navigation, physics, and XR 2025-04-02 08:24:24 -07:00
Thaddeus Crews 1f56d96cf2
Merge pull request #104893 from Repiteo/scons/external-includes-alt
SCons: Add `CPPEXTPATH` for external includes
2025-04-02 07:48:03 -05:00
Thaddeus Crews f25fc34439
SCons: Add `CPPEXTPATH` for external includes 2025-04-02 07:29:08 -05:00
Yufeng Ying 4f4031a675 Replace size() == 0 with is_empty(). 2025-04-02 19:18:43 +08:00