Blender  V3.3
Functions
node_shader_util.cc File Reference
#include "DNA_node_types.h"
#include "node_shader_util.hh"
#include "NOD_socket_search_link.hh"
#include "node_exec.h"

Go to the source code of this file.

Functions

bool sh_node_poll_default (bNodeType *UNUSED(ntype), bNodeTree *ntree, const char **r_disabled_hint)
 
static bool sh_fn_poll_default (bNodeType *UNUSED(ntype), bNodeTree *ntree, const char **r_disabled_hint)
 
void sh_node_type_base (struct bNodeType *ntype, int type, const char *name, short nclass)
 
void sh_fn_node_type_base (bNodeType *ntype, int type, const char *name, short nclass)
 
static void nodestack_get_vec (float *in, short type_in, bNodeStack *ns)
 
void node_gpu_stack_from_data (struct GPUNodeStack *gs, int type, bNodeStack *ns)
 
void node_data_from_gpu_stack (bNodeStack *ns, GPUNodeStack *gs)
 
static void gpu_stack_from_data_list (GPUNodeStack *gs, ListBase *sockets, bNodeStack **ns)
 
static void data_from_gpu_stack_list (ListBase *sockets, bNodeStack **ns, GPUNodeStack *gs)
 
bool nodeSupportsActiveFlag (const bNode *node, int sub_activity)
 
static bNodenode_get_active (bNodeTree *ntree, int sub_activity)
 
bNodenodeGetActiveTexture (bNodeTree *ntree)
 
bNodenodeGetActivePaintCanvas (bNodeTree *ntree)
 
void ntreeExecGPUNodes (bNodeTreeExec *exec, GPUMaterial *mat, bNode *output_node)
 
void node_shader_gpu_bump_tex_coord (GPUMaterial *mat, bNode *UNUSED(node), GPUNodeLink **link)
 
void node_shader_gpu_default_tex_coord (GPUMaterial *mat, bNode *node, GPUNodeLink **link)
 
void node_shader_gpu_tex_mapping (GPUMaterial *mat, bNode *node, GPUNodeStack *in, GPUNodeStack *UNUSED(out))
 
void get_XYZ_to_RGB_for_gpu (XYZ_to_RGB *data)
 

Function Documentation

◆ data_from_gpu_stack_list()

static void data_from_gpu_stack_list ( ListBase sockets,
bNodeStack **  ns,
GPUNodeStack gs 
)
static

Definition at line 157 of file node_shader_util.cc.

References LISTBASE_FOREACH_INDEX, and node_data_from_gpu_stack().

Referenced by ntreeExecGPUNodes().

◆ get_XYZ_to_RGB_for_gpu()

void get_XYZ_to_RGB_for_gpu ( XYZ_to_RGB data)

◆ gpu_stack_from_data_list()

static void gpu_stack_from_data_list ( GPUNodeStack gs,
ListBase sockets,
bNodeStack **  ns 
)
static

◆ node_data_from_gpu_stack()

void node_data_from_gpu_stack ( bNodeStack ns,
GPUNodeStack gs 
)

◆ node_get_active()

static bNode* node_get_active ( bNodeTree ntree,
int  sub_activity 
)
static

◆ node_gpu_stack_from_data()

void node_gpu_stack_from_data ( struct GPUNodeStack gs,
int  type,
bNodeStack ns 
)

◆ node_shader_gpu_bump_tex_coord()

void node_shader_gpu_bump_tex_coord ( GPUMaterial mat,
bNode UNUSEDnode,
GPUNodeLink **  link 
)

◆ node_shader_gpu_default_tex_coord()

void node_shader_gpu_default_tex_coord ( GPUMaterial mat,
bNode node,
GPUNodeLink **  link 
)

◆ node_shader_gpu_tex_mapping()

void node_shader_gpu_tex_mapping ( GPUMaterial mat,
bNode node,
GPUNodeStack in,
GPUNodeStack UNUSEDout 
)

◆ nodeGetActivePaintCanvas()

bNode* nodeGetActivePaintCanvas ( bNodeTree ntree)

Definition at line 242 of file node_shader_util.cc.

References NODE_ACTIVE_PAINT_CANVAS, node_get_active(), and ntree.

Referenced by BKE_texpaint_slot_refresh_cache().

◆ nodeGetActiveTexture()

bNode* nodeGetActiveTexture ( struct bNodeTree ntree)

Two active flags, ID nodes have special flag for buttons display.

Definition at line 237 of file node_shader_util.cc.

References NODE_ACTIVE_TEXTURE, node_get_active(), and ntree.

