Blender V4.3
blender::realtime_compositor::ShaderNode Class Referenceabstract

#include <COM_shader_node.hh>

Inherited by blender::nodes::node_composite_alpha_over_cc::AlphaOverShaderNode, blender::nodes::node_composite_brightness_cc::BrightContrastShaderNode, blender::nodes::node_composite_channel_matte_cc::ChannelMatteShaderNode, blender::nodes::node_composite_chroma_matte_cc::ChromaMatteShaderNode, blender::nodes::node_composite_color_matte_cc::ColorMatteShaderNode, blender::nodes::node_composite_color_ramp_cc::ColorRampShaderNode, blender::nodes::node_composite_color_spill_cc::ColorSpillShaderNode, blender::nodes::node_composite_colorbalance_cc::ColorBalanceShaderNode, blender::nodes::node_composite_colorcorrection_cc::ColorCorrectionShaderNode, blender::nodes::node_composite_combine_color_cc::CombineColorShaderNode, blender::nodes::node_composite_combine_hsva_cc::CombineHSVAShaderNode, blender::nodes::node_composite_combine_rgba_cc::CombineRGBAShaderNode, blender::nodes::node_composite_combine_xyz_cc::CombineXYZShaderNode, blender::nodes::node_composite_combine_ycca_cc::CombineYCCAShaderNode, blender::nodes::node_composite_combine_yuva_cc::CombineYUVAShaderNode, blender::nodes::node_composite_diff_matte_cc::DifferenceMatteShaderNode, blender::nodes::node_composite_distance_matte_cc::DistanceMatteShaderNode, blender::nodes::node_composite_exposure_cc::ExposureShaderNode, blender::nodes::node_composite_gamma_cc::GammaShaderNode, blender::nodes::node_composite_hue_sat_val_cc::HueSaturationValueShaderNode, blender::nodes::node_composite_huecorrect_cc::HueCorrectShaderNode, blender::nodes::node_composite_invert_cc::InvertShaderNode, blender::nodes::node_composite_luma_matte_cc::LuminanceMatteShaderNode, blender::nodes::node_composite_map_range_cc::MapRangeShaderNode, blender::nodes::node_composite_map_value_cc::MapValueShaderNode, blender::nodes::node_composite_math_cc::MathShaderNode, blender::nodes::node_composite_mixrgb_cc::MixRGBShaderNode, blender::nodes::node_composite_normal_cc::NormalShaderNode, blender::nodes::node_composite_posterize_cc::PosterizeShaderNode, blender::nodes::node_composite_premulkey_cc::AlphaConvertShaderNode, blender::nodes::node_composite_rgb_curves_cc::RGBCurvesShaderNode, blender::nodes::node_composite_rgb_to_bw_cc::RGBToBWShaderNode, blender::nodes::node_composite_separate_color_cc::SeparateColorShaderNode, blender::nodes::node_composite_separate_hsva_cc::SeparateHSVAShaderNode, blender::nodes::node_composite_separate_rgba_cc::SeparateRGBAShaderNode, blender::nodes::node_composite_separate_xyz_cc::SeparateXYZShaderNode, blender::nodes::node_composite_separate_ycca_cc::SeparateYCCAShaderNode, blender::nodes::node_composite_separate_yuva_cc::SeparateYUVAShaderNode, blender::nodes::node_composite_setalpha_cc::SetAlphaShaderNode, and blender::nodes::node_composite_vector_curves_cc::VectorCurvesShaderNode.

Public Member Functions

 ShaderNode (DNode node)
 
virtual ~ShaderNode ()=default
 
virtual void compile (GPUMaterial *material)=0
 
GPUNodeStackget_inputs_array ()
 
GPUNodeStackget_outputs_array ()
 
GPUNodeStackget_input (StringRef identifier)
 
GPUNodeStackget_output (StringRef identifier)
 
GPUNodeLinkget_input_link (StringRef identifier)
 

Protected Member Functions

const DNodenode () const
 
const bNodebnode () const
 

Detailed Description

Definition at line 31 of file COM_shader_node.hh.

Constructor & Destructor Documentation

◆ ShaderNode()

