Classes | Public Types | Public Member Functions | Static Public Member Functions | Static Protected Member Functions | List of all members
ShaderGraph Class Reference
Inheritance diagram for ShaderGraph:
Shader Resource Reference Object CanvasItemShaderGraph MaterialShaderGraph

Classes

struct  Connection
 
struct  SlotInfo
 

Public Types

enum  NodeType {
  NODE_INPUT, NODE_SCALAR_CONST, NODE_VEC_CONST, NODE_RGB_CONST,
  NODE_XFORM_CONST, NODE_TIME, NODE_SCREEN_TEX, NODE_SCALAR_OP,
  NODE_VEC_OP, NODE_VEC_SCALAR_OP, NODE_RGB_OP, NODE_XFORM_MULT,
  NODE_XFORM_VEC_MULT, NODE_XFORM_VEC_INV_MULT, NODE_SCALAR_FUNC, NODE_VEC_FUNC,
  NODE_VEC_LEN, NODE_DOT_PROD, NODE_VEC_TO_SCALAR, NODE_SCALAR_TO_VEC,
  NODE_XFORM_TO_VEC, NODE_VEC_TO_XFORM, NODE_SCALAR_INTERP, NODE_VEC_INTERP,
  NODE_COLOR_RAMP, NODE_CURVE_MAP, NODE_SCALAR_INPUT, NODE_VEC_INPUT,
  NODE_RGB_INPUT, NODE_XFORM_INPUT, NODE_TEXTURE_INPUT, NODE_CUBEMAP_INPUT,
  NODE_DEFAULT_TEXTURE, NODE_OUTPUT, NODE_COMMENT, NODE_TYPE_MAX
}
 
enum  SlotType {
  SLOT_TYPE_SCALAR, SLOT_TYPE_VEC, SLOT_TYPE_XFORM, SLOT_TYPE_TEXTURE,
  SLOT_MAX
}
 
enum  ShaderType { SHADER_TYPE_VERTEX, SHADER_TYPE_FRAGMENT, SHADER_TYPE_LIGHT, SHADER_TYPE_MAX }
 
enum  SlotDir { SLOT_IN, SLOT_OUT }
 
enum  GraphError { GRAPH_OK, GRAPH_ERROR_CYCLIC, GRAPH_ERROR_MISSING_CONNECTIONS }
 
enum  ScalarOp {
  SCALAR_OP_ADD, SCALAR_OP_SUB, SCALAR_OP_MUL, SCALAR_OP_DIV,
  SCALAR_OP_MOD, SCALAR_OP_POW, SCALAR_OP_MAX, SCALAR_OP_MIN,
  SCALAR_OP_ATAN2, SCALAR_MAX_OP
}
 
enum  VecOp {
  VEC_OP_ADD, VEC_OP_SUB, VEC_OP_MUL, VEC_OP_DIV,
  VEC_OP_MOD, VEC_OP_POW, VEC_OP_MAX, VEC_OP_MIN,
  VEC_OP_CROSS, VEC_MAX_OP
}
 
enum  VecScalarOp { VEC_SCALAR_OP_MUL, VEC_SCALAR_OP_DIV, VEC_SCALAR_OP_POW, VEC_SCALAR_MAX_OP }
 
enum  RGBOp {
  RGB_OP_SCREEN, RGB_OP_DIFFERENCE, RGB_OP_DARKEN, RGB_OP_LIGHTEN,
  RGB_OP_OVERLAY, RGB_OP_DODGE, RGB_OP_BURN, RGB_OP_SOFT_LIGHT,
  RGB_OP_HARD_LIGHT, RGB_MAX_OP
}
 
enum  ScalarFunc {
  SCALAR_FUNC_SIN, SCALAR_FUNC_COS, SCALAR_FUNC_TAN, SCALAR_FUNC_ASIN,
  SCALAR_FUNC_ACOS, SCALAR_FUNC_ATAN, SCALAR_FUNC_SINH, SCALAR_FUNC_COSH,
  SCALAR_FUNC_TANH, SCALAR_FUNC_LOG, SCALAR_FUNC_EXP, SCALAR_FUNC_SQRT,
  SCALAR_FUNC_ABS, SCALAR_FUNC_SIGN, SCALAR_FUNC_FLOOR, SCALAR_FUNC_ROUND,
  SCALAR_FUNC_CEIL, SCALAR_FUNC_FRAC, SCALAR_FUNC_SATURATE, SCALAR_FUNC_NEGATE,
  SCALAR_MAX_FUNC
}
 