Referenced by ED_object_assign_active_image(), and ED_object_get_active_image().

◆ nodestack_get_vec()

static void nodestack_get_vec ( float in,
short  type_in,
bNodeStack ns 
)
static

◆ nodeSupportsActiveFlag()

bool nodeSupportsActiveFlag ( const bNode node,
int  sub_activity 
)

◆ ntreeExecGPUNodes()

void ntreeExecGPUNodes ( bNodeTreeExec exec,
GPUMaterial mat,
bNode output_node 
)

◆ sh_fn_node_type_base()

void sh_fn_node_type_base ( bNodeType ntype,
int  type,
const char *  name,
short  nclass 
)

◆ sh_fn_poll_default()

static bool sh_fn_poll_default ( bNodeType UNUSEDntype,
bNodeTree ntree,
const char **  r_disabled_hint 
)
static

Definition at line 25 of file node_shader_util.cc.

References bNodeTree::idname, ntree, STR_ELEM, and TIP_.

Referenced by sh_fn_node_type_base().

◆ sh_node_poll_default()

bool sh_node_poll_default ( bNodeType UNUSEDntype,
bNodeTree ntree,
const char **  r_disabled_hint 
)

◆ sh_node_type_base()

void sh_node_type_base ( struct bNodeType ntype,
int  type,
const char *  name,
short  nclass 
)

Definition at line 36 of file node_shader_util.cc.

References bNodeType::gather_link_search_ops, bNodeType::insert_link, node_insert_link_default(), node_type_base(), bNodeType::poll, blender::nodes::search_link_ops_for_basic_node(), sh_node_poll_default(), and type.

Referenced by register_node_type_sh_add_shader(), register_node_type_sh_ambient_occlusion(), register_node_type_sh_attribute(), register_node_type_sh_background(), register_node_type_sh_bevel(), register_node_type_sh_blackbody(), register_node_type_sh_brightcontrast(), register_node_type_sh_bsdf_anisotropic(), register_node_type_sh_bsdf_diffuse(), register_node_type_sh_bsdf_glass(), register_node_type_sh_bsdf_glossy(), register_node_type_sh_bsdf_hair(), register_node_type_sh_bsdf_hair_principled(), register_node_type_sh_bsdf_principled(), register_node_type_sh_bsdf_refraction(), register_node_type_sh_bsdf_toon(), register_node_type_sh_bsdf_translucent(), register_node_type_sh_bsdf_transparent(), register_node_type_sh_bsdf_velvet(), register_node_type_sh_bump(), register_node_type_sh_camera(), register_node_type_sh_combcolor(), register_node_type_sh_combhsv(), register_node_type_sh_displacement(), register_node_type_sh_eevee_specular(), register_node_type_sh_emission(), register_node_type_sh_fresnel(), register_node_type_sh_gamma(), register_node_type_sh_geometry(), register_node_type_sh_hair_info(), register_node_type_sh_holdout(), register_node_type_sh_hue_sat(), register_node_type_sh_invert(), register_node_type_sh_layer_weight(), register_node_type_sh_light_falloff(), register_node_type_sh_light_path(), register_node_type_sh_mapping(), register_node_type_sh_mix_shader(), register_node_type_sh_normal(), register_node_type_sh_normal_map(), register_node_type_sh_object_info(), register_node_type_sh_output_aov(), register_node_type_sh_output_light(), register_node_type_sh_output_linestyle(), register_node_type_sh_output_material(), register_node_type_sh_output_world(), register_node_type_sh_particle_info(), register_node_type_sh_point_info(), register_node_type_sh_rgb(), register_node_type_sh_rgbtobw(), register_node_type_sh_script(), register_node_type_sh_sepcolor(), register_node_type_sh_sephsv(), register_node_type_sh_shadertorgb(), register_node_type_sh_squeeze(), register_node_type_sh_subsurface_scattering(), register_node_type_sh_tangent(), register_node_type_sh_tex_coord(), register_node_type_sh_tex_environment(), register_node_type_sh_tex_ies(), register_node_type_sh_tex_image(), register_node_type_sh_tex_pointdensity(), register_node_type_sh_tex_sky(), register_node_type_sh_uvalongstroke(), register_node_type_sh_uvmap(), register_node_type_sh_vect_transform(), register_node_type_sh_vector_displacement(), register_node_type_sh_vertex_color(), register_node_type_sh_volume_absorption(), register_node_type_sh_volume_info(), register_node_type_sh_volume_principled(), register_node_type_sh_volume_scatter(), register_node_type_sh_wavelength(), register_node_type_sh_wireframe(), and sh_fn_node_type_base().