summaryrefslogtreecommitdiffstats
path: root/servers/rendering/renderer_rd/renderer_scene_render_rd.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Minor fixes to shadow atlases:jfons2022-01-241-9/+13
| | | | | | * Erase shadow owner *before* setting it to RID(). * Add default texture in shadow atlas debug view to avoid error spam when no atlas is present. * Fix typo.
* Add nodiscard to core math classes to catch c++ errors.lawnjelly2022-01-201-2/+2
| | | | A common source of errors is to call functions (such as round()) expecting them to work in place, but them actually being designed only to return the processed value. Not using the return value in this case in indicative of a bug, and can be flagged as a warning by using the [[nodiscard]] attribute.
* Merge pull request #54489 from briansemrau/texture-delete-updateRémi Verschelde2022-01-191-1/+0
|\
| * Fix materials not updating when texture replaced/deletedBrian Semrau2021-11-011-1/+0
| |
* | Merge pull request #56761 from Calinou/sdfgi-allow-any-number-of-cascadesRémi Verschelde2022-01-181-2/+2
|\ \
| * | Allow using between 1 and 8 cascades for SDFGIHugo Locurcio2022-01-171-2/+2
| | | | | | | | | | | | | | | | | | This provides more flexibility between performance and quality adjustments, especially when using SDFGI for small-scale levels (which can be useful for procedurally generated scenes).
* | | Fix volumetric fog memory leak on resizeclayjohn2022-01-171-0/+3
|/ /
* | New OpenGL batching canvas rendererclayjohn2022-01-111-5/+5
| |
* | Use fill() to fill an entire image instead of setting pixels individually.Anilforextra2022-01-081-5/+1
| |
* | Merge pull request #56220 from ↵JFonS2022-01-051-23/+56
|\ \ | | | | | | | | | | | | williamd67/GPULightmapper-implement-sky-ambient-light GPULightmapper: react on sky ambient properties
| * | GPULightmapper: react on sky ambient propertiesWilliam Deurwaarder2021-12-241-23/+56
| | | | | | | | | | | | | | | The panorama texture creation, used by GPULightmapper, has been adjusted to also take the sky ambient properties into account.
* | | Merge pull request #56305 from Calinou/rename-lod-thresholdRémi Verschelde2022-01-041-9/+9
|\ \ \
| * | | Rename Lod Threshold to Mesh Lod ThresholdHugo Locurcio2021-12-291-9/+9
| |/ / | | | | | | | | | | | | This makes it more obvious that the setting only affects mesh LOD, not manual (H)LOD achieved using visibility ranges.
* | | Merge pull request #51206 from clayjohn/Vulkan-ASSGIRémi Verschelde2022-01-041-73/+330
|\ \ \
| * | | Added SSIL post processing effectclayjohn2021-11-061-73/+330
| | |/ | |/|
* | | Update copyright statements to 2022Rémi Verschelde2022-01-031-2/+2
| |/ |/| | | | | Happy new year to the wonderful Godot community!
* | Merge pull request #43181 from nathanfranke/string-emptyRémi Verschelde2021-12-101-1/+1
|\ \ | | | | | | Replace String comparisons with "", String() to is_empty()
| * | Replace String comparisons with "", String() to is_empty()Nathan Franke2021-12-091-1/+1
| | | | | | | | | | | | | | | | | | Also: - Adds two stress tests to test_string.h - Changes to .empty() on std::strings
* | | Fix volumetric fog in combination with spotlightsHendrik Brucker2021-12-081-2/+2
|/ /
* | Merge pull request #51679 from Je06jm/fsrRémi Verschelde2021-11-241-51/+107
|\ \ | | | | | | AMD FidelityFX Super Resolution
| * | Implemented AMD's FSR as a computer shader for upscaling 3D scenesJe06jm2021-11-231-51/+107
| | |
* | | [macOS / iOS] Use storage buffers instead of unsupported images for the ↵bruvzg2021-11-241-0/+37
|/ / | | | | | | volumetric fog on MoltenVK.
* | Fix default_texture_param in shader pipeline to support uniform arraysYuri Roubinsky2021-11-121-3/+12
| |
* | Implement CameraEffects override_exposureDominic-ATOR2021-11-081-7/+16
|/
* Merge pull request #54403 from briansemrau/fix-small-fogvolumeRémi Verschelde2021-10-311-0/+4
|\ | | | | FogVolume don't dispatch compute with zero-dimension groups
| * Disallow compute dispatch with zero dimensions.Brian Semrau2021-10-301-0/+4
| |
* | Fix error spammed to output if `FogVolume` is setted to sceneYuri Roubinsky2021-10-291-1/+1
|/
* Fix crash when opening a converted `FogMaterial`Yuri Roubinsky2021-10-291-2/+2
|
* Addition of FogVolumes, FogShaders, FogMaterial, and overhaul of VolumetricFogclayjohn2021-10-281-58/+659
| | | | Co-authored-by: Brian Semrau <brian.semrau@gmail.com>
* Add Soft Very Low shadow quality mode for 3DHugo Locurcio2021-10-211-2/+12
| | | | | | | This can be used to improve 3D shadow rendering quality at little performance cost. Unlike the existing Hard setting which is limited to variable shadow blur only, it works with both fixed blur and variable blur.
* Merge pull request #53790 from briansemrau/remove-distant-shadowy-voidRémi Verschelde2021-10-191-1/+1
|\
| * Fix several issues with directional shadowsBrian Semrau2021-10-141-1/+1
| | | | | | | | | | | | - Internally disable blend splits in orthogonal directional shadow mode - Fix soft shadows ignoring fade and blend_splits - Fix soft shadow edge stability
* | Swap args of Plane(point, normal) constructormennomax2021-10-151-3/+3
|/ | | | Now (normal, point)
* Remove unimplemented `Environment.ambient_light_occlusion_color` propertyHugo Locurcio2021-10-071-8/+2
| | | | | | | This property was intended to provide a way to have SSAO or VoxelGI ambient occlusion with a color other than black. However, it was dropped during the Vulkan renderer development due to the performance overhead it caused when the feature wasn't used.
* Use range iterators for `Map`Lightning_A2021-09-301-4/+4
|
* Rename RID's `getornull()` to `get_or_null()`Hugo Locurcio2021-09-291-153/+153
|
* Fix access to render target texture for XR interfacesBastiaan Olij2021-09-281-0/+7
|
* Construct values only when necessary.Anilforextra2021-09-251-10/+4
|
* Construct values only when necessary.Anilforextra2021-09-231-1/+1
|
* Optionally scale 3D render contentBastiaan Olij2021-08-261-4/+6
|
* Scale color output in the mobile renderer to provide HDR supportBastiaan Olij2021-08-231-0/+6
|
* Improvements to SpotLight3D and OmniLight3D's shadowsjfons2021-08-191-75/+173
| | | | | | | | | | | | | | | | | OmniLight3D: * Fixed lack of precision in cube map mode by scaling the projection's znear. * Fixed aliasing issues by making the paraboloids use two square regions instead of two half squares. * Fixed shadowmap atlas bleeding by adding padding. * Fixed sihadow blur's inconsistent radius and unclamped sampling. SpotLight3D: * Fixed lack of precision by scaling the projection's znear. * Fixed normal biasing. Both: * Tweaked biasing to make sure it works out of the box in most situations.
* Fixes to mobile rendererreduz2021-08-171-3/+5
| | | | | | * Make sure shaders are named, to aid in debug in case of failure * SceneRenderRD was being wrongly initialized (virtual functions being called when derivative class not initialized). * Fixed some bugs resulting on the above being corrected.
* Fix read from screen and depth textureBastiaan Olij2021-08-151-0/+103
|
* Merge pull request #50998 from BastiaanOlij/single_bokeh_dof_rasterRémi Verschelde2021-08-141-3/+73
|\ | | | | Rewrote raster DOF shader to using BOKEH
| * Implemented raster versions of bokeh shaders to replace broken gaussian ↵Bastiaan Olij2021-08-131-3/+73
| | | | | | | | implementation
* | Merge pull request #51025 from reduz/fix-directional-shadow-biasRémi Verschelde2021-08-131-7/+3
|\ \ | |/ |/| Fix directional shadow bias
| * Fix directional shadow biasreduz2021-07-291-7/+3
| | | | | | | | | | | | | | | | | | * Simplified code a lot, bias based on normalized cascade size. * Lets scale cascades, max distance, etc. without creating acne. * Fixed normal biasing in directional shadows. I removed normal biasing in both omni and spot shadows, since the technique can't be easily implemented there. Will need to be replaced by something else.
* | Fixes and optimizations to mobile rendererreduz2021-08-101-1/+0
| | | | | | | | | | | | | | * Only apply final actions to attachments used in the last pass. * Fixes to draw list final action (was using continue instead of read/drop). * Profiling regions inside draw lists now properly throw errors. * Ability to enable gpu profile printing from project settings. (used to debug).
* | Use subpasses to do 3D rendering and resolve in mobile rendererBastiaan Olij2021-08-061-22/+104
| |