enum  VecFunc {
  VEC_FUNC_NORMALIZE, VEC_FUNC_SATURATE, VEC_FUNC_NEGATE, VEC_FUNC_RECIPROCAL,
  VEC_FUNC_RGB2HSV, VEC_FUNC_HSV2RGB, VEC_MAX_FUNC
}
 
- Public Types inherited from Shader
enum  Mode { MODE_MATERIAL, MODE_CANVAS_ITEM, MODE_POST_PROCESS, MODE_MAX }
 
- Public Types inherited from Object
enum  ConnectFlags { CONNECT_DEFERRED =1, CONNECT_PERSIST =2, CONNECT_ONESHOT =4 }
 
enum  { NOTIFICATION_POSTINITIALIZE =0, NOTIFICATION_PREDELETE =1 }
 

Public Member Functions

void node_add (ShaderType p_type, NodeType p_node_type, int p_id)
 
void node_remove (ShaderType p_which, int p_id)
 
void node_set_pos (ShaderType p_which, int p_id, const Point2 &p_pos)
 
Point2 node_get_pos (ShaderType p_which, int p_id) const
 
void get_node_list (ShaderType p_which, List< int > *p_node_list) const
 
NodeType node_get_type (ShaderType p_which, int p_id) const
 
void scalar_const_node_set_value (ShaderType p_which, int p_id, float p_value)
 
float scalar_const_node_get_value (ShaderType p_which, int p_id) const
 
void vec_const_node_set_value (ShaderType p_which, int p_id, const Vector3 &p_value)
 
Vector3 vec_const_node_get_value (ShaderType p_which, int p_id) const
 
void rgb_const_node_set_value (ShaderType p_which, int p_id, const Color &p_value)
 
Color rgb_const_node_get_value (ShaderType p_which, int p_id) const
 
void xform_const_node_set_value (ShaderType p_which, int p_id, const Transform &p_value)
 
Transform xform_const_node_get_value (ShaderType p_which, int p_id) const
 
void texture_node_set_filter_size (ShaderType p_which, int p_id, int p_size)
 
int texture_node_get_filter_size (ShaderType p_which, int p_id) const
 
void texture_node_set_filter_strength (ShaderType p_which, float p_id, float p_strength)
 
float texture_node_get_filter_strength (ShaderType p_which, float p_id) const
 
void duplicate_nodes (ShaderType p_which, List< int > &p_nodes)
 
List< int > generate_ids (ShaderType p_type, int count)
 
void scalar_op_node_set_op (ShaderType p_which, float p_id, ScalarOp p_op)
 
ScalarOp scalar_op_node_get_op (ShaderType p_which, float p_id) const
 
void vec_op_node_set_op (ShaderType p_which, float p_id, VecOp p_op)
 
VecOp vec_op_node_get_op (ShaderType p_which, float p_id) const
 
void vec_scalar_op_node_set_op (ShaderType p_which, float p_id, VecScalarOp p_op)
 
VecScalarOp vec_scalar_op_node_get_op (ShaderType p_which, float p_id) const
 
void rgb_op_node_set_op (ShaderType p_which, float p_id, RGBOp p_op)
 
RGBOp rgb_op_node_get_op (ShaderType p_which, float p_id) const
 
void xform_vec_mult_node_set_no_translation (ShaderType p_which, int p_id, bool p_no_translation)
 
bool xform_vec_mult_node_get_no_translation (ShaderType p_which, int p_id) const
 
void scalar_func_node_set_function (ShaderType p_which, int p_id, ScalarFunc p_func)
 
ScalarFunc scalar_func_node_get_function (ShaderType p_which, int p_id) const
 
void default_set_value (ShaderType p_which, int p_id, int p_param, const Variant &p_value)
 
Variant default_get_value (ShaderType p_which, int p_id, int p_param)
 
void vec_func_node_set_function (ShaderType p_which, int p_id, VecFunc p_func)
 
