VisualShaderNodeTextureParameter

继承: VisualShaderNodeParameter < VisualShaderNode < Resource < RefCounted < Object

派生: VisualShaderNodeCubemapParameter, VisualShaderNodeTexture2DArrayParameter, VisualShaderNodeTexture2DParameter, VisualShaderNodeTexture3DParameter, VisualShaderNodeTextureParameterTriplanar

在可视着色器图中执行统一纹理查找。

描述

对作为着色器统一提供的纹理执行查找操作。

属性


枚举

enum TextureType: 🔗

TextureType TYPE_DATA = 0

uniform 声明中不添加任何提示。

TextureType TYPE_COLOR = 1

source_color作为提示添加到 uniform 声明中,以进行正确的 sRGB 到线性转换。

TextureType TYPE_NORMAL_MAP = 2

hint_normal作为提示添加到 uniform 声明中,该声明在内部将纹理转换为法线贴图。

TextureType TYPE_ANISOTROPY = 3

hint_anisotropy作为提示添加到 uniform 声明以用于流程图。

TextureType TYPE_MAX = 4

表示TextureType枚举的大小。


enum ColorDefault: 🔗

ColorDefault COLOR_DEFAULT_WHITE = 0

默认为完全不透明的白色。

ColorDefault COLOR_DEFAULT_BLACK = 1

默认为完全不透明的黑色。

ColorDefault COLOR_DEFAULT_TRANSPARENT = 2

默认为全透明黑色。

ColorDefault COLOR_DEFAULT_MAX = 3

表示ColorDefault枚举的大小。


enum TextureFilter: 🔗

TextureFilter FILTER_DEFAULT = 0

使用此着色器附加到的节点确定的过滤器对纹理进行采样。

TextureFilter FILTER_NEAREST = 1

纹理过滤器仅从最近的像素读取。这使得纹理从近距离看是像素化的,从远处看是颗粒状的(由于mipmap没有被采样)。

TextureFilter FILTER_LINEAR = 2

纹理过滤器在最近的4个像素之间混合。这使得纹理从近距离看很光滑,从远处看很颗粒状(由于mipmap没有被采样)。

TextureFilter FILTER_NEAREST_MIPMAP = 3

纹理过滤器从最近的像素读取并在最近的2个mipmap之间混合(或者使用最近的mipmap,如果ProjectSettings.rendering/textures/default_filters/use_nearest_mipmap_filter)。这使得纹理从近距离看是像素化的,从远处看是平滑的。

将其用于可以以低比例查看的非像素艺术纹理,因为mipmap对于平滑小于屏幕像素的像素很重要。

TextureFilter FILTER_LINEAR_MIPMAP = 4

纹理过滤器在最近的4个像素和最近的2个mipmap之间混合(或者使用最近的mipmap,如果ProjectSettings.rendering/textures/default_filters/use_nearest_mipmap_filter)。这使得纹理近距离看起来很光滑,远距离看起来很光滑。

将其用于可以以低比例查看的非像素艺术纹理,因为mipmap对于平滑小于屏幕像素的像素很重要。

TextureFilter FILTER_NEAREST_MIPMAP_ANISOTROPIC = 5

纹理过滤器从最近的像素读取,并根据表面和摄像机视图之间的角度在2个mipmap之间混合(或者使用最近的mipmap,如果ProjectSettings.rendering/textures/default_filters/use_nearest_mipmap_filter)。这使得纹理从近距离看是像素化的,从远处看是平滑的。各向异性过滤提高了几乎与摄像机一致的表面的纹理质量,但速度稍慢。各向异性过滤级别可以通过调整ProjectSettings.rendering/textures/default_filters/anisotropic_filtering_level来改变。

注意:这个纹理过滤器在2D项目中很少有用。FILTER_NEAREST_MIPMAP在这种情况下通常更合适。

TextureFilter FILTER_LINEAR_MIPMAP_ANISOTROPIC = 6

纹理滤镜在最近的4个像素之间混合,并在2个mipmap之间混合(或者使用最近的mipmap,如果ProjectSettings.rendering/textures/default_filters/use_nearest_mipmap_filter)基于表面和摄像机视图之间的角度。这使得纹理从近距离看起来平滑,从远处看平滑。各向异性过滤提高了几乎与摄像机一致的表面上的纹理质量,但速度稍慢。各向异性过滤级别可以通过调整ProjectSettings.rendering/textures/default_filters/anisotropic_filtering_level来改变。

注意:这个纹理过滤器在2D项目中很少有用。FILTER_LINEAR_MIPMAP在这种情况下通常更合适。

TextureFilter FILTER_MAX = 7

表示TextureFilter枚举的大小。


enum TextureRepeat: 🔗

TextureRepeat REPEAT_DEFAULT = 0

使用此着色器附加到的节点确定的重复模式对纹理进行采样。

TextureRepeat REPEAT_ENABLED = 1

纹理将正常重复。

TextureRepeat REPEAT_DISABLED = 2

纹理不会重复。

TextureRepeat REPEAT_MAX = 3

表示TextureRepeat枚举的大小。


enum TextureSource: 🔗

TextureSource SOURCE_NONE = 0

着色器中未指定纹理源。

TextureSource SOURCE_SCREEN = 1

纹理源是屏幕纹理,它捕获此帧绘制的所有不透明对象。

TextureSource SOURCE_DEPTH = 2

纹理源是来自深度前置的深度纹理。

TextureSource SOURCE_NORMAL_ROUGHNESS = 3

纹理源是来自深度前置的法向粗糙度缓冲区。

TextureSource SOURCE_MAX = 4

表示TextureSource枚举的大小。


属性说明

ColorDefault color_default = 0 🔗

如果没有uniform分配纹理,则设置默认颜色。


TextureFilter texture_filter = 0 🔗

设置纹理过滤模式。有关选项,请参阅TextureFilter


TextureRepeat texture_repeat = 0 🔗

设置纹理重复模式。有关选项,请参阅TextureRepeat


TextureSource texture_source = 0 🔗

设置纹理源模式。用于从屏幕、深度或normal_roughness纹理中读取。有关选项,请参阅TextureSource


TextureType texture_type = 0 🔗

定义源纹理提供的数据类型。有关选项,请参阅TextureType