summaryrefslogtreecommitdiff
path: root/servers/rendering/renderer_rd
AgeCommit message (Collapse)Author
2022-08-11Merge pull request #64225 from ↵Hugo Locurcio
Calinou/3d-scaling-bilinear-use-negative-mipmap-bias
2022-08-10Detect if VRS supported before creating default VRS textureclayjohn
2022-08-10Use negative mipmap LOD bias for sub-native bilinear 3D scaleHugo Locurcio
This provides a benefit similar to FSR 1.0 (greater texture sharpness at the cost of some graininess at sub-native resolution scales), but without the added performance cost of FSR 1.0.
2022-08-09Fix resource leaks in VoxelGIBastiaan Olij
2022-08-08Fix macOS and iOS defines in the rendering code.bruvzg
2022-08-08Merge pull request #62547 from clayjohn/ref_vec_pbrRémi Verschelde
2022-08-07Add a shadow opacity property to Light3DHugo Locurcio
This can be used to make shadows translucent for a specific light. The light distance fade system also uses this to smoothly fade the shadow when the light fade transition distance is greater than 0.
2022-08-05Add a Framebuffer cacheJuan Linietsky
Adds a FramebufferCache singletion that operates the same way as UniformSetCache. Allows creating framebuffers on the fly (and keep them cached if re-requested) such as: ```C++ RID fb = FramebufferCache::get_singleton()->get_cache(texture1,texture2); ```
2022-08-04Rename shader parameter uniform setter/getter methods for consistencyHugo Locurcio
`shader_uniform` is now consistenly used across both per-shader and per-instance shader uniform methods. This makes methods easier to find in the class reference when looking for them.
2022-08-04Force disable S3TC support on Android/iOS since we don't handle itRémi Verschelde
Fixes #63909 for now. This could be improved in the future if we want to properly support S3TC on mobile.
2022-08-03Merge pull request #61851 from Calinou/particles-default-global-coordinatesRémi Verschelde
2022-08-03Merge pull request #51531 from Calinou/decal-projector-add-nearest-mipmap-anisoRémi Verschelde
2022-08-03Add Nearest Mipmap Anisotropic filter option to decals and projectorsHugo Locurcio
This is consistent with the BaseMaterial3D filtering options. It can be used for high-quality pixel art textures that remain sharp when viewed at oblique angles, but prevents them from becoming grainy thanks to mipmaps.
2022-08-03Fade screen-space reflection towards inner marginHugo Locurcio
- Fade reflection towards inner margin and clip it at screen edges instead of external margin. - Round edges of the fade margin if both are being cut off to prevent sharp corners. Co-authored-by: puchik <puchik@users.noreply.github.com>
2022-08-02Use global coordinates for particles by defaultHugo Locurcio
Particles won't move or rotate anymore with the node (or its parents) by default. This new default behavior is generally more suited to most use cases. Local coordinates can still be enabled on a per-node basis. This affects both 2D and 3D particles, and both CPU and GPU-based particles.
2022-08-02Add spatial built-ins (camera-pos, object-pos, camera-eye etc.)Patrick Exner
2022-08-02Merge pull request #51672 from Calinou/shader-add-hint-transparent-textureRémi Verschelde
Add `hint_transparent` to use a transparent black placeholder texture
2022-08-02Merge pull request #63627 from and-rad/vector-field-attractor-fixRémi Verschelde
Fix vector field particle attractor texture sampling
2022-08-02Merge pull request #63589 from RandomShaper/sdfgi_debug_pcRémi Verschelde
Keep SdfgiDebug shader's push constant size <= 128
2022-08-01Add `hint_transparent` to use a transparent black placeholder textureHugo Locurcio
This can be used in shaders to avoid the need to supply a transparent placeholder texture manually.
2022-08-01Fix uniform set creation error due to null RIDPedro J. Estébanez
2022-08-01Merge pull request #63766 from Chaosus/fix_shader_instance_uniformYuri Rubinsky
2022-08-01Fix passing values to the instance uniforms in the shaderYuri Rubinsky
2022-08-01Merge pull request #63754 from BastiaanOlij/storage_struct_privateRémi Verschelde
Changed storage structs to private
2022-08-01Merge pull request #63587 from clayjohn/specular-occlusionRémi Verschelde
Treat specular less than 0.02 as occlusion
2022-08-01Changed storage structs to privateBastiaan Olij
2022-07-31Treat specular less than 0.02 as occlusionclayjohn
This is a very common hack used in almost all PBR renderers to allow removing specular contribution in dielectric materials
2022-07-31Tweak VoxelGI defaults for better qualityHugo Locurcio
Overall brightness is similar to the previous settings, but lighting now fades off more naturally and reflections feature indirect lighting. Performance is identical. - Enable Use Two Bounces by default. - Decrease Propagation to 0.5 to compensate for the second bounce.
2022-07-30Make Decal's `modulate` property affect emission color as wellHugo Locurcio
This can be used to recolor special effects such as fake area fog without having to create separate textures for each color. - Improve the Decal class documentation.
2022-07-29fix 'Comparison result is always the same' warningsLinuxUserGD
2022-07-29Merge pull request #63595 from reduz/remove-signal-connect-bindsRémi Verschelde
Remove Signal connect binds
2022-07-29Fix vector field particle attractor texture samplingAndreas Raddau
2022-07-29Remove Signal connect bindsJuan Linietsky
Remove the optional argument p_binds from `Object::connect` since it was deprecated by Callable.bind(). Changed all uses of it to Callable.bind()
2022-07-29Keep SdfgiDebug shader's push constant size <= 128Pedro J. Estébanez
2022-07-29Merge pull request #63527 from BastiaanOlij/rework_environmentRémi Verschelde
Restructure environment in render implementation
2022-07-29Restructure environment in render implementationBastiaan Olij
2022-07-28Merge pull request #59840 from Calinou/renderingserver-global-uniform-renameRémi Verschelde
2022-07-28Rename RenderingServer global shader uniform methods to be more explicitHugo Locurcio
The `global_shader_uniform` name is longer, but it makes it much easier to find the methods when searching in the class reference.
2022-07-28Allow changing mipmap LOD bias when FSR 1.0 scaling is not usedHugo Locurcio
Mipmap LOD bias can be useful to improve the appearance of distant textures without increasing anisotropic filtering (or in situations where anisotropic filtering is not effective). `fsr_mipmap_bias` was renamed to `texture_mipmap_bias` accordingly. The property hint now allows for greater precision as well.
2022-07-28Merge pull request #63571 from RandomShaper/conservative_validate_vrsRémi Verschelde
2022-07-28Improve handling of the format of the VRS imagePedro J. Estébanez
- Validate format conservatively. (This is to have VRS images created regardless whether VRS attachments are supported, which avoids errors in places where the code assumes such images were created on low-spec GPUs.) - Create a non-layered default VRS image, which is what Vulkan (and D3D12, by the way) expect.
2022-07-28Merge pull request #57698 from ↵Rémi Verschelde
bluenote10/feature/rename_translated_to_translated_local
2022-07-27Merge pull request #62362 from clayjohn/VULKAN-haloRémi Verschelde
2022-07-27Merge pull request #58296 from Calinou/decal-distance-fade-tweak-defaultsRémi Verschelde
2022-07-27Merge pull request #63477 from Chaosus/shader_fix_fogRémi Verschelde
2022-07-26Use full size mipmaps for reflections when in high-quality modeclayjohn
2022-07-27Fix `FOG` built-in in spatial/fragment shaderYuri Rubinsky
2022-07-27Change RendererSceneRender::GeometryInstance so more code is shared among ↵Bastiaan Olij
renderers
2022-07-27Tweak Decal distance fade defaults and add property hintsHugo Locurcio
The new default values are more usable in real world scenarios when smooth fading of distant decals is desired for performance reasons. The Decal distance fade property hints were adjusted based on the GeometryInstance3D visibility range fade property hints. `or_greater` was also added to allow specifying larger values if needed.
2022-07-26Merge pull request #62972 from Chaosus/shader_groupsRémi Verschelde
Implement shader uniform groups/subgroups