You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-04 12:00:25 +00:00
Add Vector4 to VisualShader
This commit is contained in:
@@ -44,6 +44,7 @@ public:
|
||||
enum OpType {
|
||||
OP_TYPE_VECTOR_2D,
|
||||
OP_TYPE_VECTOR_3D,
|
||||
OP_TYPE_VECTOR_4D,
|
||||
OP_TYPE_MAX,
|
||||
};
|
||||
|
||||
@@ -280,6 +281,36 @@ public:
|
||||
|
||||
///////////////////////////////////////
|
||||
|
||||
class VisualShaderNodeVec4Constant : public VisualShaderNodeConstant {
|
||||
GDCLASS(VisualShaderNodeVec4Constant, VisualShaderNodeConstant);
|
||||
Quaternion constant;
|
||||
|
||||
protected:
|
||||
static void _bind_methods();
|
||||
|
||||
public:
|
||||
virtual String get_caption() const override;
|
||||
|
||||
virtual int get_input_port_count() const override;
|
||||
virtual PortType get_input_port_type(int p_port) const override;
|
||||
virtual String get_input_port_name(int p_port) const override;
|
||||
|
||||
virtual int get_output_port_count() const override;
|
||||
virtual PortType get_output_port_type(int p_port) const override;
|
||||
virtual String get_output_port_name(int p_port) const override;
|
||||
|
||||
virtual String generate_code(Shader::Mode p_mode, VisualShader::Type p_type, int p_id, const String *p_input_vars, const String *p_output_vars, bool p_for_preview = false) const override;
|
||||
|
||||
void set_constant(const Quaternion &p_constant);
|
||||
Quaternion get_constant() const;
|
||||
|
||||
virtual Vector<StringName> get_editable_properties() const override;
|
||||
|
||||
VisualShaderNodeVec4Constant();
|
||||
};
|
||||
|
||||
///////////////////////////////////////
|
||||
|
||||
class VisualShaderNodeTransformConstant : public VisualShaderNodeConstant {
|
||||
GDCLASS(VisualShaderNodeTransformConstant, VisualShaderNodeConstant);
|
||||
Transform3D constant;
|
||||
@@ -1282,6 +1313,7 @@ public:
|
||||
OP_TYPE_INT,
|
||||
OP_TYPE_VECTOR_2D,
|
||||
OP_TYPE_VECTOR_3D,
|
||||
OP_TYPE_VECTOR_4D,
|
||||
OP_TYPE_MAX,
|
||||
};
|
||||
|
||||
@@ -1324,6 +1356,7 @@ public:
|
||||
OP_TYPE_SCALAR,
|
||||
OP_TYPE_VECTOR_2D,
|
||||
OP_TYPE_VECTOR_3D,
|
||||
OP_TYPE_VECTOR_4D,
|
||||
OP_TYPE_MAX,
|
||||
};
|
||||
|
||||
@@ -1427,6 +1460,8 @@ public:
|
||||
OP_TYPE_VECTOR_2D_SCALAR,
|
||||
OP_TYPE_VECTOR_3D,
|
||||
OP_TYPE_VECTOR_3D_SCALAR,
|
||||
OP_TYPE_VECTOR_4D,
|
||||
OP_TYPE_VECTOR_4D_SCALAR,
|
||||
OP_TYPE_MAX,
|
||||
};
|
||||
|
||||
@@ -1471,6 +1506,8 @@ public:
|
||||
OP_TYPE_VECTOR_2D_SCALAR,
|
||||
OP_TYPE_VECTOR_3D,
|
||||
OP_TYPE_VECTOR_3D_SCALAR,
|
||||
OP_TYPE_VECTOR_4D,
|
||||
OP_TYPE_VECTOR_4D_SCALAR,
|
||||
OP_TYPE_MAX,
|
||||
};
|
||||
|
||||
@@ -1561,6 +1598,8 @@ public:
|
||||
OP_TYPE_VECTOR_2D_SCALAR,
|
||||
OP_TYPE_VECTOR_3D,
|
||||
OP_TYPE_VECTOR_3D_SCALAR,
|
||||
OP_TYPE_VECTOR_4D,
|
||||
OP_TYPE_VECTOR_4D_SCALAR,
|
||||
OP_TYPE_MAX,
|
||||
};
|
||||
|
||||
@@ -1990,6 +2029,49 @@ public:
|
||||
|
||||
///////////////////////////////////////
|
||||
|
||||
class VisualShaderNodeVec4Uniform : public VisualShaderNodeUniform {
|
||||
GDCLASS(VisualShaderNodeVec4Uniform, VisualShaderNodeUniform);
|
||||
|
||||
private:
|
||||
bool default_value_enabled = false;
|
||||
Quaternion default_value;
|
||||
|
||||
protected:
|
||||
static void _bind_methods();
|
||||
|
||||
public:
|
||||
virtual String get_caption() const override;
|
||||
|
||||
virtual int get_input_port_count() const override;
|
||||
virtual PortType get_input_port_type(int p_port) const override;
|
||||
virtual String get_input_port_name(int p_port) const override;
|
||||
|
||||
virtual int get_output_port_count() const override;
|
||||
virtual PortType get_output_port_type(int p_port) const override;
|
||||
virtual String get_output_port_name(int p_port) const override;
|
||||
|
||||
virtual String generate_global(Shader::Mode p_mode, VisualShader::Type p_type, int p_id) const override;
|
||||
virtual String generate_code(Shader::Mode p_mode, VisualShader::Type p_type, int p_id, const String *p_input_vars, const String *p_output_vars, bool p_for_preview = false) const override;
|
||||
|
||||
virtual bool is_show_prop_names() const override;
|
||||
virtual bool is_use_prop_slots() const override;
|
||||
|
||||
void set_default_value_enabled(bool p_enabled);
|
||||
bool is_default_value_enabled() const;
|
||||
|
||||
void set_default_value(const Quaternion &p_value);
|
||||
Quaternion get_default_value() const;
|
||||
|
||||
bool is_qualifier_supported(Qualifier p_qual) const override;
|
||||
bool is_convertible_to_constant() const override;
|
||||
|
||||
virtual Vector<StringName> get_editable_properties() const override;
|
||||
|
||||
VisualShaderNodeVec4Uniform();
|
||||
};
|
||||
|
||||
///////////////////////////////////////
|
||||
|
||||
class VisualShaderNodeTransformUniform : public VisualShaderNodeUniform {
|
||||
GDCLASS(VisualShaderNodeTransformUniform, VisualShaderNodeUniform);
|
||||
|
||||
@@ -2248,6 +2330,7 @@ public:
|
||||
OP_TYPE_INT,
|
||||
OP_TYPE_VECTOR_2D,
|
||||
OP_TYPE_VECTOR_3D,
|
||||
OP_TYPE_VECTOR_4D,
|
||||
OP_TYPE_BOOLEAN,
|
||||
OP_TYPE_TRANSFORM,
|
||||
OP_TYPE_MAX,
|
||||
@@ -2362,6 +2445,7 @@ public:
|
||||
CTYPE_SCALAR_INT,
|
||||
CTYPE_VECTOR_2D,
|
||||
CTYPE_VECTOR_3D,
|
||||
CTYPE_VECTOR_4D,
|
||||
CTYPE_BOOLEAN,
|
||||
CTYPE_TRANSFORM,
|
||||
CTYPE_MAX,
|
||||
@@ -2431,6 +2515,7 @@ public:
|
||||
OP_TYPE_SCALAR,
|
||||
OP_TYPE_VECTOR_2D,
|
||||
OP_TYPE_VECTOR_3D,
|
||||
OP_TYPE_VECTOR_4D,
|
||||
OP_TYPE_MAX,
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user