Zac Luzader
a5f67bc458
Use sky's corrected camera projection for combined_reprojection
...
(cherry picked from commit 56e646c2170a91d1432b43471330da818a2a8b82)
2026-02-05 10:05:06 -06:00
clayjohn
d376ca77dc
Avoid reading from sky pointer when rendering background without sky
...
(cherry picked from commit da7540f3f19ad7c05acd5f3632ed349a0db75032)
2026-02-05 09:46:08 -06:00
Clay John
5207208577
Ensure that uv border size is passed in to sky rendering functions both when rendering the octmap and when rendering the sky as a background
...
(cherry picked from commit b4b20e95ed4e18d18370f76f6faad5f8e1e380d3)
2026-02-05 09:46:07 -06:00
clayjohn
24c2c452de
Fix downsampled radiance map generation.
...
Reduce the mipmap levels so that the border is pixel perfect
Always use the high quality downsample to reduce jaggies
Fix the jacobian approximation so that it actually helps account for the octahedral distortion
2026-01-12 18:56:10 -08:00
Kaleb Reid
05830dfbfb
Check if sun scatter is enabled when using SKY_MODE_AUTOMATIC
2025-12-04 22:58:05 -08:00
Dario
c78c3ba894
Rewrite Radiance and Reflection probes to use Octahedral maps.
...
Co-authored-by: clayjohn <claynjohn@gmail.com >
2025-12-02 17:48:12 -08:00
Thaddeus Crews
2b7f39ea28
Merge pull request #110505 from Calinou/tweak-draw-command-labels
...
Tweak draw command label names for consistency
2025-09-30 20:10:37 -05:00
Aaron Franke
9fbf5808a0
Rename server "free" functions to "free_rid" to match exposed API
2025-09-30 16:52:25 -07:00
clayjohn
fc951855ed
Move check for sky cubemap array back into the SkyRD initializer so it is set before being used.
...
Previously it was moved out of this function becuase we relied on RenderingServer::get_video_adapter_name which wasn't available yet.
However, that was unnecessary since it is just a wrapper around RenderingDevice::get_device_name() which is available.
2025-09-17 11:41:56 -07:00
Hugo Locurcio
204e310914
Tweak draw command label names for consistency
...
- Use Title Case for all labels, and add hyphens where relevant.
- Mention Roughness in SSR Filter's label name, as it's only enabled
when the SSR roughness quality is not set to Disabled.
2025-09-14 01:23:47 +02:00
Kaleb Reid
e659daf6e0
Always send lights to sky shader if using sun scatter
2025-06-24 14:24:49 -07: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
Pāvels Nadtočajevs
472090dd88
Fix RendererRD crash on start on Intel Macs.
2025-04-15 20:35:56 +03:00
Thaddeus Crews
c7e9dc96a4
Rendering: Fix Math constant conversion
2025-04-11 12:33:57 -05:00
Thaddeus Crews
94282d88f9
Core: Use Math namespace for constants
2025-04-10 16:29:30 -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
Hugo Locurcio
92f3173794
Disable texture array reflections on Intel GPUs on macOS due to driver bugs
...
The check is only present in x86 builds, since Apple Silicon never
uses an Intel GPU by definition.
2025-02-26 02:28:36 +01:00
clayjohn
74989c639e
Pass angular diameter into light size constants for sky shaders.
...
This flew under the radar for so long since tan is nearly linear at small values
2025-01-23 17:32:44 -08:00
clayjohn
96ce5c0001
Ensure Sky with custom fov has correction matrix applied to it in RD renderers
2025-01-03 17:11:02 -08:00
Alex Threlfo
5f617663aa
fix: separate sky luminance and user brightness calculations around fog
2024-12-20 11:25:11 +11:00
CrazyRoka
d9ef826c54
Optimize RenderForwardClustered::_setup_render_pass_uniform_set by reducing Vector allocations during push_back operations
2024-12-02 15:03:50 +01:00
Dario
6d5ac8f7ef
Resolve load and store ops automatically for render passes for discardable textures.
2024-11-25 11:27:48 -03:00
clayjohn
02efdb28dc
Unify y-flip behavior for sky in RD backends
2024-11-19 16:59:04 -08:00
Adam Scott
0d350e7108
Set clang-format RemoveSemicolon rule to true
...
- Set clang-format `Standard` rule to `c++20`
2024-10-25 13:49:43 -04:00
Rémi Verschelde
82d7531a2e
Merge pull request #95990 from Breush/76166-sky-auto-radiance
...
Sky: Adapt radiance size if `AUTOMATIC_MODE` resolves to `REALTIME`
2024-09-04 17:12:02 +02:00
Alexis Breust
44e526d3d5
Sky: No more auto-selecting REALTIME mode if radiance is not 256
2024-09-04 10:54:08 +02:00
ComycSans
09e59fbec5
Fix SkyRD::Sky::free() freeing material
2024-09-02 18:59:31 +02:00
Matias N. Goldberg
364f916f3f
Add debug utilities for Vulkan
...
Features:
- Debug-only tracking of objects by type. See
get_driver_allocs_by_object_type et al.
- Debug-only Breadcrumb info for debugging GPU crashes and device lost
- Performance report per frame from get_perf_report
- Some VMA calls had to be modified in order to insert the necessary
memory callbacks
Functionality marked as "debug-only" is only available in debug or dev
builds.
Misc fixes:
- Early break optimization in RenderingDevice::uniform_set_create
============================
The work was performed by collaboration of TheForge and Google. I am
merely splitting it up into smaller PRs and cleaning it up.
2024-08-21 23:48:08 +02:00
clayjohn
eb62c5b27f
Revert change to default depth clear value in draw_list_begin
2024-04-17 19:08:22 -07:00
Khasehemwy
d950f5f838
Use Reverse Z for the depth buffer
2024-04-04 13:54:15 +02:00
Dario
cc4d39b0c1
Acyclic Command Graph for RenderingDevice.
...
Adds a new system to automatically reorder commands, perform layout transitions and insert synchronization barriers based on the commands issued to RenderingDevice.
2024-01-08 14:54:56 -03:00
A Thousand Ships
fdd3d36c6d
[Servers] Replace ERR_FAIL_COND with ERR_FAIL_NULL where applicable
2023-09-25 18:45:30 +02:00
Dario
057367bf4f
Add FidelityFX Super Resolution 2.2 (FSR 2.2.1) support.
...
Introduces support for FSR2 as a new upscaler option available from the project settings. Also introduces an specific render list for surfaces that require motion and the ability to derive motion vectors from depth buffer and camera motion.
2023-09-25 10:37:47 -03:00
Dario
9b91750fb1
Fix mipmap bias behavior by refactoring how samplers are created by Material Storage.
...
Introduces a new structure to store samplers created with certain parameters instead of storing a 'custom' set of samplers. Allows viewports to correctly configure the mipmap bias and use it when rendering the scene.
2023-09-06 11:24:19 -03:00
Rémi Verschelde
1163dac9e3
Merge pull request #80215 from clayjohn/HDR-2D
...
Add option to enable HDR rendering in 2D
2023-08-08 16:57:33 +02:00
clayjohn
57eb762bae
Add option to enable HDR rendering in 2D
...
This is needed to allow 2D to fully make use of 3D effects (e.g. glow), and can be used to substantially improve quality of 2D rendering at the cost of performance
Additionally, the 2D rendering pipeline is done in linear space (we skip linear_to_srgb conversion in 3D tonemapping) so the entire Viewport can be kept linear.
This is necessary for proper HDR screen support in the future.
2023-08-07 11:24:03 +02:00
Matias N. Goldberg
79c9edab3b
Draw sky as a fullscreen triangle
2023-08-05 17:55:43 -03:00
Parsleigh Scumble
67c13fe4eb
Use defaults to initialize sky data in case of no sky
2023-07-24 10:41:13 -07:00
Yuri Sizov
bb15241e06
Merge pull request #77740 from ChibiDenDen/simplify_vulkan
...
Replace sampler arrays with constant sampler elements, simplify and reuse code for all shaders
2023-07-12 17:16:12 +02:00
ChibiDenDen
35715e510f
replace sampler arrays with constant sampler elements
2023-06-22 01:11:57 +03:00
Bastiaan Olij
66272ea26e
Fix volumetric fog in stereo by projection vertex in combined space
2023-06-20 14:36:14 +10:00
Rémi Verschelde
347a8e20ae
Merge pull request #69324 from RedMser/advanced-settings-errors
...
Make it easier to solve warnings/errors referring to project settings
2023-04-11 19:39:53 +02:00
Bastiaan Olij
901cd7e3fe
Fix framebuffers in sky not being created on mobile renderer
2023-04-05 09:43:03 +10:00
RedMser
ed960453b7
Make solving project setting errors easier
...
Show full project setting path in error messages.
Force filtering for advanced settings if filter is not empty.
2023-03-27 08:10:35 +02:00
Bastiaan Olij
a8ec72cf94
Move roughness limiter and sort into their own classes
2023-03-09 21:58:55 +11:00
Yuri Rubinsky
94831c7209
Forbid passing multiview sampler to the custom function in shaders
2023-02-21 11:23:17 +03:00
clayjohn
bc64a734d3
Fix various crashes relating to low roughness_layers
2023-01-30 12:16:33 -08:00
clayjohn
5f94b378ab
Validate another case of using DATA_FORMAT_A2B10G10R10_UNORM_PACK32 texture with storage flag
2023-01-25 11:31:53 -08:00
clayjohn
5931d504c1
Add a few more checks to ensure that unsupported image formats are not used in the mobile renderer
2023-01-23 12:38:09 -08:00
clayjohn
8b3db6e9ce
Properly initialize directional_light_count in RD sky shaders
2023-01-16 13:05:52 -08:00