ShaderNode::ShaderNode ( DNode node)

Definition at line 22 of file shader_node.cc.

◆ ~ShaderNode()

virtual blender::realtime_compositor::ShaderNode::~ShaderNode ( )
virtualdefault

Member Function Documentation

◆ bnode()

const bNode & ShaderNode::bnode ( ) const
protected

Definition at line 62 of file shader_node.cc.

Referenced by blender::nodes::node_composite_alpha_over_cc::AlphaOverShaderNode::compile(), blender::nodes::node_composite_brightness_cc::BrightContrastShaderNode::compile(), blender::nodes::node_composite_channel_matte_cc::ChannelMatteShaderNode::compile(), blender::nodes::node_composite_chroma_matte_cc::ChromaMatteShaderNode::compile(), blender::nodes::node_composite_color_matte_cc::ColorMatteShaderNode::compile(), blender::nodes::node_composite_color_ramp_cc::ColorRampShaderNode::compile(), blender::nodes::node_composite_color_spill_cc::ColorSpillShaderNode::compile(), blender::nodes::node_composite_colorbalance_cc::ColorBalanceShaderNode::compile(), blender::nodes::node_composite_colorcorrection_cc::ColorCorrectionShaderNode::compile(), blender::nodes::node_composite_combine_color_cc::CombineColorShaderNode::compile(), blender::nodes::node_composite_combine_hsva_cc::CombineHSVAShaderNode::compile(), blender::nodes::node_composite_combine_rgba_cc::CombineRGBAShaderNode::compile(), blender::nodes::node_composite_combine_xyz_cc::CombineXYZShaderNode::compile(), blender::nodes::node_composite_combine_ycca_cc::CombineYCCAShaderNode::compile(), blender::nodes::node_composite_combine_yuva_cc::CombineYUVAShaderNode::compile(), blender::nodes::node_composite_diff_matte_cc::DifferenceMatteShaderNode::compile(), blender::nodes::node_composite_distance_matte_cc::DistanceMatteShaderNode::compile(), blender::nodes::node_composite_exposure_cc::ExposureShaderNode::compile(), blender::nodes::node_composite_gamma_cc::GammaShaderNode::compile(), blender::nodes::node_composite_hue_sat_val_cc::HueSaturationValueShaderNode::compile(), blender::nodes::node_composite_huecorrect_cc::HueCorrectShaderNode::compile(), blender::nodes::node_composite_invert_cc::InvertShaderNode::compile(), blender::nodes::node_composite_luma_matte_cc::LuminanceMatteShaderNode::compile(), blender::nodes::node_composite_map_range_cc::MapRangeShaderNode::compile(), blender::nodes::node_composite_map_value_cc::MapValueShaderNode::compile(), blender::nodes::node_composite_math_cc::MathShaderNode::compile(), blender::nodes::node_composite_mixrgb_cc::MixRGBShaderNode::compile(), blender::nodes::node_composite_normal_cc::NormalShaderNode::compile(), blender::nodes::node_composite_posterize_cc::PosterizeShaderNode::compile(), blender::nodes::node_composite_premulkey_cc::AlphaConvertShaderNode::compile(), blender::nodes::node_composite_rgb_curves_cc::RGBCurvesShaderNode::compile(), blender::nodes::node_composite_rgb_to_bw_cc::RGBToBWShaderNode::compile(), blender::nodes::node_composite_separate_color_cc::SeparateColorShaderNode::compile(), blender::nodes::node_composite_separate_hsva_cc::SeparateHSVAShaderNode::compile(), blender::nodes::node_composite_separate_rgba_cc::SeparateRGBAShaderNode::compile(), blender::nodes::node_composite_separate_xyz_cc::SeparateXYZShaderNode::compile(), blender::nodes::node_composite_separate_ycca_cc::SeparateYCCAShaderNode::compile(), blender::nodes::node_composite_separate_yuva_cc::SeparateYUVAShaderNode::compile(), blender::nodes::node_composite_setalpha_cc::SetAlphaShaderNode::compile(), blender::nodes::node_composite_vector_curves_cc::VectorCurvesShaderNode::compile(), blender::nodes::node_composite_chroma_matte_cc::ChromaMatteShaderNode::get_acceptance(), blender::nodes::node_composite_colorbalance_cc::ColorBalanceShaderNode::get_color_balance_method(), blender::nodes::node_composite_color_ramp_cc::ColorRampShaderNode::get_color_band(), blender::nodes::node_composite_channel_matte_cc::ChannelMatteShaderNode::get_color_space(), blender::nodes::node_composite_distance_matte_cc::DistanceMatteShaderNode::get_color_space(), blender::nodes::node_composite_huecorrect_cc::HueCorrectShaderNode::get_curve_mapping(), blender::nodes::node_composite_rgb_curves_cc::RGBCurvesShaderNode::get_curve_mapping(), blender::nodes::node_composite_vector_curves_cc::VectorCurvesShaderNode::get_curve_mapping(), blender::nodes::node_composite_chroma_matte_cc::ChromaMatteShaderNode::get_cutoff(), blender::nodes::node_composite_invert_cc::InvertShaderNode::get_do_alpha(), blender::nodes::node_composite_invert_cc::InvertShaderNode::get_do_rgb(), blender::nodes::node_composite_colorcorrection_cc::ColorCorrectionShaderNode::get_enabled_channels(), blender::nodes::node_composite_chroma_matte_cc::ChromaMatteShaderNode::get_falloff(), blender::nodes::node_composite_diff_matte_cc::DifferenceMatteShaderNode::get_falloff(), blender::nodes::node_composite_distance_matte_cc::DistanceMatteShaderNode::get_falloff(), blender::nodes::node_composite_luma_matte_cc::LuminanceMatteShaderNode::get_high(), blender::nodes::node_composite_color_matte_cc::ColorMatteShaderNode::get_hue_epsilon(), blender::nodes::node_composite_color_spill_cc::ColorSpillShaderNode::get_limit_algorithm(), blender::nodes::node_composite_channel_matte_cc::ChannelMatteShaderNode::get_limit_channel(), blender::nodes::node_composite_color_spill_cc::ColorSpillShaderNode::get_limit_channel(), blender::nodes::node_composite_channel_matte_cc::ChannelMatteShaderNode::get_limit_channels(), blender::nodes::node_composite_color_spill_cc::ColorSpillShaderNode::get_limit_scale(), blender::nodes::node_composite_luma_matte_cc::LuminanceMatteShaderNode::get_low(), blender::nodes::node_composite_channel_matte_cc::ChannelMatteShaderNode::get_matte_channel(), blender::nodes::node_composite_channel_matte_cc::ChannelMatteShaderNode::get_max_limit(), blender::nodes::node_composite_channel_matte_cc::ChannelMatteShaderNode::get_min_limit(), blender::nodes::node_composite_combine_ycca_cc::CombineYCCAShaderNode::get_mode(), blender::nodes::node_composite_mixrgb_cc::MixRGBShaderNode::get_mode(), blender::nodes::node_composite_premulkey_cc::AlphaConvertShaderNode::get_mode(), blender::nodes::node_composite_separate_ycca_cc::SeparateYCCAShaderNode::get_mode(), blender::nodes::node_composite_math_cc::MathShaderNode::get_operation(), blender::nodes::node_composite_alpha_over_cc::AlphaOverShaderNode::get_premultiply_factor(), blender::nodes::node_composite_color_matte_cc::ColorMatteShaderNode::get_saturation_epsilon(), blender::nodes::node_composite_combine_color_cc::CombineColorShaderNode::get_shader_function_name(), blender::nodes::node_composite_separate_color_cc::SeparateColorShaderNode::get_shader_function_name(), blender::nodes::node_composite_map_range_cc::MapRangeShaderNode::get_should_clamp(), blender::nodes::node_composite_math_cc::MathShaderNode::get_should_clamp(), blender::nodes::node_composite_mixrgb_cc::MixRGBShaderNode::get_should_clamp(), blender::nodes::node_composite_color_spill_cc::ColorSpillShaderNode::get_spill_channel(), blender::nodes::node_composite_color_spill_cc::ColorSpillShaderNode::get_spill_scale(), blender::nodes::node_composite_diff_matte_cc::DifferenceMatteShaderNode::get_tolerance(), blender::nodes::node_composite_distance_matte_cc::DistanceMatteShaderNode::get_tolerance(), blender::nodes::node_composite_mixrgb_cc::MixRGBShaderNode::get_use_alpha(), blender::nodes::node_composite_map_value_cc::MapValueShaderNode::get_use_max(), blender::nodes::node_composite_map_value_cc::MapValueShaderNode::get_use_min(), blender::nodes::node_composite_alpha_over_cc::AlphaOverShaderNode::get_use_premultiply(), blender::nodes::node_composite_brightness_cc::BrightContrastShaderNode::get_use_premultiply(), and blender::nodes::node_composite_color_matte_cc::ColorMatteShaderNode::get_value_epsilon().