VecFunc vec_func_node_get_function (ShaderType p_which, int p_id) const
 
void color_ramp_node_set_ramp (ShaderType p_which, int p_id, const DVector< Color > &p_colors, const DVector< real_t > &p_offsets)
 
DVector< Colorcolor_ramp_node_get_colors (ShaderType p_which, int p_id) const
 
DVector< real_t > color_ramp_node_get_offsets (ShaderType p_which, int p_id) const
 
void curve_map_node_set_points (ShaderType p_which, int p_id, const DVector< Vector2 > &p_points)
 
DVector< Vector2curve_map_node_get_points (ShaderType p_which, int p_id) const
 
void input_node_set_name (ShaderType p_which, int p_id, const String &p_name)
 
String input_node_get_name (ShaderType p_which, int p_id)
 
void scalar_input_node_set_value (ShaderType p_which, int p_id, float p_value)
 
float scalar_input_node_get_value (ShaderType p_which, int p_id) const
 
void vec_input_node_set_value (ShaderType p_which, int p_id, const Vector3 &p_value)
 
Vector3 vec_input_node_get_value (ShaderType p_which, int p_id) const
 
void rgb_input_node_set_value (ShaderType p_which, int p_id, const Color &p_value)
 
Color rgb_input_node_get_value (ShaderType p_which, int p_id) const
 
void xform_input_node_set_value (ShaderType p_which, int p_id, const Transform &p_value)
 
Transform xform_input_node_get_value (ShaderType p_which, int p_id) const
 
void texture_input_node_set_value (ShaderType p_which, int p_id, const Ref< Texture > &p_texture)
 
Ref< Texturetexture_input_node_get_value (ShaderType p_which, int p_id) const
 
void cubemap_input_node_set_value (ShaderType p_which, int p_id, const Ref< CubeMap > &p_cubemap)
 
Ref< CubeMapcubemap_input_node_get_value (ShaderType p_which, int p_id) const
 
void comment_node_set_text (ShaderType p_which, int p_id, const String &p_comment)
 
String comment_node_get_text (ShaderType p_which, int p_id) const
 
Error connect_node (ShaderType p_which, int p_src_id, int p_src_slot, int p_dst_id, int p_dst_slot)
 
bool is_node_connected (ShaderType p_which, int p_src_id, int p_src_slot, int p_dst_id, int p_dst_slot) const
 
void disconnect_node (ShaderType p_which, int p_src_id, int p_src_slot, int p_dst_id, int p_dst_slot)
 
void get_node_connections (ShaderType p_which, List< Connection > *p_connections) const
 
bool is_slot_connected (ShaderType p_which, int p_dst_id, int slot_id)
 
void clear (ShaderType p_which)
 
Variant node_get_state (ShaderType p_type, int p_node) const
 
void node_set_state (ShaderType p_type, int p_id, const Variant &p_state)
 
GraphError get_graph_error (ShaderType p_type) const
 
int node_count (ShaderType p_which, int p_type)
 
 ShaderGraph (Mode p_mode)
 
- Public Member Functions inherited from Shader
Mode get_mode () const
 
void set_code (const String &p_vertex, const String &p_fragment, const String &p_light, int p_fragment_ofs=0, int p_light_ofs=0)
 
String get_vertex_code () const
 
String get_fragment_code () const
 
String get_light_code () const
 
void get_param_list (List< PropertyInfo > *p_params) const
 
bool has_param (const StringName &p_param) const
 
void set_default_texture_param (const StringName &p_param, const Ref< Texture > &p_texture)
 
Ref< Textureget_default_texture_param (const StringName &p_param) const
 
void get_default_texture_param_list (List< StringName > *r_textures) const
 
_FORCE_INLINE_ StringName remap_param (const StringName &p_param) const
 
virtual RID get_rid () const
 
 Shader (Mode p_mode)
 
- Public Member Functions inherited from Resource
virtual bool can_reload_from_file ()
 
virtual void reload_from_file ()
 
void register_owner (Object *p_owner)
 
void unregister_owner (Object *p_owner)
 
void set_name (const String &p_name)
 
String get_name () const
 
virtual void set_path (const String &p_path, bool p_take_over=false)
 
String get_path () const
 
