16 b.add_input<
decl::Color>(
N_(
"Color1")).default_value({0.5f, 0.5f, 0.5f, 1.0f});
17 b.add_input<
decl::Color>(
N_(
"Color2")).default_value({0.5f, 0.5f, 0.5f, 1.0f});
73 if (name !=
nullptr) {
76 const float min[3] = {0.0f, 0.0f, 0.0f};
77 const float max[3] = {1.0f, 1.0f, 1.0f};
120 results[i] = col1[i];
136 int mix_type =
node.custom1;
void ramp_blend(int type, float r_col[3], float fac, const float col[3])
void node_type_gpu(struct bNodeType *ntype, NodeGPUExecFunction gpu_fn)
#define NODE_CLASS_OP_COLOR
void nodeRegisterType(struct bNodeType *ntype)
MINLINE float clamp_f(float value, float min, float max)
MINLINE void clamp_v3(float vec[3], float min, float max)
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum type
GPUNodeLink * GPU_constant(const float *num)
bool GPU_link(GPUMaterial *mat, const char *name,...)
bool GPU_stack_link(GPUMaterial *mat, struct bNode *node, const char *name, GPUNodeStack *in, GPUNodeStack *out,...)
Group Output data from inside of a node group A color picker SH_NODE_MIX_RGB
void set_signature(const MFSignature *signature)
const MFSignature & signature() const
void construct_and_set_matching_fn(Args &&...args)
static fn::MFSignature create_signature()
MixRGBFunction(bool clamp, int type)
void call(IndexMask mask, fn::MFParams params, fn::MFContext UNUSED(context)) const override
ccl_device_inline float4 mask(const int4 &mask, const float4 &a)
T clamp(const T &a, const T &min, const T &max)
static void sh_node_mix_rgb_build_multi_function(NodeMultiFunctionBuilder &builder)
static void sh_node_mix_rgb_declare(NodeDeclarationBuilder &b)
static int gpu_shader_mix_rgb(GPUMaterial *mat, bNode *node, bNodeExecData *UNUSED(execdata), GPUNodeStack *in, GPUNodeStack *out)
static const char * gpu_shader_get_name(int mode)
static const pxr::TfToken out("out", pxr::TfToken::Immortal)
static const pxr::TfToken b("b", pxr::TfToken::Immortal)
void register_node_type_sh_mix_rgb()
void sh_fn_node_type_base(bNodeType *ntype, int type, const char *name, short nclass)
void node_blend_label(const bNodeTree *UNUSED(ntree), const bNode *node, char *label, int maxlen)
void(* labelfunc)(const struct bNodeTree *ntree, const struct bNode *node, char *label, int maxlen)
NodeMultiFunctionBuildFunction build_multi_function
NodeDeclareFunction declare