Commit Graph

2987 Commits

Author SHA1 Message Date
546b40eee2 Mobile: Move _setup_lightmaps before _fill_render_list 2025-05-23 14:28:45 +02:00
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
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
4621d3e1f4 Shader: Fix the default behavior when mat uniforms are null 2025-05-21 13:28:39 +08:00
25a3c27c41 Merge pull request #105628 from rsanchezsaez/apple/ios-visionos-4.5
Native visionOS platform support
2025-05-20 23:09:07 +02:00
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
67a2c69c78 Mobile: Disable subpass post-processing when using FXAA 2025-05-20 13:21:59 +02:00
47971c0a27 Introduce 'visionos' platform derived from 'apple_embedded' 2025-05-19 15:47:01 -07:00
457299449d Introduce 'drivers/apple_embedded' abstract platform for code reuse 2025-05-19 15:37:13 -07:00
ff3ababb09 Reduce amount of permutations in mobile shader. 2025-05-16 12:40:21 -03:00
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
4daa677fcb Merge pull request #106316 from Rudolph-B/depth-buffer-debug
Change Occlusion Culling Buffer debug view to use log scaling
2025-05-15 10:22:24 -05:00
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
499fff51fb Rewrite textureProjLod usage to avoid a Vulkan validation error. 2025-05-15 11:35:34 -03:00
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
b28d5a31dc Merge pull request #106241 from lander-vr/fix-reflection-probe-box-projection-stretching
Fix reflection probe box projection stretching
2025-05-14 09:44:05 -05:00
101dc9868f Implement the count parameter in RenderingServer.canvas_item_add_triangle_array() 2025-05-14 22:52:30 +09:00
be01c7f5a4 fix reflection probe box projection stretching 2025-05-14 00:02:06 +02:00
d41fe74342 Change Occlusion Culling Buffer debug view to use log scaling 2025-05-12 20:46:18 +02:00
9828c365c3 Add support for bent normals for indirect lighting and specular occlusion 2025-05-12 12:52:04 +02:00
16f51d4671 Remove duplicated entries from shader built-ins 2025-05-10 19:24:20 +03:00
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
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
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
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
56730d0cb2 Add specular occlusion from ambient light
Co-authored-by: guerro323 <kaltobattle@gmail.com>
2025-05-08 23:52:01 +02:00
44408eabaa Replace BRDF approximation with a DFG LUT 2025-05-08 10:23:35 -06:00
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
6ae50cad17 RenderingDevice: introduce parameter 'mipmaps' for texture_create_from_extension() 2025-05-07 15:15:55 +03:00
579feb387c Core: Add [[nodiscard]] to string-like classes 2025-05-06 12:23:41 -05:00
07ef21c87a Avoid crash when allocating specular and normal-roughness buffers when render buffers aren't available 2025-05-04 13:54:11 -07:00
01fc9aee6c Core: Modernize C headers with C++ equivalents 2025-05-02 08:23:01 -05:00
f4f1471b57 Merge pull request #105910 from lawnjelly/global_get_fast4
Add `GLOBAL_GET` cached macros.
2025-04-30 09:18:44 -05:00
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
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
e3dbf74634 Fix reflection probe dark borders 2025-04-29 17:18:52 +02:00
b7d4426fff Merge pull request #104269 from lawnjelly/fti_scene_tree4
Physics Interpolation - Move 3D FTI to `SceneTree`
2025-04-28 10:01:34 -05:00
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
bfdb0f0ecf Fix various sanitizer issues. 2025-04-28 15:23:35 +02:00
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
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
ae04a3a5dd Physics Interpolation - Move 3D FTI to SceneTree
Moves 3D interpolation from server to the client code (`SceneTree`).
Complete rework of 3D physics interpolation, but using the same user API.
2025-04-26 14:13:30 +01:00
8954125990 Merge pull request #105437 from Ansraer/teleport_spatial_nodes
Allow moving meshes without motion vectors
2025-04-25 11:36:08 -05:00
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
a4a5f4ed01 allow moving meshes without motion vectors 2025-04-25 14:25:06 +02:00
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
bc746f2962 Implement FXAA 3.11 2025-04-22 22:19:06 -07:00
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
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
c0e695d5e8 Merge pull request #100944 from Nazarwadim/LocalVector_use_1.5x_growth_factor
Use 1.5x growth factor for LocalVector
2025-04-21 08:24:22 -05:00