void set_subindex (int p_sub_index)
 
int get_subindex () const
 
Ref< Resourceduplicate (bool p_subresources=false)
 
void set_import_metadata (const Ref< ResourceImportMetadata > &p_metadata)
 
Ref< ResourceImportMetadataget_import_metadata () const
 
- Public Member Functions inherited from Reference
_FORCE_INLINE_ bool is_referenced () const
 
bool init_ref ()
 
void reference ()
 
bool unreference ()
 
int reference_get_count () const
 
- Public Member Functions inherited from Object
_FORCE_INLINE_ void _change_notify (const char *p_what="")
 
bool _is_gpl_reversed () const
 
_FORCE_INLINE_ ObjectID get_instance_ID () const
 
void add_change_receptor (Object *p_receptor)
 
void remove_change_receptor (Object *p_receptor)
 
template<class T >
T * cast_to ()
 
template<class T >
const T * cast_to () const
 
virtual String get_type () const
 
virtual String get_save_type () const
 
virtual bool is_type (const String &p_type) const
 
virtual bool is_type_ptr (void *p_ptr) const
 
_FORCE_INLINE_ const StringNameget_type_name () const
 
void set (const StringName &p_name, const Variant &p_value, bool *r_valid=NULL)
 
Variant get (const StringName &p_name, bool *r_valid=NULL) const
 
void get_property_list (List< PropertyInfo > *p_list, bool p_reversed=false) const
 
bool has_method (const StringName &p_method) const
 
void get_method_list (List< MethodInfo > *p_list) const
 
Variant callv (const StringName &p_method, const Array &p_args)
 
virtual Variant call (const StringName &p_method, const Variant **p_args, int p_argcount, Variant::CallError &r_error)
 
virtual void call_multilevel (const StringName &p_method, const Variant **p_args, int p_argcount)
 
virtual void call_multilevel_reversed (const StringName &p_method, const Variant **p_args, int p_argcount)
 
Variant call (const StringName &p_name, VARIANT_ARG_LIST)
 
void call_multilevel (const StringName &p_name, VARIANT_ARG_LIST)
 
void notification (int p_notification, bool p_reversed=false)
 
virtual Variant getvar (const Variant &p_key, bool *r_valid=NULL) const
 
virtual void setvar (const Variant &p_key, const Variant &p_value, bool *r_valid=NULL)
 
void set_script (const RefPtr &p_script)
 
RefPtr get_script () const
 
bool has_meta (const String &p_name) const
 
void set_meta (const String &p_name, const Variant &p_value)
 
Variant get_meta (const String &p_name) const
 
void get_meta_list (List< String > *p_list) const
 
void set_script_instance (ScriptInstance *p_instance)
 
_FORCE_INLINE_ ScriptInstanceget_script_instance () const
 
void add_user_signal (const MethodInfo &p_signal)
 
void emit_signal (const StringName &p_name, VARIANT_ARG_LIST)
 
void emit_signal (const StringName &p_name, const Variant **p_args, int p_argcount)
 
void get_signal_list (List< MethodInfo > *p_signals) const
 
void get_signal_connection_list (const StringName &p_signal, List< Connection > *p_connections) const
 
void get_all_signal_connections (List< Connection > *p_connections) const
 
Error connect (const StringName &p_signal, Object *p_to_object, const StringName &p_to_method, const Vector< Variant > &p_binds=Vector< Variant >(), uint32_t p_flags=0)
 
void disconnect (const StringName &p_signal, Object *p_to_object, const StringName &p_to_method)
 
bool is_connected (const StringName &p_signal, Object *p_to_object, const StringName &p_to_method) const
 
void call_deferred (const StringName &p_method, VARIANT_ARG_LIST)
 
void set_block_signals (bool p_block)
 
bool is_blocking_signals () const
 
Variant::Type get_static_property_type (const StringName &p_property, bool *r_valid=NULL) const
 
virtual void get_translatable_strings (List< String > *p_strings) const
 
virtual void get_argument_options (const StringName &p_function, int p_idx, List< String > *r_options) const
 
StringName XL_MESSAGE (const StringName &p_message) const
 
StringName tr (const StringName &p_message) const
 
bool is_queued_for_deletion () const
 
