blob: b1059a6338694f59e2587294c6530a69ba545568 [file] [log] [blame]
syntax = "proto2";
option optimize_for = LITE_RUNTIME;
message ShaderVariableProto {
optional uint32 type = 1;
optional uint32 precision = 2;
optional string name = 3;
optional string mapped_name = 4;
optional uint32 array_size = 5;
optional bool static_use = 6;
repeated ShaderVariableProto fields = 7;
optional string struct_name = 8;
}
message ShaderAttributeProto {
optional ShaderVariableProto basic = 1;
optional int32 location = 2;
}
message ShaderUniformProto {
optional ShaderVariableProto basic = 1;
}
message ShaderVaryingProto {
optional ShaderVariableProto basic = 1;
optional int32 interpolation = 2;
optional bool is_invariant = 3;
}
message ShaderProto {
optional bytes sha = 1;
repeated ShaderAttributeProto attribs = 2;
repeated ShaderUniformProto uniforms = 3;
repeated ShaderVaryingProto varyings = 4;
}
message GpuProgramProto {
optional bytes sha = 1;
optional uint32 format = 2;
optional bytes program = 3;
optional ShaderProto vertex_shader = 4;
optional ShaderProto fragment_shader = 5;
}