WINTERMUTE: Replace glInterleavedArrays calls
This commit is contained in:
parent
702c843e06
commit
db89c680a1
3 changed files with 26 additions and 14 deletions
|
@ -213,9 +213,13 @@ void BaseRenderOpenGL3D::displayShadow(BaseObject *object, const Math::Vector3d
|
||||||
glEnable(GL_TEXTURE_2D);
|
glEnable(GL_TEXTURE_2D);
|
||||||
static_cast<BaseSurfaceOpenGL3D *>(shadowImage)->setTexture();
|
static_cast<BaseSurfaceOpenGL3D *>(shadowImage)->setTexture();
|
||||||
|
|
||||||
#ifndef __MORPHOS__
|
glEnableClientState(GL_VERTEX_ARRAY);
|
||||||
glInterleavedArrays(GL_T2F_N3F_V3F, 0, _simpleShadow);
|
glEnableClientState(GL_NORMAL_ARRAY);
|
||||||
#endif
|
glEnableClientState(GL_TEXTURE_COORD_ARRAY);
|
||||||
|
|
||||||
|
glVertexPointer(3, GL_FLOAT, sizeof(SimpleShadowVertex), &_simpleShadow[0].x);
|
||||||
|
glNormalPointer(GL_FLOAT, sizeof(SimpleShadowVertex), &_simpleShadow[0].nx);
|
||||||
|
glTexCoordPointer(2, GL_FLOAT, sizeof(SimpleShadowVertex), &_simpleShadow[0].u);
|
||||||
|
|
||||||
glDrawArrays(GL_TRIANGLE_STRIP, 0, 4);
|
glDrawArrays(GL_TRIANGLE_STRIP, 0, 4);
|
||||||
|
|
||||||
|
@ -721,10 +725,11 @@ bool BaseRenderOpenGL3D::drawSpriteEx(BaseSurfaceOpenGL3D &tex, const Wintermute
|
||||||
glEnableClientState(GL_COLOR_ARRAY);
|
glEnableClientState(GL_COLOR_ARRAY);
|
||||||
glEnableClientState(GL_VERTEX_ARRAY);
|
glEnableClientState(GL_VERTEX_ARRAY);
|
||||||
glEnableClientState(GL_TEXTURE_COORD_ARRAY);
|
glEnableClientState(GL_TEXTURE_COORD_ARRAY);
|
||||||
|
glDisableClientState(GL_NORMAL_ARRAY);
|
||||||
|
|
||||||
#ifndef __MORPHOS__
|
glVertexPointer(3, GL_FLOAT, sizeof(SpriteVertex), &vertices[0].x);
|
||||||
glInterleavedArrays(GL_T2F_C4UB_V3F, 0, vertices);
|
glTexCoordPointer(2, GL_FLOAT, sizeof(SpriteVertex), &vertices[0].u);
|
||||||
#endif
|
glColorPointer(4, GL_UNSIGNED_BYTE, sizeof(SpriteVertex), &vertices[0].r);
|
||||||
|
|
||||||
glDrawArrays(GL_TRIANGLE_STRIP, 0, 4);
|
glDrawArrays(GL_TRIANGLE_STRIP, 0, 4);
|
||||||
|
|
||||||
|
|
|
@ -69,9 +69,15 @@ bool MeshXOpenGL::render(ModelX *model) {
|
||||||
glDisable(GL_TEXTURE_2D);
|
glDisable(GL_TEXTURE_2D);
|
||||||
glBindTexture(GL_TEXTURE_2D, 0);
|
glBindTexture(GL_TEXTURE_2D, 0);
|
||||||
}
|
}
|
||||||
#ifndef __MORPHOS__
|
|
||||||
glInterleavedArrays(GL_T2F_N3F_V3F, 0, _vertexData);
|
glEnableClientState(GL_VERTEX_ARRAY);
|
||||||
#endif
|
glEnableClientState(GL_NORMAL_ARRAY);
|
||||||
|
glEnableClientState(GL_TEXTURE_COORD_ARRAY);
|
||||||
|
|
||||||
|
glVertexPointer(3, GL_FLOAT, kVertexComponentCount * sizeof(float), _vertexData + kPositionOffset);
|
||||||
|
glNormalPointer(GL_FLOAT, kVertexComponentCount * sizeof(float), _vertexData + kNormalOffset);
|
||||||
|
glTexCoordPointer(2, GL_FLOAT, kVertexComponentCount * sizeof(float), _vertexData + kTextureCoordOffset);
|
||||||
|
|
||||||
glDrawElements(GL_TRIANGLES, _indexRanges[i + 1] - _indexRanges[i], GL_UNSIGNED_SHORT, _indexData.data() + _indexRanges[i]);
|
glDrawElements(GL_TRIANGLES, _indexRanges[i + 1] - _indexRanges[i], GL_UNSIGNED_SHORT, _indexData.data() + _indexRanges[i]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -133,11 +133,12 @@ bool ShadowVolumeOpenGL::renderToScene() {
|
||||||
glEnableClientState(GL_COLOR_ARRAY);
|
glEnableClientState(GL_COLOR_ARRAY);
|
||||||
glEnableClientState(GL_VERTEX_ARRAY);
|
glEnableClientState(GL_VERTEX_ARRAY);
|
||||||
glDisableClientState(GL_TEXTURE_COORD_ARRAY);
|
glDisableClientState(GL_TEXTURE_COORD_ARRAY);
|
||||||
|
glDisableClientState(GL_NORMAL_ARRAY);
|
||||||
|
|
||||||
// Draw a big, gray square
|
// Draw a big, gray square
|
||||||
#ifndef __MORPHOS__
|
glVertexPointer(3, GL_FLOAT, sizeof(ShadowVertex), &_shadowMask[0].x);
|
||||||
glInterleavedArrays(GL_C4UB_V3F, 0, _shadowMask);
|
glColorPointer(4, GL_UNSIGNED_BYTE, sizeof(ShadowVertex), &_shadowMask[0].r);
|
||||||
#endif
|
|
||||||
glDrawArrays(GL_TRIANGLE_STRIP, 0, 4);
|
glDrawArrays(GL_TRIANGLE_STRIP, 0, 4);
|
||||||
|
|
||||||
// Restore render states
|
// Restore render states
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue