|
@@ -547,18 +547,19 @@ String ShaderCompilerRD::_dump_node_code(const SL::Node *p_node, int p_level, Ge
|
|
|
index++;
|
|
|
}
|
|
|
|
|
|
- for (Map<StringName, SL::ShaderNode::Constant>::Element *E = pnode->constants.front(); E; E = E->next()) {
|
|
|
+ for (int i = 0; i < pnode->vconstants.size(); i++) {
|
|
|
+ const SL::ShaderNode::Constant &cnode = pnode->vconstants[i];
|
|
|
String gcode;
|
|
|
gcode += "const ";
|
|
|
- gcode += _prestr(E->get().precision);
|
|
|
- if (E->get().type == SL::TYPE_STRUCT) {
|
|
|
- gcode += _mkid(E->get().type_str);
|
|
|
+ gcode += _prestr(cnode.precision);
|
|
|
+ if (cnode.type == SL::TYPE_STRUCT) {
|
|
|
+ gcode += _mkid(cnode.type_str);
|
|
|
} else {
|
|
|
- gcode += _typestr(E->get().type);
|
|
|
+ gcode += _typestr(cnode.type);
|
|
|
}
|
|
|
- gcode += " " + _mkid(E->key());
|
|
|
+ gcode += " " + _mkid(String(cnode.name));
|
|
|
gcode += "=";
|
|
|
- gcode += _dump_node_code(E->get().initializer, p_level, r_gen_code, p_actions, p_default_actions, p_assigning);
|
|
|
+ gcode += _dump_node_code(cnode.initializer, p_level, r_gen_code, p_actions, p_default_actions, p_assigning);
|
|
|
gcode += ";\n";
|
|
|
r_gen_code.vertex_global += gcode;
|
|
|
r_gen_code.fragment_global += gcode;
|