Blender
V3.3
|
#include <shader_nodes.h>
Public Types | |
enum | Type { POINT = 0 , TEXTURE = 1 , VECTOR = 2 , NORMAL = 3 } |
enum | Mapping { NONE = 0 , X = 1 , Y = 2 , Z = 3 } |
enum | Projection { FLAT , CUBE , TUBE , SPHERE } |
Public Member Functions | |
TextureMapping () | |
Transform | compute_transform () |
bool | skip () |
void | compile (SVMCompiler &compiler, int offset_in, int offset_out) |
int | compile (SVMCompiler &compiler, ShaderInput *vector_in) |
void | compile (OSLCompiler &compiler) |
int | compile_begin (SVMCompiler &compiler, ShaderInput *vector_in) |
void | compile_end (SVMCompiler &compiler, ShaderInput *vector_in, int vector_offset) |
Public Attributes | |
float3 | translation |
float3 | rotation |
float3 | scale |
float3 | min |
float3 | max |
bool | use_minmax |
Type | type |
Mapping | x_mapping |
Mapping | y_mapping |
Mapping | z_mapping |
Projection | projection |
Definition at line 23 of file shader_nodes.h.
Enumerator | |
---|---|
NONE | |
X | |
Y | |
Z |
Definition at line 45 of file shader_nodes.h.
Enumerator | |
---|---|
FLAT | |
CUBE | |
TUBE | |
SPHERE |
Definition at line 48 of file shader_nodes.h.
enum TextureMapping::Type |
Enumerator | |
---|---|
POINT | |
TEXTURE | |
VECTOR | |
NORMAL |
Definition at line 42 of file shader_nodes.h.
TextureMapping::TextureMapping | ( | ) |
Definition at line 67 of file shader_nodes.cpp.
void TextureMapping::compile | ( | OSLCompiler & | compiler | ) |
Definition at line 191 of file shader_nodes.cpp.
References compute_transform(), OSLCompiler::parameter(), and skip().
void TextureMapping::compile | ( | SVMCompiler & | compiler, |
int | offset_in, | ||
int | offset_out | ||
) |
Definition at line 145 of file shader_nodes.cpp.
References SVMCompiler::add_node(), compute_transform(), SVMCompiler::encode_uchar4(), float3_to_float4(), max, min, NODE_VECTOR_MATH_NORMALIZE, NORMAL, SVM_STACK_INVALID, type, use_minmax, Transform::x, Transform::y, and Transform::z.
Referenced by compile_begin().
int TextureMapping::compile | ( | SVMCompiler & | compiler, |
ShaderInput * | vector_in | ||
) |
int TextureMapping::compile_begin | ( | SVMCompiler & | compiler, |
ShaderInput * | vector_in | ||
) |
Definition at line 170 of file shader_nodes.cpp.
References compile(), skip(), SVMCompiler::stack_assign(), SVMCompiler::stack_find_offset(), and SocketType::VECTOR.
void TextureMapping::compile_end | ( | SVMCompiler & | compiler, |
ShaderInput * | vector_in, | ||
int | vector_offset | ||
) |
Definition at line 184 of file shader_nodes.cpp.
References skip(), SVMCompiler::stack_clear_offset(), and ShaderInput::type().
Transform TextureMapping::compute_transform | ( | ) |
Definition at line 71 of file shader_nodes.cpp.
References fabsf, NONE, NORMAL, POINT, rotation, scale, signf(), TEXTURE, transform_euler(), transform_inverse(), transform_scale(), transform_translate(), transform_transposed_inverse(), translation, type, VECTOR, float3::x, x_mapping, float3::y, y_mapping, float3::z, z_mapping, and zero_float3().
Referenced by compile(), and LightManager::device_update_background().
bool TextureMapping::skip | ( | ) |
Definition at line 128 of file shader_nodes.cpp.
References one_float3(), rotation, scale, translation, use_minmax, X, x_mapping, Y, y_mapping, Z, z_mapping, and zero_float3().
Referenced by compile(), compile_begin(), and compile_end().
float3 TextureMapping::max |
Definition at line 39 of file shader_nodes.h.
Referenced by compile().
float3 TextureMapping::min |
Definition at line 39 of file shader_nodes.h.
Referenced by compile().
Projection TextureMapping::projection |
Definition at line 49 of file shader_nodes.h.
float3 TextureMapping::rotation |
Definition at line 36 of file shader_nodes.h.
Referenced by compute_transform(), and skip().
float3 TextureMapping::scale |
Definition at line 37 of file shader_nodes.h.
Referenced by compute_transform(), and skip().
float3 TextureMapping::translation |
Definition at line 35 of file shader_nodes.h.
Referenced by compute_transform(), and skip().
Type TextureMapping::type |
Definition at line 43 of file shader_nodes.h.
Referenced by compile(), and compute_transform().
bool TextureMapping::use_minmax |
Definition at line 40 of file shader_nodes.h.
Mapping TextureMapping::x_mapping |
Definition at line 46 of file shader_nodes.h.
Referenced by compute_transform(), and skip().
Mapping TextureMapping::y_mapping |
Definition at line 46 of file shader_nodes.h.
Referenced by compute_transform(), and skip().
Mapping TextureMapping::z_mapping |
Definition at line 46 of file shader_nodes.h.
Referenced by compute_transform(), and skip().