Added 3 more texture coord vec4f stream attributes

This commit is contained in:
Olivier Prat 2017-07-18 10:58:49 +02:00
parent 236270d798
commit 10a6ad2ac9
3 changed files with 21 additions and 6 deletions

View file

@ -485,9 +485,15 @@ void GLBackend::makeProgramBindings(ShaderObject& shaderObject) {
glBindAttribLocation(glprogram, gpu::Stream::TANGENT, "inTangent");
}
loc = glGetAttribLocation(glprogram, "inTexCoord1");
if (loc >= 0 && loc != gpu::Stream::TEXCOORD1) {
glBindAttribLocation(glprogram, gpu::Stream::TEXCOORD1, "inTexCoord1");
char attribName[] = "inTexCoordn";
for (auto i = 0; i < 4; i++) {
auto streamId = gpu::Stream::TEXCOORD1 + i;
attribName[strlen(attribName) - 1] = '1' + i;
loc = glGetAttribLocation(glprogram, attribName);
if (loc >= 0 && loc != streamId) {
glBindAttribLocation(glprogram, streamId, attribName);
}
}
loc = glGetAttribLocation(glprogram, "inSkinClusterIndex");

View file

@ -36,8 +36,14 @@ const ElementArray& getDefaultElements() {
//SKIN_CLUSTER_WEIGHT = 6,
Element::VEC4F_XYZW,
//TEXCOORD1 = 7,
Element::VEC2F_UV
}};
Element::VEC2F_UV,
//TEXCOORD2 = 7,
Element::VEC4F_XYZW,
//TEXCOORD3 = 7,
Element::VEC4F_XYZW,
//TEXCOORD4 = 7,
Element::VEC4F_XYZW
}};
return defaultElements;
}

View file

@ -38,8 +38,11 @@ public:
SKIN_CLUSTER_INDEX = 5,
SKIN_CLUSTER_WEIGHT = 6,
TEXCOORD1 = 7,
NUM_INPUT_SLOTS = TEXCOORD1 + 1,
TEXCOORD2 = 8,
TEXCOORD3 = 9,
TEXCOORD4 = 10,
NUM_INPUT_SLOTS,
DRAW_CALL_INFO = 15, // Reserve last input slot for draw call infos
};