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 🔗
void set_color_default(value: ColorDefault)
ColorDefault get_color_default()
如果没有uniform分配纹理,则设置默认颜色。
TextureFilter texture_filter = 0 🔗
void set_texture_filter(value: TextureFilter)
TextureFilter get_texture_filter()
设置纹理过滤模式。有关选项,请参阅TextureFilter。
TextureRepeat texture_repeat = 0 🔗
void set_texture_repeat(value: TextureRepeat)
TextureRepeat get_texture_repeat()
设置纹理重复模式。有关选项,请参阅TextureRepeat。
TextureSource texture_source = 0 🔗
void set_texture_source(value: TextureSource)
TextureSource get_texture_source()
设置纹理源模式。用于从屏幕、深度或normal_roughness纹理中读取。有关选项,请参阅TextureSource。
TextureType texture_type = 0 🔗
void set_texture_type(value: TextureType)
TextureType get_texture_type()
定义源纹理提供的数据类型。有关选项,请参阅TextureType。