Commit Graph

130 Commits

Author SHA1 Message Date
de9b22625e LightmapGI: Pack L1 SH coefficients before denoising 2025-11-21 18:53:20 +01:00
9fbf5808a0 Rename server "free" functions to "free_rid" to match exposed API 2025-09-30 16:52:25 -07:00
f11aff3841 Editor: Restructure editor code
Moving various editor files into sub folders to reduce clutter
2025-07-04 18:18:22 +02:00
b16b3ea383 Fix buffer size calculations in lightmapper_rd.cpp to account for element sizes 2025-06-21 21:20:56 -04:00
88064d8b12 Merge pull request #107635 from akien-mga/scons-xatlas-lightmapper-mobile-editors
SCons: Enable `lightmapper` and `xatlas_unwrap` modules on Android and iOS editors
2025-06-18 18:14:08 -05:00
2b36c79f7b Use Span<uint8_t> in RenderingDevice allocation APIs to avoid intermediary arrays on calls. 2025-06-18 12:31:48 +02:00
e30acd2be8 SCons: Enable lightmapper and xatlas_unwrap modules on Android and iOS editors
Fixes #94297.
Fixes #107398.
2025-06-17 16:48:19 +02:00
09ed9d4a93 Merge pull request #107254 from passivestar/shadow-unleak
Fix LightmapGI shadow leaks
2025-06-14 00:00:12 +02:00
36d7a87cc8 Merge pull request #107168 from Rudolph-B/Issue-102300
Fix SH lightmap coefficients for direct lights
2025-06-09 00:44:59 +02:00
219035c5ea Fix LightmapGI shadow leaks 2025-06-08 20:13:12 +04:00
9b00031886 Fix SH lightmap coefficients for direct lights 2025-06-05 20:38:13 +02:00
6434c3d2c4 LightmapGI: Search for shadowmask light index only after sorting the lights 2025-06-05 15:55:48 +02:00
5640ddd0a5 Scene shader: Improve and document SH evaluation for light probes 2025-04-19 15:08:02 +02:00
4f4031a675 Replace size() == 0 with is_empty(). 2025-04-02 19:18:43 +08:00
324512e11c Style: Replace header guards with #pragma once 2025-03-07 17:33:47 -06:00
7ed64ebd9a Lightmapper: Expose the JNLM denoiser region size in the project settings 2025-02-13 12:00:51 +01:00
0c4834b20f Decrease default Max Rays per Pass setting to 4 to fix some lightmapping crashes 2025-02-06 14:36:23 +01:00
9cb317c7c0 Fix over saturated static colored lights 2025-02-04 19:45:36 +02:00
49a004fc13 Spread direct lighting calculation for LightmapGI over several submissions to avoid TDR on Windows devices
Also add percentage progress for direct lighting step
2025-01-31 16:37:13 -08:00
709f2e1a5d Merge pull request #100765 from Geometror/lightmapgi-add-downsampling
Add a supersampling option to LightmapGI
2025-01-07 23:17:39 +01:00
054340bb6b Add a supersampling option to LightmapGI
This provides increased lightmap quality with less noise, smoother
shadows and better small-scale shadow detail. The downside is that
this significantly increases bake times and memory usage while baking
lightmaps, so this option is disabled by default.

Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
Co-authored-by: landervr <31851431+CpnWaffle@users.noreply.github.com>
2025-01-07 18:44:59 +01:00
cb460ad421 Add support for colored shadows in LightmapGI 2025-01-06 23:40:18 +01:00
751d3d5852 Fix lightmapper penumbra computation 2024-12-30 16:30:59 +01:00
3cc5f6e346 Remove leftover print in lightmapper_rd.cpp 2024-12-23 21:14:14 +01:00
a3525bc015 Add transparency support for LightmapGI
Co-authored-by: Guerro323 <kaltobattle@gmail.com>
2024-12-18 19:36:16 +01:00
189c8eb671 Implement shadowmasks for LightmapGI
Co-authored-by: dearthdev <nathandearthdev@gmail.com>
2024-12-12 11:00:28 +01:00
6d5ac8f7ef Resolve load and store ops automatically for render passes for discardable textures. 2024-11-25 11:27:48 -03:00
dcb59f0e7e Merge pull request #99548 from Repiteo/style/clang-format-19-options
Style: Add 19.1.0 LLVM options to `.clang-format`
2024-11-22 14:54:29 -06:00
e8a4b45ce4 Style: Add 19.1.0 LLVM options to .clang-format 2024-11-22 09:24:32 -06:00
5bca028e2b Add lightmap bake cancelling 2024-11-21 21:31:02 +02:00
a4c1804cab Merge pull request #97483 from akien-mga/clang-format-19.1.0
CI: Update `clang-format` pre-commit hook to 19.1.0
2024-09-26 12:46:04 +02:00
c92a6c7e27 CI: Update clang-format pre-commit hook to 19.1.0 2024-09-26 11:46:12 +02:00
9f9ee0c813 SCons: Add unobtrusive type hints in SCons files 2024-09-25 09:34:35 -05:00
a89f4fa5a9 LightmapGI: Pack L1 SH coefficients for directional lightmaps 2024-09-05 22:46:58 +02:00
a7a245de92 Metal: enable for betsy and lightmapper modules
To support this, the rendering_context_driver_metal.h header was updated
to recognise when it is included in non-Objective-C source files.
2024-08-31 08:29:07 +10:00
e98aaf1caa Merge pull request #94477 from RedMser/typos-batch-1
Fix various typos
2024-08-28 00:12:12 +02:00
68d188d521 Merge pull request #95888 from clayjohn/Lightmap-SH-coefficients
Use correct lightmap coefficients to ensure that the directional lightmap mode looks correct
2024-08-25 20:18:18 +02:00
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
f4ccba7508 Use correct lightmap coefficients to ensure that the directional lightmap mode looks correct
Also remove the metallic option from directional lightmap as it is guaranteed to return negative numbers in many cases
2024-08-21 10:24:32 -07:00
1521e49c23 Antialias direct light samples in LightmapperRD
Additionally use Vogel disk to enhance soft shadow quality.
2024-08-19 17:54:55 -07:00
f9258ff928 Fix typos 2024-07-17 18:53:03 +02:00
60a255a0d0 Lightmapper: Prevent infinite loop when blitting lightmaps into an atlas 2024-07-13 13:10:04 +02:00
14877d1f99 Lightmapper: Ensure the atlas is big enough to fit padded UV maps 2024-07-11 23:16:31 +02:00
d06bce3002 Fix lightmapper seam blending 2024-05-15 19:30:14 +04:00
e7bd1b0673 Add denoiser range property for LightmapGI 2024-05-15 08:26:04 +02:00
f1b758022a LightmapGI: Fix seam blending with directional lightmaps 2024-04-18 14:21:29 +02:00
79ba22a73f Use Vector* component-wise min/max/clamp functions where applicable 2024-03-20 13:47:42 +01:00
73eff10c76 Finish splitting functionality of the Vulkan and D3D12 backends into RenderingDeviceDriver. 2024-02-12 10:02:18 -03:00
684752e75b Replace error checks against size with is_empty 2024-02-09 12:50:15 +01:00
cbc929edf0 Do not use a linear sampler on lightmapper when retrieving grid data. 2024-01-26 11:36:21 -03:00