Commit Graph

129 Commits (cb1569345a6f17da08241e645ab03cb2e1b78d2f)

Author SHA1 Message Date
Aaron Franke 9fbf5808a0
Rename server "free" functions to "free_rid" to match exposed API 2025-09-30 16:52:25 +07:00
A Thousand Ships f11aff3841
Editor: Restructure editor code
Moving various editor files into sub folders to reduce clutter
2025-07-04 18:18:22 +07:00
Meowcat285 b16b3ea383
Fix buffer size calculations in lightmapper_rd.cpp to account for element sizes 2025-06-21 21:20:56 +07:00
Thaddeus Crews 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 +07:00
Lukas Tenbrink 2b36c79f7b Use `Span<uint8_t>` in `RenderingDevice` allocation APIs to avoid intermediary arrays on calls. 2025-06-18 12:31:48 +07:00
Rémi Verschelde e30acd2be8
SCons: Enable `lightmapper` and `xatlas_unwrap` modules on Android and iOS editors
Fixes #94297.
Fixes #107398.
2025-06-17 16:48:19 +07:00
Rémi Verschelde 09ed9d4a93
Merge pull request #107254 from passivestar/shadow-unleak
Fix LightmapGI shadow leaks
2025-06-14 00:00:12 +07:00
Rémi Verschelde 36d7a87cc8
Merge pull request #107168 from Rudolph-B/Issue-102300
Fix SH lightmap coefficients for direct lights
2025-06-09 00:44:59 +07:00
passivestar 219035c5ea Fix LightmapGI shadow leaks 2025-06-08 20:13:12 +07:00
Rudolph Bester 9b00031886 Fix SH lightmap coefficients for direct lights 2025-06-05 20:38:13 +07:00
BlueCube3310 6434c3d2c4 LightmapGI: Search for shadowmask light index only after sorting the lights 2025-06-05 15:55:48 +07:00
BlueCube3310 5640ddd0a5 Scene shader: Improve and document SH evaluation for light probes 2025-04-19 15:08:02 +07:00
Yufeng Ying 4f4031a675 Replace size() == 0 with is_empty(). 2025-04-02 19:18:43 +07:00
Thaddeus Crews 324512e11c
Style: Replace header guards with `#pragma once` 2025-03-07 17:33:47 +07:00
BlueCube3310 7ed64ebd9a Lightmapper: Expose the JNLM denoiser region size in the project settings 2025-02-13 12:00:51 +07:00
Hugo Locurcio 0c4834b20f Decrease default Max Rays per Pass setting to 4 to fix some lightmapping crashes 2025-02-06 14:36:23 +07:00
Rudolph Bester 9cb317c7c0 Fix over saturated static colored lights 2025-02-04 19:45:36 +07:00
clayjohn 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 +07:00
Rémi Verschelde 709f2e1a5d Merge pull request #100765 from Geometror/lightmapgi-add-downsampling
Add a supersampling option to LightmapGI
2025-01-07 23:17:39 +07:00
Hendrik Brucker 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 +07:00
Hendrik Brucker cb460ad421 Add support for colored shadows in LightmapGI 2025-01-06 23:40:18 +07:00
Hendrik Brucker 751d3d5852 Fix lightmapper penumbra computation 2024-12-30 16:30:59 +07:00
Hendrik Brucker 3cc5f6e346 Remove leftover print in lightmapper_rd.cpp 2024-12-23 21:14:14 +07:00
Hendrik Brucker a3525bc015 Add transparency support for LightmapGI
Co-authored-by: Guerro323 <kaltobattle@gmail.com>
2024-12-18 19:36:16 +07:00
BlueCube3310 189c8eb671 Implement shadowmasks for LightmapGI
Co-authored-by: dearthdev <nathandearthdev@gmail.com>
2024-12-12 11:00:28 +07:00
Dario 6d5ac8f7ef Resolve load and store ops automatically for render passes for discardable textures. 2024-11-25 11:27:48 +07:00
Thaddeus Crews 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 +07:00
Thaddeus Crews e8a4b45ce4
Style: Add 19.1.0 LLVM options to `.clang-format` 2024-11-22 09:24:32 +07:00
Bad Sector 5bca028e2b Add lightmap bake cancelling 2024-11-21 21:31:02 +07:00
Rémi Verschelde 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 +07:00
Rémi Verschelde c92a6c7e27
CI: Update `clang-format` pre-commit hook to 19.1.0 2024-09-26 11:46:12 +07:00
Thaddeus Crews 9f9ee0c813
SCons: Add unobtrusive type hints in SCons files 2024-09-25 09:34:35 +07:00
BlueCube3310 a89f4fa5a9 LightmapGI: Pack L1 SH coefficients for directional lightmaps 2024-09-05 22:46:58 +07:00
Stuart Carnie 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 +07:00
Rémi Verschelde e98aaf1caa
Merge pull request #94477 from RedMser/typos-batch-1
Fix various typos
2024-08-28 00:12:12 +07:00
Rémi Verschelde 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 +07: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 +07:00
clayjohn 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
clayjohn 1521e49c23 Antialias direct light samples in LightmapperRD
Additionally use Vogel disk to enhance soft shadow quality.
2024-08-19 17:54:55 +07:00
RedMser f9258ff928 Fix typos 2024-07-17 18:53:03 +07:00
BlueCube3310 60a255a0d0 Lightmapper: Prevent infinite loop when blitting lightmaps into an atlas 2024-07-13 13:10:04 +07:00
BlueCube3310 14877d1f99 Lightmapper: Ensure the atlas is big enough to fit padded UV maps 2024-07-11 23:16:31 +07:00
passivestar d06bce3002 Fix lightmapper seam blending 2024-05-15 19:30:14 +07:00
landervr e7bd1b0673 Add denoiser range property for LightmapGI 2024-05-15 08:26:04 +07:00
BlueCube3310 f1b758022a LightmapGI: Fix seam blending with directional lightmaps 2024-04-18 14:21:29 +07:00
A Thousand Ships 79ba22a73f
Use `Vector*` component-wise `min/max/clamp` functions where applicable 2024-03-20 13:47:42 +07:00
Dario 73eff10c76 Finish splitting functionality of the Vulkan and D3D12 backends into RenderingDeviceDriver. 2024-02-12 10:02:18 +07:00
A Thousand Ships 684752e75b
Replace error checks against `size` with `is_empty` 2024-02-09 12:50:15 +07:00
Dario cbc929edf0 Do not use a linear sampler on lightmapper when retrieving grid data. 2024-01-26 11:36:21 +07:00
clayjohn efb1cbaad4 Add GLES3 infrastructure for lightmap baking in the compatibility backend 2024-01-24 17:13:30 +07:00