Up to date

This page is up to date for Godot 4.0. If you still find outdated information, please open an issue.

VisualShaderNodeTextureParameter

Inherits: VisualShaderNodeParameter < VisualShaderNode < Resource < RefCounted < Object

Inherited By: VisualShaderNodeCubemapParameter, VisualShaderNodeTexture2DArrayParameter, VisualShaderNodeTexture2DParameter, VisualShaderNodeTexture3DParameter, VisualShaderNodeTextureParameterTriplanar

Performs a uniform texture lookup within the visual shader graph.

Description

Performs a lookup operation on the texture provided as a uniform for the shader.

Properties

ColorDefault

color_default

0

TextureFilter

texture_filter

0

TextureRepeat

texture_repeat

0

TextureSource

texture_source

0

TextureType

texture_type

0


Enumerations

enum TextureType:

TextureType TYPE_DATA = 0

No hints are added to the uniform declaration.

TextureType TYPE_COLOR = 1

Adds source_color as hint to the uniform declaration for proper sRGB to linear conversion.

TextureType TYPE_NORMAL_MAP = 2

Adds hint_normal as hint to the uniform declaration, which internally converts the texture for proper usage as normal map.

TextureType TYPE_ANISOTROPY = 3

Adds hint_anisotropy as hint to the uniform declaration to use for a flowmap.

TextureType TYPE_MAX = 4

Represents the size of the TextureType enum.


enum ColorDefault:

ColorDefault COLOR_DEFAULT_WHITE = 0

Defaults to fully opaque white color.

ColorDefault COLOR_DEFAULT_BLACK = 1

Defaults to fully opaque black color.

ColorDefault COLOR_DEFAULT_TRANSPARENT = 2

Defaults to fully transparent black color.

ColorDefault COLOR_DEFAULT_MAX = 3

Represents the size of the ColorDefault enum.


enum TextureFilter:

TextureFilter FILTER_DEFAULT = 0

Sample the texture using the filter determined by the node this shader is attached to.

TextureFilter FILTER_NEAREST = 1

The texture filter reads from the nearest pixel only. The simplest and fastest method of filtering, but the texture will look pixelized.

TextureFilter FILTER_LINEAR = 2

The texture filter blends between the nearest four pixels. Use this for most cases where you want to avoid a pixelated style.

TextureFilter FILTER_NEAREST_MIPMAP = 3

The texture filter reads from the nearest pixel in the nearest mipmap. This is the fastest way to read from textures with mipmaps.

TextureFilter FILTER_LINEAR_MIPMAP = 4

The texture filter blends between the nearest 4 pixels and between the nearest 2 mipmaps. Use this for non-pixel art textures that may be viewed at a low scale (e.g. due to Camera2D zoom), as mipmaps are important to smooth out pixels that are smaller than on-screen pixels.

TextureFilter FILTER_NEAREST_MIPMAP_ANISOTROPIC = 5

The texture filter reads from the nearest pixel, but selects a mipmap based on the angle between the surface and the camera view. This reduces artifacts on surfaces that are almost in line with the camera. The anisotropic filtering level can be changed by adjusting ProjectSettings.rendering/textures/default_filters/anisotropic_filtering_level.

Note: This texture filter is rarely useful in 2D projects. FILTER_LINEAR_MIPMAP is usually more appropriate.

TextureFilter FILTER_LINEAR_MIPMAP_ANISOTROPIC = 6

The texture filter blends between the nearest 4 pixels and selects a mipmap based on the angle between the surface and the camera view. This reduces artifacts on surfaces that are almost in line with the camera. This is the slowest of the filtering options, but results in the highest quality texturing. The anisotropic filtering level can be changed by adjusting ProjectSettings.rendering/textures/default_filters/anisotropic_filtering_level.

Note: This texture filter is rarely useful in 2D projects. FILTER_LINEAR_MIPMAP is usually more appropriate.

TextureFilter FILTER_MAX = 7

Represents the size of the TextureFilter enum.


enum TextureRepeat:

TextureRepeat REPEAT_DEFAULT = 0

Sample the texture using the repeat mode determined by the node this shader is attached to.

TextureRepeat REPEAT_ENABLED = 1

Texture will repeat normally.

TextureRepeat REPEAT_DISABLED = 2

Texture will not repeat.

TextureRepeat REPEAT_MAX = 3

Represents the size of the TextureRepeat enum.


enum TextureSource:

TextureSource SOURCE_NONE = 0

The texture source is not specified in the shader.

TextureSource SOURCE_SCREEN = 1

The texture source is the screen texture which captures all opaque objects drawn this frame.

TextureSource SOURCE_DEPTH = 2

The texture source is the depth texture from the depth prepass.

TextureSource SOURCE_NORMAL_ROUGHNESS = 3

The texture source is the normal-roughness buffer from the depth prepass.

TextureSource SOURCE_MAX = 4

Represents the size of the TextureSource enum.


Property Descriptions

ColorDefault color_default = 0

Sets the default color if no texture is assigned to the uniform.


TextureFilter texture_filter = 0

Sets the texture filtering mode. See TextureFilter for options.


TextureRepeat texture_repeat = 0

Sets the texture repeating mode. See TextureRepeat for options.


TextureSource texture_source = 0

Sets the texture source mode. Used for reading from the screen, depth, or normal_roughness texture. See TextureSource for options.


TextureType texture_type = 0

Defines the type of data provided by the source texture. See TextureType for options.