diff options
Diffstat (limited to 'servers/visual/shader_language.h')
| -rw-r--r-- | servers/visual/shader_language.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/servers/visual/shader_language.h b/servers/visual/shader_language.h index 45dc556115..dc1279efd3 100644 --- a/servers/visual/shader_language.h +++ b/servers/visual/shader_language.h @@ -370,6 +370,7 @@ public: struct Function { StringName name; FunctionNode*function; + Set<StringName> uses_function; bool callable; }; @@ -391,6 +392,7 @@ public: }; int order; + int texture_order; DataType type; DataPrecision precission; Vector<ConstantNode::Value> default_value; @@ -403,7 +405,7 @@ public: Map<StringName,Varying> varyings; Map<StringName,Uniform> uniforms; - Set<StringName> render_modes; + Vector<StringName> render_modes; Vector<Function> functions; @@ -461,8 +463,10 @@ public: static bool convert_constant(ConstantNode* p_constant, DataType p_to_type,ConstantNode::Value *p_value=NULL); static DataType get_scalar_type(DataType p_type); static bool is_scalar_type(DataType p_type); + static bool is_sampler_type(DataType p_type); static void get_keyword_list(List<String> *r_keywords); + static void get_builtin_funcs(List<String> *r_keywords); private: struct KeyWord { TokenType token; const char *text;}; @@ -476,6 +480,8 @@ private: int char_idx; int tk_line; + StringName current_function; + struct TkPos { int char_idx; int tk_line; |