с помощью какой то матери и черной магии сделал тот же массив кубиков.

летать wasd и мышь, крутить кубик стрелки, закрыть альт+ф4
выяснилось что в
unsigned char* data = unsigned char[tex->GetDataSize()];
tex->GetData(data);
delete[] data;
tex->GetDataSize() у меня возвращает что угодно кроме нужного числа.
А можно как нибудь макросом текст вида:
uniform mat4 modelviewproj;
uniform mat3 normalmatrix;
uniform vec3 lightpos;
uniform mat4 model;
in vec3 position;
in vec3 normal;
in vec2 texcoord0;
out vec3 fragmentn;
out vec2 fragmentuv;
out vec3 lightvec;
out vec3 shadow;
void main(void) {
gl_Position = modelviewproj * vec4(position,1.0);
fragmentn = normalmatrix * normal;
lightvec = lightpos - (model * vec4(position,1.0)).xyz;
fragmentuv = texcoord0;
}
превратить в
"uniform mat4 modelviewproj;\n"
"uniform mat3 normalmatrix;\n"
"uniform vec3 lightpos;\n"
"uniform mat4 model;\n"
"in vec3 position;\n"
"in vec3 normal;\n"
"in vec2 texcoord0;\n"
"out vec3 fragmentn;\n"
"out vec2 fragmentuv;\n"
"out vec3 lightvec;\n"
"out vec3 shadow;\n"
"void main(void) {\n"
" gl_Position = modelviewproj * vec4(position,1.0);\n"
" fragmentn = normalmatrix * normal;\n"
" lightvec = lightpos - (model * vec4(position,1.0)).xyz;\n"
" fragmentuv = texcoord0;\n"
"} \n"
И что надо заинклюдидь чтобы swprintf заработало?
И когда будет справка?