_FORCE_INLINE_ void set_message_translation (bool p_enable)
 
_FORCE_INLINE_ bool can_translate_messages () const
 
void clear_internal_resource_paths ()
 

Static Public Member Functions

static int get_type_input_count (NodeType p_type)
 
static int get_type_output_count (NodeType p_type)
 
static SlotType get_type_input_type (NodeType p_type, int p_idx)
 
static SlotType get_type_output_type (NodeType p_type, int p_idx)
 
static bool is_type_valid (Mode p_mode, ShaderType p_type)
 
static void get_input_output_node_slot_info (Mode p_mode, ShaderType p_type, List< SlotInfo > *r_slots)
 
static int get_node_input_slot_count (Mode p_mode, ShaderType p_shader_type, NodeType p_type)
 
static int get_node_output_slot_count (Mode p_mode, ShaderType p_shader_type, NodeType p_type)
 
static SlotType get_node_input_slot_type (Mode p_mode, ShaderType p_shader_type, NodeType p_type, int p_idx)
 
static SlotType get_node_output_slot_type (Mode p_mode, ShaderType p_shader_type, NodeType p_type, int p_idx)
 
- Static Public Member Functions inherited from Object
static void initialize_type ()
 
static _FORCE_INLINE_ void register_custom_data_to_otdb ()
 
static void * get_type_ptr_static ()
 
static void get_inheritance_list_static (List< String > *p_inheritance_list)
 
static String get_type_static ()
 
static String get_parent_type_static ()
 
static String get_category_static ()
 

Static Protected Member Functions

static void _bind_methods ()
 
- Static Protected Member Functions inherited from Shader
static void _bind_methods ()
 
- Static Protected Member Functions inherited from Resource
static void _bind_methods ()
 
- Static Protected Member Functions inherited from Reference
static void _bind_methods ()
 
- Static Protected Member Functions inherited from Object
static String _get_category ()
 
static void _bind_methods ()
 
static void get_valid_parents_static (List< String > *p_parents)
 
static void _get_valid_parents_static (List< String > *p_parents)
 

Additional Inherited Members

- Public Attributes inherited from Object
bool _is_queued_for_deletion
 
- Protected Member Functions inherited from Resource
void emit_changed ()
 
void notify_change_to_owners ()
 
virtual void _resource_path_changed ()
 
void _set_path (const String &p_path)
 
void _take_over_path (const String &p_path)
 
- Protected Member Functions inherited from Object
virtual void _initialize_typev ()
 
virtual bool _setv (const StringName &p_name, const Variant &p_property)
 
virtual bool _getv (const StringName &p_name, Variant &r_property) const
 
virtual void _get_property_listv (List< PropertyInfo > *p_list, bool p_reversed) const
 
virtual void _notificationv (int p_notification, bool p_reversed)
 
bool _set (const StringName &p_name, const Variant &p_property)
 
bool _get (const StringName &p_name, Variant &r_property) const
 
void _get_property_list (List< PropertyInfo > *p_list) const
 
void _notification (int p_notification)
 
void cancel_delete ()
 
virtual void _changed_callback (Object *p_changed, const char *p_prop)
 
Variant _call_bind (const Variant **p_args, int p_argcount, Variant::CallError &r_error)
 
Variant _call_deferred_bind (const Variant **p_args, int p_argcount, Variant::CallError &r_error)
 
virtual const StringName_get_type_namev () const
 
DVector< String_get_meta_list_bind () const
 
Array _get_property_list_bind () const
 
Array _get_method_list_bind () const
 
void _clear_internal_resource_paths (const Variant &p_var)
 
- Protected Attributes inherited from Object
_FORCE_INLINE_ bool(Object::*)(const StringName &p_name, Variant &r_ret) _get_get () const)
 
_FORCE_INLINE_ bool(Object::*)(const StringName &p_name, const Variant &p_property) _get_set () const)
 
_FORCE_INLINE_ void(Object::*)(List< PropertyInfo > *p_list) _get_get_property_list () const)
 
_FORCE_INLINE_ void(Object::*)(int) _get_notification () const)
 
- Static Protected Attributes inherited from Object
static _FORCE_INLINE_ void(*)() _get_bind_methods ()
 

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