Blender V4.3
NOD_shader.h File Reference
#include "BKE_node.hh"

Go to the source code of this file.

Functions

void register_node_type_sh_custom_group (blender::bke::bNodeType *ntype)
 
struct bNodeTreeExecntreeShaderBeginExecTree (struct bNodeTree *ntree)
 
void ntreeShaderEndExecTree (struct bNodeTreeExec *exec)
 
struct bNodentreeShaderOutputNode (struct bNodeTree *ntree, int target)
 
void ntreeGPUMaterialNodes (struct bNodeTree *localtree, struct GPUMaterial *mat)
 

Variables

struct blender::bke::bNodeTreeTypentreeType_Shader
 

Function Documentation

◆ ntreeGPUMaterialNodes()

◆ ntreeShaderBeginExecTree()

struct bNodeTreeExec * ntreeShaderBeginExecTree ( struct bNodeTree * ntree)

◆ ntreeShaderEndExecTree()

void ntreeShaderEndExecTree ( struct bNodeTreeExec * exec)

◆ ntreeShaderOutputNode()

struct bNode * ntreeShaderOutputNode ( struct bNodeTree * ntree,
int target )

Find an output node of the shader tree.

Note
it will only return output which is NOT in the group, which isn't how render engines works but it's how the GPU shader compilation works. This we can change in the future and make it a generic function, but for now it stays private here.

Definition at line 204 of file node_shader_tree.cc.

References bNode::custom1, ELEM, bNode::flag, LISTBASE_FOREACH, node, NODE_DO_OUTPUT, blender::bke::node_tree_set_output(), bNodeTree::nodes, SH_NODE_OUTPUT_LIGHT, SH_NODE_OUTPUT_MATERIAL, SH_NODE_OUTPUT_WORLD, and SHD_OUTPUT_ALL.

Referenced by blender::nodes::materialx::export_to_materialx(), blender::io::hydra::WorldData::init(), light_emission_node_to_energy(), and ntreeGPUMaterialNodes().

◆ register_node_type_sh_custom_group()

Variable Documentation

◆ ntreeType_Shader