|
From: julien r. <jul...@us...> - 2004-10-31 22:15:49
|
Update of /cvsroot/epfl/tgengine-0.1 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv2603 Modified Files: engine.cc physicengine.cc Log Message: ... Index: physicengine.cc =================================================================== RCS file: /cvsroot/epfl/tgengine-0.1/physicengine.cc,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** physicengine.cc 31 Oct 2004 11:39:49 -0000 1.15 --- physicengine.cc 31 Oct 2004 22:15:40 -0000 1.16 *************** *** 74,78 **** //-> on différenci la taille du joueur et des autres objets pour être sur le sol #define PLAYER_HEIGHT 80 ! #define BASE_HEIGHT 5 #define STEPSIZE 10 void PhysicEngine::Move (float eTime) --- 74,78 ---- //-> on différenci la taille du joueur et des autres objets pour être sur le sol #define PLAYER_HEIGHT 80 ! #define BASE_HEIGHT 15 #define STEPSIZE 10 void PhysicEngine::Move (float eTime) *************** *** 90,94 **** if (!n->Clip()) { ! //ugly hack pour éviter de tomber quand on tappe noclip le jeu étant deja lancé (on se choppe l'accel négative de la frame précédente en fait... Vector3 veloc = n->GetVelocity(); veloc.y = 0; --- 90,94 ---- if (!n->Clip()) { ! //ugly hack pour éviter de tomber quand on tappe -clip le jeu étant deja lancé (on se choppe l'accel négative de la frame précédente en fait... Vector3 veloc = n->GetVelocity(); veloc.y = 0; *************** *** 112,118 **** else if (n->GetYAccel() < 0) //si l'objet touche le sol, il faut ramener la gravité à zéro, sinon, l'objet va se retrouver avec une gravité négative très grande (ça l'empeche de sauter notamment) n->SetYAccel(0.0f); ! /*std::cout << n << "\t" ; ! std::cout << n->bOnGround; ! std::cout << "\t" << n->vAccel << std::endl;*/ //int red[]={1,0,0}; //Engine::pEngine->pRenderer->drawDebugArrow(n->vPosition, n->vPosition+n->vAccel*5, red); --- 112,118 ---- else if (n->GetYAccel() < 0) //si l'objet touche le sol, il faut ramener la gravité à zéro, sinon, l'objet va se retrouver avec une gravité négative très grande (ça l'empeche de sauter notamment) n->SetYAccel(0.0f); ! /*std::cout << n << "\t" ;*/ ! std::cout << "OnGround : " << n->OnGround(); ! std::cout << "Accel : \t" << n->GetAccel() << std::endl; //int red[]={1,0,0}; //Engine::pEngine->pRenderer->drawDebugArrow(n->vPosition, n->vPosition+n->vAccel*5, red); *************** *** 177,184 **** //Classification de la position - //FIXME:on fait une differenciation entre le joueur et les autres scenenode. il ne faudrait pas! - /*if (n->bIsCamera && pLevel->CheckRayMove(n->GetPosition(), n->GetPosition()+Vector3::NEGATIVE_UNIT_Y*PLAYER_HEIGHT, TRACE_RAY, 0).Fraction < 1.0f) - n->SetOnGround(true); - else*/ BspCollisionResult col = pLevel->CheckRayMove(n->GetPosition(), n->GetPosition()+Vector3::NEGATIVE_UNIT_Y*BASE_HEIGHT, n->GetBBox()->vMin, n->GetBBox()->vMax); --- 177,180 ---- *************** *** 189,198 **** n->SetOnGround(false); - //n->SetRotation(n->GetRotation()+n->GetRotationVelocity()*eTime); - /*n->SetRotation(n->GetRotation()*n->GetRotationVelocity()*eTime);*/ - /*static float angle =0 ; - angle+=1; - angle=0; - Quaternion q(angle, Vector3(0,0,0));*/ Quaternion q = n->GetRotationVelocity()*eTime; q.Normalize(); --- 185,188 ---- Index: engine.cc =================================================================== RCS file: /cvsroot/epfl/tgengine-0.1/engine.cc,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** engine.cc 21 Oct 2004 21:18:28 -0000 1.5 --- engine.cc 31 Oct 2004 22:15:40 -0000 1.6 *************** *** 28,32 **** } ! pLog = new LogBuffer ("log.txt", true); std::cout.rdbuf (pLog); pErr = new ErrBuffer ("err.txt", true); --- 28,32 ---- } ! pLog = new LogBuffer ("log.txt", false); std::cout.rdbuf (pLog); pErr = new ErrBuffer ("err.txt", true); |