fixed texturing on quads
This commit is contained in:
parent
0417ec2c29
commit
7924672b69
10
Engine.cc
10
Engine.cc
@ -1375,10 +1375,12 @@ int Engine::Quad::render()
|
|||||||
}
|
}
|
||||||
if (m_texture != 0)
|
if (m_texture != 0)
|
||||||
{
|
{
|
||||||
|
glEnable(GL_TEXTURE_2D);
|
||||||
glBindTexture(GL_TEXTURE_2D, m_texture);
|
glBindTexture(GL_TEXTURE_2D, m_texture);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
glDisable(GL_TEXTURE_2D);
|
||||||
glMaterialfv(GL_FRONT, GL_AMBIENT_AND_DIFFUSE, &m_color[0]);
|
glMaterialfv(GL_FRONT, GL_AMBIENT_AND_DIFFUSE, &m_color[0]);
|
||||||
}
|
}
|
||||||
if (m_enable_blending)
|
if (m_enable_blending)
|
||||||
@ -1390,15 +1392,23 @@ int Engine::Quad::render()
|
|||||||
glTranslatef(m_position[0], m_position[1], m_position[2]);
|
glTranslatef(m_position[0], m_position[1], m_position[2]);
|
||||||
glBegin(GL_QUADS);
|
glBegin(GL_QUADS);
|
||||||
glNormal3f(m_normal[0], m_normal[1], m_normal[2]);
|
glNormal3f(m_normal[0], m_normal[1], m_normal[2]);
|
||||||
|
if (m_texture != 0)
|
||||||
|
glTexCoord2f(1.0, 1.0);
|
||||||
glVertex3f(m_center[0] + m_v1[0] + m_v2[0],
|
glVertex3f(m_center[0] + m_v1[0] + m_v2[0],
|
||||||
m_center[1] + m_v1[1] + m_v2[1],
|
m_center[1] + m_v1[1] + m_v2[1],
|
||||||
m_center[2] + m_v1[2] + m_v2[2]);
|
m_center[2] + m_v1[2] + m_v2[2]);
|
||||||
|
if (m_texture != 0)
|
||||||
|
glTexCoord2f(0, 1.0);
|
||||||
glVertex3f(m_center[0] - m_v1[0] + m_v2[0],
|
glVertex3f(m_center[0] - m_v1[0] + m_v2[0],
|
||||||
m_center[1] - m_v1[1] + m_v2[1],
|
m_center[1] - m_v1[1] + m_v2[1],
|
||||||
m_center[2] - m_v1[2] + m_v2[2]);
|
m_center[2] - m_v1[2] + m_v2[2]);
|
||||||
|
if (m_texture != 0)
|
||||||
|
glTexCoord2f(0, 0);
|
||||||
glVertex3f(m_center[0] - m_v1[0] - m_v2[0],
|
glVertex3f(m_center[0] - m_v1[0] - m_v2[0],
|
||||||
m_center[1] - m_v1[1] - m_v2[1],
|
m_center[1] - m_v1[1] - m_v2[1],
|
||||||
m_center[2] - m_v1[2] - m_v2[2]);
|
m_center[2] - m_v1[2] - m_v2[2]);
|
||||||
|
if (m_texture != 0)
|
||||||
|
glTexCoord2f(1.0, 0);
|
||||||
glVertex3f(m_center[0] + m_v1[0] - m_v2[0],
|
glVertex3f(m_center[0] + m_v1[0] - m_v2[0],
|
||||||
m_center[1] + m_v1[1] - m_v2[1],
|
m_center[1] + m_v1[1] - m_v2[1],
|
||||||
m_center[2] + m_v1[2] - m_v2[2]);
|
m_center[2] + m_v1[2] - m_v2[2]);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user