**************************************************************************/
+#include <assert.h>
#include <string.h>
#include <algorithm>
switch (elemType) {
case GL_FLOAT:
- json.writeNumber(*u.fvalue);
+ json.writeFloat(*u.fvalue);
break;
case GL_DOUBLE:
- json.writeNumber(*u.dvalue);
+ json.writeFloat(*u.dvalue);
break;
case GL_INT:
- json.writeNumber(*u.ivalue);
+ json.writeInt(*u.ivalue);
break;
case GL_UNSIGNED_INT:
- json.writeNumber(*u.uivalue);
+ json.writeInt(*u.uivalue);
break;
case GL_BOOL:
json.writeBool(*u.uivalue);
json.beginMember(name);
json.beginArray();
- json.writeNumber(params[0]);
- json.writeNumber(params[1]);
- json.writeNumber(params[2]);
- json.writeNumber(params[3]);
+ json.writeFloat(params[0]);
+ json.writeFloat(params[1]);
+ json.writeFloat(params[2]);
+ json.writeFloat(params[3]);
json.endArray();
json.endMember();
}
json.beginMember(name);
json.beginArray();
- json.writeNumber(params[0]);
- json.writeNumber(params[1]);
- json.writeNumber(params[2]);
- json.writeNumber(params[3]);
+ json.writeFloat(params[0]);
+ json.writeFloat(params[1]);
+ json.writeFloat(params[2]);
+ json.writeFloat(params[3]);
json.endArray();
json.endMember();
}
GLint geometry_program = 0;
GLint tess_control_program = 0;
GLint tess_evaluation_program = 0;
+ GLint compute_program = 0;
if (!context.ES) {
glGetIntegerv(GL_PROGRAM_PIPELINE_BINDING, &pipeline);
glGetProgramPipelineiv(pipeline, GL_GEOMETRY_SHADER, &geometry_program);
glGetProgramPipelineiv(pipeline, GL_TESS_CONTROL_SHADER, &tess_control_program);
glGetProgramPipelineiv(pipeline, GL_TESS_EVALUATION_SHADER, &tess_evaluation_program);
+ glGetProgramPipelineiv(pipeline, GL_COMPUTE_SHADER, &compute_program);
}
}
dumpProgram(json, geometry_program);
dumpProgram(json, tess_control_program);
dumpProgram(json, tess_evaluation_program);
+ dumpProgram(json, compute_program);
} else if (program) {
dumpProgram(json, program);
} else if (programObj) {
dumpProgramUniformsStage(json, geometry_program, "GL_GEOMETRY_SHADER");
dumpProgramUniformsStage(json, tess_control_program, "GL_TESS_CONTROL_SHADER");
dumpProgramUniformsStage(json, tess_evaluation_program, "GL_TESS_EVALUATION_SHADER");
+ dumpProgramUniformsStage(json, compute_program, "GL_COMPUTE_SHADER");
} else if (program) {
dumpProgramUniforms(json, program);
} else if (programObj) {