当前位置: 首页>>代码示例>>C++>>正文


C++ PhysicsWorld::stepSimulation方法代码示例

本文整理汇总了C++中PhysicsWorld::stepSimulation方法的典型用法代码示例。如果您正苦于以下问题:C++ PhysicsWorld::stepSimulation方法的具体用法?C++ PhysicsWorld::stepSimulation怎么用?C++ PhysicsWorld::stepSimulation使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在PhysicsWorld的用法示例。


在下文中一共展示了PhysicsWorld::stepSimulation方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: runGameLoop

void Game::runGameLoop() {
    Uint32 startTime;
    Uint32 deltaTime;

    Device* device = DeviceManager::getDevicePtr();
    Renderer* renderer = RenderManager::getRendererPtr();
    PhysicsWorld* world = PhysicsManager::getPhysicsWorldPtr();
    renderer->initLighting();
    renderer->setAmbientLight(0.2f, 0.2f, 0.2f);

    cout << "Entering game loop" << endl;
    m_isRunning = true;
    while (m_isRunning) {
        startTime = SDL_GetTicks();
        device->onFrameStart();

        world->stepSimulation(0.001 * SDL_GetTicks());

        device->processEvents(m_isRunning);
        Terminal::processCommandsQueue();

        stringstream ss;
        deltaTime = SDL_GetTicks() - startTime;
        ss << "Marble Madness 3D - CPU:" << setw(3) << deltaTime << " ms - ";

        startTime = SDL_GetTicks();
        renderer->draw();
        device->swapBuffers();
        deltaTime = SDL_GetTicks() - startTime;
        ss << "GPU:" << setw(3) << deltaTime << " ms (16-40 ideal) - ";

        device->onFrameEnd();
        ss << setw(5) << fixed << setprecision(1) << device->getFps() << " fps";
        device->setTitle(ss.str());
    }
}
开发者ID:davido262,项目名称:marble-madness-3d,代码行数:36,代码来源:game.cpp


注:本文中的PhysicsWorld::stepSimulation方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。