Age | Commit message (Collapse) | Author |
|
|
|
Allow for vec2/vec4 to be used in reflect and refract
|
|
|
|
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.
|
|
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);
```
|
|
`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.
|
|
Fixes #63909 for now.
This could be improved in the future if we want to properly support S3TC on mobile.
|
|
|
|
|
|
Fade screen-space reflection towards inner margin
|
|
|
|
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.
|
|
- 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>
|
|
|
|
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.
|
|
|
|
|
|
Add `hint_transparent` to use a transparent black placeholder texture
|
|
Fix vector field particle attractor texture sampling
|
|
Keep SdfgiDebug shader's push constant size <= 128
|
|
Fix uniform set creation error due to null RID
|
|
This can be used in shaders to avoid the need to supply a transparent
placeholder texture manually.
|
|
|
|
|
|
|
|
|
|
this commit implements just enough of dummy mesh_storage so collision shapes are still generated in the headless mode
implementation was inspired by rasterizer_dummy.h from Godot3
|
|
Changed storage structs to private
|
|
Tweak default fog settings for better appearance
|
|
Treat specular less than 0.02 as occlusion
|
|
|
|
- Increase the default non-volumetric fog density to 0.01 to make
adjustments more visible.
- Use a less saturated non-volumetric fog color by default
(a mix of the sky and horizon colors of the new default
ProceduralSkyMaterial).
- Set Volumetric Fog Gi Inject to 1.0 by default. Injecting GI results
in more realistic appearance of volumetric fog, at a very low
performance cost.
|
|
This is a very common hack used in almost all PBR renderers to allow removing specular contribution in dielectric materials
|
|
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.
|
|
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.
|
|
|
|
Remove Signal connect binds
|
|
|
|
Remove the optional argument p_binds from `Object::connect` since it was deprecated by Callable.bind().
Changed all uses of it to Callable.bind()
|
|
|
|
Restructure environment in render implementation
|
|
|
|
|
|
The `global_shader_uniform` name is longer, but it makes it much
easier to find the methods when searching in the class reference.
|
|
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.
|
|
|
|
- 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.
|
|
bluenote10/feature/rename_translated_to_translated_local
|
|
|
|
|