Merge pull request #58601 from Calinou/material-triplanar-sharpness-clamp-3.x
This commit is contained in:
commit
812caa5f44
2 changed files with 8 additions and 4 deletions
|
@ -366,6 +366,7 @@
|
||||||
</member>
|
</member>
|
||||||
<member name="uv1_triplanar_sharpness" type="float" setter="set_uv1_triplanar_blend_sharpness" getter="get_uv1_triplanar_blend_sharpness">
|
<member name="uv1_triplanar_sharpness" type="float" setter="set_uv1_triplanar_blend_sharpness" getter="get_uv1_triplanar_blend_sharpness">
|
||||||
A lower number blends the texture more softly while a higher number blends the texture more sharply.
|
A lower number blends the texture more softly while a higher number blends the texture more sharply.
|
||||||
|
[b]Note:[/b] [member uv1_triplanar_sharpness] is clamped between [code]0.0[/code] and [code]150.0[/code] (inclusive) as values outside that range can look broken depending on the mesh.
|
||||||
</member>
|
</member>
|
||||||
<member name="uv2_offset" type="Vector3" setter="set_uv2_offset" getter="get_uv2_offset" default="Vector3( 0, 0, 0 )">
|
<member name="uv2_offset" type="Vector3" setter="set_uv2_offset" getter="get_uv2_offset" default="Vector3( 0, 0, 0 )">
|
||||||
How much to offset the [code]UV2[/code] coordinates. This amount will be added to [code]UV2[/code] in the vertex function. This can be used to offset a texture.
|
How much to offset the [code]UV2[/code] coordinates. This amount will be added to [code]UV2[/code] in the vertex function. This can be used to offset a texture.
|
||||||
|
@ -378,6 +379,7 @@
|
||||||
</member>
|
</member>
|
||||||
<member name="uv2_triplanar_sharpness" type="float" setter="set_uv2_triplanar_blend_sharpness" getter="get_uv2_triplanar_blend_sharpness">
|
<member name="uv2_triplanar_sharpness" type="float" setter="set_uv2_triplanar_blend_sharpness" getter="get_uv2_triplanar_blend_sharpness">
|
||||||
A lower number blends the texture more softly while a higher number blends the texture more sharply.
|
A lower number blends the texture more softly while a higher number blends the texture more sharply.
|
||||||
|
[b]Note:[/b] [member uv2_triplanar_sharpness] is clamped between [code]0.0[/code] and [code]150.0[/code] (inclusive) as values outside that range can look broken depending on the mesh.
|
||||||
</member>
|
</member>
|
||||||
<member name="vertex_color_is_srgb" type="bool" setter="set_flag" getter="get_flag" default="false">
|
<member name="vertex_color_is_srgb" type="bool" setter="set_flag" getter="get_flag" default="false">
|
||||||
If [code]true[/code], the model's vertex colors are processed as sRGB mode.
|
If [code]true[/code], the model's vertex colors are processed as sRGB mode.
|
||||||
|
|
|
@ -1534,8 +1534,9 @@ Vector3 SpatialMaterial::get_uv1_offset() const {
|
||||||
}
|
}
|
||||||
|
|
||||||
void SpatialMaterial::set_uv1_triplanar_blend_sharpness(float p_sharpness) {
|
void SpatialMaterial::set_uv1_triplanar_blend_sharpness(float p_sharpness) {
|
||||||
uv1_triplanar_sharpness = p_sharpness;
|
// Negative values or values higher than 150 can result in NaNs, leading to broken rendering.
|
||||||
VS::get_singleton()->material_set_param(_get_material(), shader_names->uv1_blend_sharpness, p_sharpness);
|
uv1_triplanar_sharpness = CLAMP(p_sharpness, 0.0, 150.0);
|
||||||
|
VS::get_singleton()->material_set_param(_get_material(), shader_names->uv1_blend_sharpness, uv1_triplanar_sharpness);
|
||||||
}
|
}
|
||||||
|
|
||||||
float SpatialMaterial::get_uv1_triplanar_blend_sharpness() const {
|
float SpatialMaterial::get_uv1_triplanar_blend_sharpness() const {
|
||||||
|
@ -1561,8 +1562,9 @@ Vector3 SpatialMaterial::get_uv2_offset() const {
|
||||||
}
|
}
|
||||||
|
|
||||||
void SpatialMaterial::set_uv2_triplanar_blend_sharpness(float p_sharpness) {
|
void SpatialMaterial::set_uv2_triplanar_blend_sharpness(float p_sharpness) {
|
||||||
uv2_triplanar_sharpness = p_sharpness;
|
// Negative values or values higher than 150 can result in NaNs, leading to broken rendering.
|
||||||
VS::get_singleton()->material_set_param(_get_material(), shader_names->uv2_blend_sharpness, p_sharpness);
|
uv2_triplanar_sharpness = CLAMP(p_sharpness, 0.0, 150.0);
|
||||||
|
VS::get_singleton()->material_set_param(_get_material(), shader_names->uv2_blend_sharpness, uv2_triplanar_sharpness);
|
||||||
}
|
}
|
||||||
|
|
||||||
float SpatialMaterial::get_uv2_triplanar_blend_sharpness() const {
|
float SpatialMaterial::get_uv2_triplanar_blend_sharpness() const {
|
||||||
|
|
Loading…
Reference in a new issue