◆ compile()

virtual void blender::realtime_compositor::ShaderNode::compile ( GPUMaterial * material)
pure virtual

Implemented in blender::nodes::node_composite_alpha_over_cc::AlphaOverShaderNode, blender::nodes::node_composite_brightness_cc::BrightContrastShaderNode, blender::nodes::node_composite_channel_matte_cc::ChannelMatteShaderNode, blender::nodes::node_composite_chroma_matte_cc::ChromaMatteShaderNode, blender::nodes::node_composite_color_matte_cc::ColorMatteShaderNode, blender::nodes::node_composite_color_ramp_cc::ColorRampShaderNode, blender::nodes::node_composite_color_spill_cc::ColorSpillShaderNode, blender::nodes::node_composite_colorbalance_cc::ColorBalanceShaderNode, blender::nodes::node_composite_colorcorrection_cc::ColorCorrectionShaderNode, blender::nodes::node_composite_combine_color_cc::CombineColorShaderNode, blender::nodes::node_composite_combine_hsva_cc::CombineHSVAShaderNode, blender::nodes::node_composite_combine_rgba_cc::CombineRGBAShaderNode, blender::nodes::node_composite_combine_xyz_cc::CombineXYZShaderNode, blender::nodes::node_composite_combine_ycca_cc::CombineYCCAShaderNode, blender::nodes::node_composite_combine_yuva_cc::CombineYUVAShaderNode, blender::nodes::node_composite_diff_matte_cc::DifferenceMatteShaderNode, blender::nodes::node_composite_distance_matte_cc::DistanceMatteShaderNode, blender::nodes::node_composite_exposure_cc::ExposureShaderNode, blender::nodes::node_composite_gamma_cc::GammaShaderNode, blender::nodes::node_composite_hue_sat_val_cc::HueSaturationValueShaderNode, blender::nodes::node_composite_huecorrect_cc::HueCorrectShaderNode, blender::nodes::node_composite_invert_cc::InvertShaderNode, blender::nodes::node_composite_luma_matte_cc::LuminanceMatteShaderNode, blender::nodes::node_composite_map_range_cc::MapRangeShaderNode, blender::nodes::node_composite_map_value_cc::MapValueShaderNode, blender::nodes::node_composite_math_cc::MathShaderNode, blender::nodes::node_composite_mixrgb_cc::MixRGBShaderNode, blender::nodes::node_composite_normal_cc::NormalShaderNode, blender::nodes::node_composite_posterize_cc::PosterizeShaderNode, blender::nodes::node_composite_premulkey_cc::AlphaConvertShaderNode, blender::nodes::node_composite_rgb_curves_cc::RGBCurvesShaderNode, blender::nodes::node_composite_rgb_to_bw_cc::RGBToBWShaderNode, blender::nodes::node_composite_separate_color_cc::SeparateColorShaderNode, blender::nodes::node_composite_separate_hsva_cc::SeparateHSVAShaderNode, blender::nodes::node_composite_separate_rgba_cc::SeparateRGBAShaderNode, blender::nodes::node_composite_separate_xyz_cc::SeparateXYZShaderNode, blender::nodes::node_composite_separate_ycca_cc::SeparateYCCAShaderNode, blender::nodes::node_composite_separate_yuva_cc::SeparateYUVAShaderNode, blender::nodes::node_composite_setalpha_cc::SetAlphaShaderNode, and blender::nodes::node_composite_vector_curves_cc::VectorCurvesShaderNode.

