Allow all lossless image formats to be used for VRS texture project setting
WebP can also be lossy, but the class reference now warns about the requirement to use a lossless format for the VRS texture to work correctly.
This commit is contained in:
parent
7d9923b2e0
commit
4b13093251
|
@ -2265,7 +2265,20 @@
|
||||||
Set the default Variable Rate Shading (VRS) mode for the main viewport. See [member Viewport.vrs_mode] to change this at runtime, and [enum Viewport.VRSMode] for possible values.
|
Set the default Variable Rate Shading (VRS) mode for the main viewport. See [member Viewport.vrs_mode] to change this at runtime, and [enum Viewport.VRSMode] for possible values.
|
||||||
</member>
|
</member>
|
||||||
<member name="rendering/vrs/texture" type="String" setter="" getter="" default="""">
|
<member name="rendering/vrs/texture" type="String" setter="" getter="" default="""">
|
||||||
If [member rendering/vrs/mode] is set to texture, this is the path to default texture loaded as the VRS image.
|
If [member rendering/vrs/mode] is set to [b]Texture[/b], this is the path to default texture loaded as the VRS image.
|
||||||
|
The texture [i]must[/i] use a lossless compression format so that colors can be matched precisely. The following VRS densities are mapped to various colors, with brighter colors representing a lower level of shading precision:
|
||||||
|
[codeblock]
|
||||||
|
- 1x1 = rgb(0, 0, 0) - #000000
|
||||||
|
- 1x2 = rgb(0, 85, 0) - #005500
|
||||||
|
- 2x1 = rgb(85, 0, 0) - #550000
|
||||||
|
- 2x2 = rgb(85, 85, 0) - #555500
|
||||||
|
- 2x4 = rgb(85, 170, 0) - #55aa00
|
||||||
|
- 4x2 = rgb(170, 85, 0) - #aa5500
|
||||||
|
- 4x4 = rgb(170, 170, 0) - #aaaa00
|
||||||
|
- 4x8 = rgb(170, 255, 0) - #aaff00 - Not supported on most hardware
|
||||||
|
- 8x4 = rgb(255, 170, 0) - #ffaa00 - Not supported on most hardware
|
||||||
|
- 8x8 = rgb(255, 255, 0) - #ffff00 - Not supported on most hardware
|
||||||
|
[/codeblock]
|
||||||
</member>
|
</member>
|
||||||
<member name="threading/worker_pool/low_priority_thread_ratio" type="float" setter="" getter="" default="0.3">
|
<member name="threading/worker_pool/low_priority_thread_ratio" type="float" setter="" getter="" default="0.3">
|
||||||
</member>
|
</member>
|
||||||
|
|
|
@ -343,6 +343,19 @@
|
||||||
</member>
|
</member>
|
||||||
<member name="vrs_texture" type="Texture2D" setter="set_vrs_texture" getter="get_vrs_texture">
|
<member name="vrs_texture" type="Texture2D" setter="set_vrs_texture" getter="get_vrs_texture">
|
||||||
Texture to use when [member vrs_mode] is set to [constant Viewport.VRS_TEXTURE].
|
Texture to use when [member vrs_mode] is set to [constant Viewport.VRS_TEXTURE].
|
||||||
|
The texture [i]must[/i] use a lossless compression format so that colors can be matched precisely. The following VRS densities are mapped to various colors, with brighter colors representing a lower level of shading precision:
|
||||||
|
[codeblock]
|
||||||
|
- 1x1 = rgb(0, 0, 0) - #000000
|
||||||
|
- 1x2 = rgb(0, 85, 0) - #005500
|
||||||
|
- 2x1 = rgb(85, 0, 0) - #550000
|
||||||
|
- 2x2 = rgb(85, 85, 0) - #555500
|
||||||
|
- 2x4 = rgb(85, 170, 0) - #55aa00
|
||||||
|
- 4x2 = rgb(170, 85, 0) - #aa5500
|
||||||
|
- 4x4 = rgb(170, 170, 0) - #aaaa00
|
||||||
|
- 4x8 = rgb(170, 255, 0) - #aaff00 - Not supported on most hardware
|
||||||
|
- 8x4 = rgb(255, 170, 0) - #ffaa00 - Not supported on most hardware
|
||||||
|
- 8x8 = rgb(255, 255, 0) - #ffff00 - Not supported on most hardware
|
||||||
|
[/codeblock]
|
||||||
</member>
|
</member>
|
||||||
<member name="world_2d" type="World2D" setter="set_world_2d" getter="get_world_2d">
|
<member name="world_2d" type="World2D" setter="set_world_2d" getter="get_world_2d">
|
||||||
The custom [World2D] which can be used as 2D environment source.
|
The custom [World2D] which can be used as 2D environment source.
|
||||||
|
|
|
@ -1450,7 +1450,7 @@ SceneTree::SceneTree() {
|
||||||
ProjectSettings::get_singleton()->set_custom_property_info("rendering/vrs/texture",
|
ProjectSettings::get_singleton()->set_custom_property_info("rendering/vrs/texture",
|
||||||
PropertyInfo(Variant::STRING,
|
PropertyInfo(Variant::STRING,
|
||||||
"rendering/vrs/texture",
|
"rendering/vrs/texture",
|
||||||
PROPERTY_HINT_FILE, "*.png"));
|
PROPERTY_HINT_FILE, "*.bmp,*.png,*.tga,*.webp"));
|
||||||
if (vrs_mode == 1 && !vrs_texture_path.is_empty()) {
|
if (vrs_mode == 1 && !vrs_texture_path.is_empty()) {
|
||||||
Ref<Image> vrs_image;
|
Ref<Image> vrs_image;
|
||||||
vrs_image.instantiate();
|
vrs_image.instantiate();
|
||||||
|
|
Loading…
Reference in New Issue