void ProcessInputs() { DisableAKey('t'); ProcessForceKeys(); UpdateJointMotorTarget(); if (bReconfigureD6Joint) { bReconfigureD6Joint = false; gJointType = (gJointType+1)%gNumJointConfigurations; ReconfigureD6Joint(); } if (bToggleLowerActorGravity) { char ds[512]; bToggleLowerActorGravity = false; if (capsule2->readBodyFlag(NX_BF_DISABLE_GRAVITY)) capsule2->clearBodyFlag(NX_BF_DISABLE_GRAVITY); else capsule2->raiseBodyFlag(NX_BF_DISABLE_GRAVITY); // Set lower actor gravity in HUD sprintf(ds, "Lower Actor Gravity: %s", gOnOffString[!capsule2->readBodyFlag(NX_BF_DISABLE_GRAVITY)]); hud.SetDisplayString(11, ds, 0.015f, 0.47f); } // Show debug wireframes if (bDebugWireframeMode) { if (gScene) gDebugRenderer.renderData(*gScene->getDebugRenderable()); } }
static void RenderCallback() { // Physics code if(gScene && !gPause) { gScene->simulate(1.0f/60.0f); //Note: a real application would compute and pass the elapsed time here. gScene->flushStream(); gScene->fetchResults(NX_RIGID_BODY_FINISHED, true); } // ~Physics code // Clear buffers glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); // Setup camera glMatrixMode(GL_PROJECTION); glLoadIdentity(); gluPerspective(60.0f, (float)glutGet(GLUT_WINDOW_WIDTH)/(float)glutGet(GLUT_WINDOW_HEIGHT), 1.0f, 10000.0f); gluLookAt(Eye.x, Eye.y, Eye.z, Eye.x + Dir.x, Eye.y + Dir.y, Eye.z + Dir.z, 0.0f, 1.0f, 0.0f); glMatrixMode(GL_MODELVIEW); glLoadIdentity(); gDebugRenderer.renderData(*gScene->getDebugRenderable()); #ifdef __PPCGEKKO__ char buf[256]; sprintf(buf,"Press 1,2,+,-,a,HOME to drop boxes. Press b to shoot a box.\nArrows camera.\n" ); GLFontRenderer::setScreenResolution(glutGet(GLUT_WINDOW_WIDTH), glutGet(GLUT_WINDOW_HEIGHT)); GLFontRenderer::setColor(0.9f, 1.0f, 0.0f, 1.0f); GLFontRenderer::print(0.01, 0.9, 0.036, buf, false, 11, true); #endif glutSwapBuffers(); }
void ProcessInputs() { UpdateWheelShapeUserData(); ProcessForceKeys(); if (bSetCurrentMotorTorque1) { bSetCurrentMotorTorque1 = false; wheel1->setMotorTorque(gCurrentMotorTorque1); // Set motor torque #1 in HUD char ds[512]; sprintf(ds, "Left wheel torque: %d", gCurrentMotorTorque1); hud.SetDisplayString(2, ds, 0.015f, 0.92f); } if (bSetCurrentMotorTorque2) { bSetCurrentMotorTorque2 = false; wheel2->setMotorTorque(gCurrentMotorTorque2); // Set motor torque #2 in HUD char ds[512]; sprintf(ds, "Right wheel torque: %d", gCurrentMotorTorque2); hud.SetDisplayString(3, ds, 0.015f, 0.87f); } // Show debug wireframes if (bDebugWireframeMode) { if (gScene) { gDebugRenderer.renderData(*gScene->getDebugRenderable()); } } }
void ProcessInputs() { // Show debug wireframes if (bDebugWireframeMode) { if (gScene) gDebugRenderer.renderData(*gScene->getDebugRenderable()); } }
void ProcessInputs() { ProcessForceKeys(); // Show debug wireframes if (bDebugWireframeMode && (0 != gScene)) gDebugRenderer.renderData(*gScene->getDebugRenderable()); }
void ProcessInputs() { DisableAKey('t'); ProcessForceKeys(); // Show debug wireframes if (bDebugWireframeMode) { if (gScene) gDebugRenderer.renderData(*gScene->getDebugRenderable()); } }
void ProcessInputs() { ProcessForceKeys(); // Show debug wireframes if (bDebugWireframeMode) { glDisable(GL_LIGHTING); if (gScene) gDebugRenderer.renderData(*gScene->getDebugRenderable()); glEnable(GL_LIGHTING); } }
void ProcessInputs() { ProcessMoveKeys(); MatchTarget(); // Show debug wireframes if (bDebugWireframeMode) { if (gScene) gDebugRenderer.renderData(*gScene->getDebugRenderable()); } }
void ProcessInputs() { UpdateWheelShapeUserData(); ProcessForceKeys(); if (bSetCurrentSteerAngle) { bSetCurrentSteerAngle = false; wheel1->setSteerAngle(gCurrentSteerAngle); // Add front wheel steer angle to HUD char ds[512]; sprintf(ds, "Front Wheel Steer Angle: %d", (int)(gCurrentSteerAngle*180.0/NxPi)); hud.SetDisplayString(2, ds, 0.015f, 0.92f); } if (bSetCurrentMotorTorque) { bSetCurrentMotorTorque = false; wheel2->setMotorTorque(gCurrentMotorTorque); wheel3->setMotorTorque(gCurrentMotorTorque); // Add rear wheel motor torque to HUD char ds[512]; sprintf(ds, "Rear Wheel Motor Torque: %d", gCurrentMotorTorque); hud.SetDisplayString(3, ds, 0.015f, 0.87f); } if (bSetCurrentBrakeTorque) { bSetCurrentBrakeTorque = false; wheel2->setBrakeTorque(gCurrentBrakeTorque); wheel3->setBrakeTorque(gCurrentBrakeTorque); // Add rear wheel brake torque to HUD char ds[512]; sprintf(ds, "Rear Wheel Brake Torque: %d", gCurrentBrakeTorque); hud.SetDisplayString(4, ds, 0.015f, 0.82f); } // Show debug wireframes if (bDebugWireframeMode) { if (gScene) { gDebugRenderer.renderData(*gScene->getDebugRenderable()); } } }
void ProcessInputs() { ProcessForceKeys(); if (bReleaseRandomShape) { bReleaseRandomShape = false; ReleaseRandomShape(); } // Show debug wireframes if (bDebugWireframeMode) { if (gScene) gDebugRenderer.renderData(*gScene->getDebugRenderable()); } }
void ProcessInputs() { // Print profile results (if enabled) gPerfRenderer.render(gScene->readProfileData(true), glutGet(GLUT_WINDOW_WIDTH), glutGet(GLUT_WINDOW_HEIGHT)); if (gbThreadPolling) { // We must reset the polling threads so they are ready for the next run gPollingThreads.ResetPollForWork(); } ProcessForceKeys(); // Show debug wireframes if (bDebugWireframeMode) { if (gScene) gDebugRenderer.renderData(*gScene->getDebugRenderable()); } }
void Display() { //clear display buffers glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); //set the camera view SetupCamera(); //display scene if (rendering_mode != RENDER_WIREFRAME) RenderActors(bShadows); if (debugRenderable) gDebugRenderer.renderData(*debugRenderable); //render HUD hud.Render(); glFlush(); glutSwapBuffers(); }
void ProcessInputs() { ProcessForceKeys(); // Core dump if (bCoreDump) { bool ok = NXU::coreDump(gPhysicsSDK, fnameCD, NXU::FT_XML, true, false); if(ok) { printf("Output core dump successfully!\n"); } else { printf("Output core dump failed!\n"); } bCoreDump = false; } // Load core to core container if (bLoadCore) { if(gPhysicsCollection) { NXU::releaseCollection(gPhysicsCollection); gPhysicsCollection = NULL; } gPhysicsCollection = LoadCoreDump(fnameCD); if(!gPhysicsCollection) { printf("Unable to load the core dump, please first save a core dump.\n"); } else { printf("Core dump has been loaded into container.\n"); } bLoadCore = false; } // instantiate a core dump if(bInstantiateCore) { if(gPhysicsCollection) { if(gPhysicsSDK) { ReleasePhysicsSDK(gPhysicsSDK); gPhysicsSDK = CreatePhysics(); } if(InstantiateCoreDump(gPhysicsSDK, gPhysicsCollection)) { if(gPhysicsSDK->getNbScenes()) { gScene = gPhysicsSDK->getScene(0); AddUserDataToActors(gScene); NxActor** actors = gScene->getActors(); gSelectedActor = *actors; while(!IsSelectable(gSelectedActor)) { gSelectedActor = *actors++; } } printf("Core dump instantiated\n"); } else { printf("Error in instantiating the core dump\n"); } } else { printf("Unable to instantiate the core dump with an empty container\n"); } bInstantiateCore = false; } // Show debug wireframes if (bDebugWireframeMode) { if (gScene) gDebugRenderer.renderData(*gScene->getDebugRenderable()); } }