type pixelshader [display="Pixel Shader"] { // Shader name pointer i32 shader_name_ptr [ui, readonly, display="Shader Name Ptr"]; // Shader program structure program = parse_here("pixelshaderprogram") [ui]; // Parse shader name if inline if (shader_name_ptr == -1) { shader_name = cstring() [ui, readonly, display="Shader Name"]; _name = shader_name; // Set display name } // TODO: Parse program LoadDef and ParseProgram // This requires understanding the shader program structure }