summaryrefslogtreecommitdiffstats
path: root/servers/rendering/renderer_rd/renderer_storage_rd.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Split dependency logicBastiaan Olij2022-06-281-419/+0
| | | | | | Split FOG Split visibility notifier Final cleanup of storage classes
* Split GI effects and fix stereoscopic rendering of GI effectsBastiaan Olij2022-06-221-338/+6
|
* Ensure has_os_features is safely called as it can't be called from within ↵Bastiaan Olij2022-06-011-0/+4
| | | | the construct of RenderingServerDefault on which it relies
* Add Cone and Cylinder shapes to FogVolumeHugo Locurcio2022-05-251-0/+2
| | | | | | This complements the existing Ellipsoid and Box local fog shapes. This can be used to represent a light cone coming from a SpotLight.
* Add `get_video_adapter_api_version()` to RenderingServerHugo Locurcio2022-05-031-0/+4
| | | | | | This method can be used to get the graphics API version currently in use (such as Vulkan). It can be used by projects for troubleshooting or statistical purposes.
* Moved particles into ParticlesStorageBastiaan Olij2022-04-171-2042/+15
|
* Move light, reflection probe and lightmap into LightStorageBastiaan Olij2022-04-171-737/+17
|
* Merge canvas and decal into TextureStorage and add render targetBastiaan Olij2022-04-171-736/+13
|
* Fix some issues found by cppcheck.bruvzg2022-04-061-4/+4
|
* Move storage for Mesh, MeshInstance, MultiMesh and Skeleton into MeshStorageBastiaan Olij2022-04-021-1876/+24
|
* Extract global variable, shader and material storageBastiaan Olij2022-03-311-2340/+28
|
* Extract Decal and Decal atlas from Storage classBastiaan Olij2022-03-211-387/+10
|
* Replace DirectionalLight3D's `use_in_sky_only` with `sky_mode` enumHugo Locurcio2022-03-171-5/+5
| | | | | | | | | | 3 options are available: - Light and Sky (default) - Light Only (new) - Sky Only (equivalent to `use_in_sky_only = true`) Co-authored by: clayjohn <claynjohn@gmail.com>
* Merge pull request #58993 from notSanil/device-limit-exceeded-fixRémi Verschelde2022-03-171-1/+1
|\
| * Fix device limit exceeding for uniform buffernotSanil2022-03-161-1/+1
| |
* | Split dummy renderer classes into separate filesBastiaan Olij2022-03-161-1541/+65
| | | | | | | | Split canvas_texture_storage and texture_storage from render_storage class
* | Change some math macros to constexprkobewi2022-03-091-2/+1
|/ | | | Changes `MAX`, `MIN`, `ABS`, `CLAMP` and `SIGN`.
* Merge pull request #49447 from Calinou/remove-shadow-color-propertyRémi Verschelde2022-03-081-6/+0
|\ | | | | Remove unused `shadow_color` property from Light3D
| * Remove unused `shadow_color` property from Light3DHugo Locurcio2022-03-041-6/+0
| | | | | | | | | | This shadow color property was no longer effective since the shaders were optimized to improve occupancy.
* | Add a UniformSet cachereduz2022-03-061-48/+51
|/ | | | | | | * Changed syntax usage for RD::Uniform to create faster with a single RID * Converted render pass setup to use this in clustered renderer to test. This is the first step into creating a proper uniform set cache system to simplify large parts of the codebase.
* Implement distance fade properties in OmniLight3D and SpotLight3DHugo Locurcio2022-02-251-0/+10
| | | | | | | | | | | | | This can be used to fade lights and their shadows in the distance, similar to Decal nodes. This can bring significant performance improvements, especially for lights with shadows enabled and when using higher-than-default shadow quality settings. While lights can be smoothly faded out over distance, shadows are currently "all or nothing" since per-light shadow color is no longer customizable in the Vulkan renderer. This may result in noticeable pop-in when leaving the shadow cutoff distance, but depending on the scene, it may not always be that noticeable.
* Fix GPUParticles2D emission offset in global coordsfloppyhammer2022-02-221-0/+15
|
* Add Particle Shader Userdatareduz2022-02-151-13/+72
| | | | | * Adds optional vec4 USERDATA1 .. USERDATA6 to particles, allowing to store custom data. * This data is allocated on demand, so shaders that do not use it do not cost more.
* Free surface vertex_buffers after vertex_arrays due dependenciesSaracenOne2022-02-101-3/+3
|
* Optimize and fix backbuffer gaussian blurclayjohn2022-02-051-28/+15
|
* Vectors: Use clear() and has().Anilforextra2022-02-021-1/+1
| | | | | | Use clear() instead of resize(0). Use has() instead of "find(p_val) != -1".
* Merge pull request #54489 from briansemrau/texture-delete-updateRémi Verschelde2022-01-191-14/+6
|\
| * Fix materials not updating when texture replaced/deletedBrian Semrau2021-11-011-14/+6
| |
* | Remove support for PVRTC texture encoding and decodingHugo Locurcio2022-01-141-73/+0
| | | | | | | | | | | | | | On the only platform where PVRTC is supported (iOS), ETC2 generally supersedes PVRTC in every possible way. The increased memory usage is not really a problem thanks to modern iOS' devices processing power being higher than its Android counterparts.
* | Fix various typosluz paz2022-01-131-1/+1
| | | | | | Found via `codespell -q 3 -S ./thirdparty,*.po,./DONORS.md -L ackward,ang,ans,ba,beng,cas,childs,childrens,dof,doubleclick,expct,fave,findn,gird,hist,inh,inout,leapyear,lod,nd,numer,ois,ony,paket,ro,seeked,sinc,switchs,te,uint,varn,vew`
* | New OpenGL batching canvas rendererclayjohn2022-01-111-8/+8
| |
* | Use fill() to fill an entire image instead of setting pixels individually.Anilforextra2022-01-081-18/+3
| |
* | Fix queueing a texture and regular uniform update in RD backend in succession.SaracenOne2022-01-061-3/+3
| |
* | Fix incorrect format and buffer used for bone weights.bruvzg2022-01-051-1/+1
| |
* | Merge pull request #55790 from Calinou/renderingserver-add-device-type-getterRémi Verschelde2022-01-041-0/+5
|\ \ | | | | | | Add `RenderingServer.get_video_adapter_type()` method
| * | Add `RenderingServer.get_video_adapter_type()` methodHugo Locurcio2021-12-101-0/+5
| | | | | | | | | | | | | | | | | | | | | This can be used to distinguish between integrated, dedicated, virtual and software-emulated GPUs. This in turn can be used to automatically adjust graphics settings, or warn users about features that may run slowly on their hardware.
* | | Merge pull request #56305 from Calinou/rename-lod-thresholdRémi Verschelde2022-01-041-4/+4
|\ \ \
| * | | Rename Lod Threshold to Mesh Lod ThresholdHugo Locurcio2021-12-291-4/+4
| | | | | | | | | | | | | | | | | | | | This makes it more obvious that the setting only affects mesh LOD, not manual (H)LOD achieved using visibility ranges.
* | | | Update copyright statements to 2022Rémi Verschelde2022-01-031-2/+2
| | | | | | | | | | | | | | | | Happy new year to the wonderful Godot community!
* | | | Add a shader warning when the uniform buffer limit is exceededYuri Roubinsky2022-01-031-2/+2
| | | |
* | | | Merge pull request #56187 from Chaosus/fix_default_textureRémi Verschelde2022-01-031-3/+6
|\ \ \ \
| * | | | Fix default texture of unassigned sampler with hint_normalYuri Roubinsky2021-12-231-3/+6
| |/ / /
* / / / Fix incorrect updating global uniform bufferYuri Roubinsky2021-12-311-1/+1
|/ / /
* / / Rename `hint_aniso` to `hint_anisotropy` in the shader languageHugo Locurcio2021-12-101-1/+1
|/ / | | | | | | | | The word "anisotropy" is used in full form in BaseMaterial3D's anisotropy-related properties.
* | Replace String comparisons with "", String() to is_empty()Nathan Franke2021-12-091-3/+3
| | | | | | | | | | | | Also: - Adds two stress tests to test_string.h - Changes to .empty() on std::strings
* | Merge pull request #35901 from nathanfranke/pool-byte-array-subarray-exclusiveRémi Verschelde2021-12-071-1/+1
|\ \
| * | PackedByteArray, Array slice end exclusive, rename subarray to sliceNathan Franke2021-11-261-1/+1
| | |
* | | Remove or make verbose some debugging printsHugo Locurcio2021-12-051-1/+0
|/ / | | | | | | | | | | The message about SpatialMaterial conversion was turned into a warning, as it can potentially interfere with porting projects from Godot 3.x (if there's a bug in the conversion code).
* | Fix `TIME` using in custom functions of particle shaderYuri Roubinsky2021-11-261-1/+1
| |
* | Fix uniform array alignment to fix a bugYuri Roubinsky2021-11-251-1/+11
| |