◆ get_input()

◆ get_input_link()

◆ get_inputs_array()

GPUNodeStack * ShaderNode::get_inputs_array ( )

Definition at line 28 of file shader_node.cc.

References blender::Vector< T, InlineBufferCapacity, Allocator >::data().

Referenced by blender::nodes::node_composite_alpha_over_cc::AlphaOverShaderNode::compile(), blender::nodes::node_composite_brightness_cc::BrightContrastShaderNode::compile(), blender::nodes::node_composite_channel_matte_cc::ChannelMatteShaderNode::compile(), blender::nodes::node_composite_chroma_matte_cc::ChromaMatteShaderNode::compile(), blender::nodes::node_composite_color_matte_cc::ColorMatteShaderNode::compile(), blender::nodes::node_composite_color_ramp_cc::ColorRampShaderNode::compile(), blender::nodes::node_composite_color_spill_cc::ColorSpillShaderNode::compile(), blender::nodes::node_composite_colorbalance_cc::ColorBalanceShaderNode::compile(), blender::nodes::node_composite_colorcorrection_cc::ColorCorrectionShaderNode::compile(), blender::nodes::node_composite_combine_color_cc::CombineColorShaderNode::compile(), blender::nodes::node_composite_combine_hsva_cc::CombineHSVAShaderNode::compile(), blender::nodes::node_composite_combine_rgba_cc::CombineRGBAShaderNode::compile(), blender::nodes::node_composite_combine_xyz_cc::CombineXYZShaderNode::compile(), blender::nodes::node_composite_combine_ycca_cc::CombineYCCAShaderNode::compile(), blender::nodes::node_composite_combine_yuva_cc::CombineYUVAShaderNode::compile(), blender::nodes::node_composite_diff_matte_cc::DifferenceMatteShaderNode::compile(), blender::nodes::node_composite_distance_matte_cc::DistanceMatteShaderNode::compile(), blender::nodes::node_composite_exposure_cc::ExposureShaderNode::compile(), blender::nodes::node_composite_gamma_cc::GammaShaderNode::compile(), blender::nodes::node_composite_hue_sat_val_cc::HueSaturationValueShaderNode::compile(), blender::nodes::node_composite_huecorrect_cc::HueCorrectShaderNode::compile(), blender::nodes::node_composite_invert_cc::InvertShaderNode::compile(), blender::nodes::node_composite_luma_matte_cc::LuminanceMatteShaderNode::compile(), blender::nodes::node_composite_map_range_cc::MapRangeShaderNode::compile(), blender::nodes::node_composite_map_value_cc::MapValueShaderNode::compile(), blender::nodes::node_composite_math_cc::MathShaderNode::compile(), blender::nodes::node_composite_mixrgb_cc::MixRGBShaderNode::compile(), blender::nodes::node_composite_normal_cc::NormalShaderNode::compile(), blender::nodes::node_composite_posterize_cc::PosterizeShaderNode::compile(), blender::nodes::node_composite_premulkey_cc::AlphaConvertShaderNode::compile(), blender::nodes::node_composite_rgb_curves_cc::RGBCurvesShaderNode::compile(), blender::nodes::node_composite_rgb_to_bw_cc::RGBToBWShaderNode::compile(), blender::nodes::node_composite_separate_color_cc::SeparateColorShaderNode::compile(), blender::nodes::node_composite_separate_hsva_cc::SeparateHSVAShaderNode::compile(), blender::nodes::node_composite_separate_rgba_cc::SeparateRGBAShaderNode::compile(), blender::nodes::node_composite_separate_xyz_cc::SeparateXYZShaderNode::compile(), blender::nodes::node_composite_separate_ycca_cc::SeparateYCCAShaderNode::compile(), blender::nodes::node_composite_separate_yuva_cc::SeparateYUVAShaderNode::compile(), blender::nodes::node_composite_setalpha_cc::SetAlphaShaderNode::compile(), and blender::nodes::node_composite_vector_curves_cc::VectorCurvesShaderNode::compile().

