Fixed bullet debug view, improved bullet debug camera to be always

behind the kart now.


git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/irrlicht@3796 178a84e3-b1eb-0310-8ba1-8eac791a3b58
This commit is contained in:
hikerstk
2009-08-02 23:18:10 +00:00
parent 45f030b4da
commit 024e0d545e

View File

@@ -570,11 +570,16 @@ void IrrDriver::renderBulletDebugView()
float f=2.0f;
glFrustum(-f, f, -f, f, 1.0, 1000.0);
Vec3 xyz = RaceManager::getKart(race_manager->getNumKarts()-1)->getXYZ();
gluLookAt(xyz.getX(), xyz.getY()-5.f, xyz.getZ()+4,
xyz.getX(), xyz.getY(), xyz.getZ(),
0.0f, 0.0f, 1.0f);
const Kart *kart = RaceManager::getKart(race_manager->getNumKarts()-1);
Vec3 xyz = kart->getXYZ();
// Compute the camera position 5 units behind and 4 units higher than the kart
Vec3 cam_pos= kart->getTrans()(Vec3(0, -5, 4));
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
gluLookAt(cam_pos.getX(), cam_pos.getY(), cam_pos.getZ(),
xyz.getX(), xyz.getY(), xyz.getZ(),
0.0f, 0.0f, 1.0f );
for (unsigned int i = 0 ; i < race_manager->getNumKarts(); ++i)
{
@@ -643,9 +648,13 @@ void IrrDriver::update(float dt)
if(race_manager->raceIsActive())
{
if(UserConfigParams::m_bullet_debug) renderBulletDebugView();
m_scene_manager->drawAll();
RaceManager::getWorld()->render();
if(UserConfigParams::m_bullet_debug)
renderBulletDebugView();
else
{
m_scene_manager->drawAll();
RaceManager::getWorld()->render(); // renders e.g. race gui
}
}
else // GUI is active
GUIEngine::render(dt);