drawing orb in the correct order now
git-svn-id: svn://anubis/dwscr/trunk@107 5bef9df8-b654-44bb-925b-0ff18baa8f8c
This commit is contained in:
parent
cfa5c5dd1b
commit
f0b8e46ed5
@ -190,15 +190,24 @@ void LightBounce::update()
|
|||||||
|
|
||||||
for (int i = 0; i < numMonitors; i++)
|
for (int i = 0; i < numMonitors; i++)
|
||||||
{
|
{
|
||||||
|
bool drewOrb = false;
|
||||||
|
float orbDx = viewer_x - m_orb_pos[0];
|
||||||
|
float orbDy = viewer_y - m_orb_pos[1];
|
||||||
|
float orbDz = viewer_z - m_orb_pos[2];
|
||||||
|
float orbDist = (orbDx * orbDx) + (orbDy * orbDy) + (orbDz * orbDz);
|
||||||
glViewport(i*width/numMonitors, 0, width/numMonitors, height);
|
glViewport(i*width/numMonitors, 0, width/numMonitors, height);
|
||||||
glLoadIdentity();
|
glLoadIdentity();
|
||||||
gluLookAt(viewer_x, viewer_y, viewer_z, 0, 0, 0, 0, 1, 0);
|
gluLookAt(viewer_x, viewer_y, viewer_z, 0, 0, 0, 0, 1, 0);
|
||||||
for (int i = 0, sz = m_boxes.size(); i < sz; i++)
|
for (int i = 0, sz = m_boxes.size(); i < sz; i++)
|
||||||
{
|
{
|
||||||
|
if (m_boxes[i]->getDist() < orbDist && !drewOrb)
|
||||||
|
{
|
||||||
|
glCallList(m_orb_dl);
|
||||||
|
drewOrb = true;
|
||||||
|
}
|
||||||
m_boxes[i]->draw();
|
m_boxes[i]->draw();
|
||||||
}
|
}
|
||||||
glTranslatef(m_orb_pos[0], m_orb_pos[1], m_orb_pos[2]);
|
glTranslatef(m_orb_pos[0], m_orb_pos[1], m_orb_pos[2]);
|
||||||
glCallList(m_orb_dl);
|
|
||||||
}
|
}
|
||||||
SDL_GL_SwapBuffers();
|
SDL_GL_SwapBuffers();
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user