◆ get_output()

◆ get_outputs_array()

GPUNodeStack * ShaderNode::get_outputs_array ( )

Definition at line 33 of file shader_node.cc.

References blender::Vector< T, InlineBufferCapacity, Allocator >::data().

Referenced by blender::nodes::node_composite_alpha_over_cc::AlphaOverShaderNode::compile(), blender::nodes::node_composite_brightness_cc::BrightContrastShaderNode::compile(), blender::nodes::node_composite_channel_matte_cc::ChannelMatteShaderNode::compile(), blender::nodes::node_composite_chroma_matte_cc::ChromaMatteShaderNode::compile(), blender::nodes::node_composite_color_matte_cc::ColorMatteShaderNode::compile(), blender::nodes::node_composite_color_ramp_cc::ColorRampShaderNode::compile(), blender::nodes::node_composite_color_spill_cc::ColorSpillShaderNode::compile(), blender::nodes::node_composite_colorbalance_cc::ColorBalanceShaderNode::compile(), blender::nodes::node_composite_colorcorrection_cc::ColorCorrectionShaderNode::compile(), blender::nodes::node_composite_combine_color_cc::CombineColorShaderNode::compile(), blender::nodes::node_composite_combine_hsva_cc::CombineHSVAShaderNode::compile(), blender::nodes::node_composite_combine_rgba_cc::CombineRGBAShaderNode::compile(), blender::nodes::node_composite_combine_xyz_cc::CombineXYZShaderNode::compile(), blender::nodes::node_composite_combine_ycca_cc::CombineYCCAShaderNode::compile(), blender::nodes::node_composite_combine_yuva_cc::CombineYUVAShaderNode::compile(), blender::nodes::node_composite_diff_matte_cc::DifferenceMatteShaderNode::compile(), blender::nodes::node_composite_distance_matte_cc::DistanceMatteShaderNode::compile(), blender::nodes::node_composite_exposure_cc::ExposureShaderNode::compile(), blender::nodes::node_composite_gamma_cc::GammaShaderNode::compile(), blender::nodes::node_composite_hue_sat_val_cc::HueSaturationValueShaderNode::compile(), blender::nodes::node_composite_huecorrect_cc::HueCorrectShaderNode::compile(), blender::nodes::node_composite_invert_cc::InvertShaderNode::compile(), blender::nodes::node_composite_luma_matte_cc::LuminanceMatteShaderNode::compile(), blender::nodes::node_composite_map_range_cc::MapRangeShaderNode::compile(), blender::nodes::node_composite_map_value_cc::MapValueShaderNode::compile(), blender::nodes::node_composite_math_cc::MathShaderNode::compile(), blender::nodes::node_composite_mixrgb_cc::MixRGBShaderNode::compile(), blender::nodes::node_composite_normal_cc::NormalShaderNode::compile(), blender::nodes::node_composite_posterize_cc::PosterizeShaderNode::compile(), blender::nodes::node_composite_premulkey_cc::AlphaConvertShaderNode::compile(), blender::nodes::node_composite_rgb_curves_cc::RGBCurvesShaderNode::compile(), blender::nodes::node_composite_rgb_to_bw_cc::RGBToBWShaderNode::compile(), blender::nodes::node_composite_separate_color_cc::SeparateColorShaderNode::compile(), blender::nodes::node_composite_separate_hsva_cc::SeparateHSVAShaderNode::compile(), blender::nodes::node_composite_separate_rgba_cc::SeparateRGBAShaderNode::compile(), blender::nodes::node_composite_separate_xyz_cc::SeparateXYZShaderNode::compile(), blender::nodes::node_composite_separate_ycca_cc::SeparateYCCAShaderNode::compile(), blender::nodes::node_composite_separate_yuva_cc::SeparateYUVAShaderNode::compile(), blender::nodes::node_composite_setalpha_cc::SetAlphaShaderNode::compile(), and blender::nodes::node_composite_vector_curves_cc::VectorCurvesShaderNode::compile().

◆ node()

const DNode & ShaderNode::node ( ) const
protected

The documentation for this class was generated from the following files: