auto scene = Scene::createWithPhysics();
Sceneの作成は、createではなく、「createWithPhysics」というメソッドを使います。これで、物理シミュレーション可能なSceneが作成されます。PhysicsWorld* world = scene->getPhysicsWorld();
world->setGravity(Vec2(0, -500));PhysicsWorldには、物理エンジンで必要となる各種の情報が保管されています。その中でも重要となるのは、「重力」と「速度」でしょう。
world->setSpeed(1.0f);
world->setDebugDrawMask(PhysicsWorld::DEBUGDRAW_ALL);これは、実は物理エンジン利用とは直接関係ないんですが、覚えておくと便利なので紹介しておきましょう。「setDebugDrawMask」は、デバッグのための表示を設定するものです。
※リストが表示されない場合
AddBlockなどの広告ブロックツールがONになっているとリストなどが表示されない場合があります。これらのツールをOFFにしてみてください。
Scene* HelloWorld::createScene() { auto scene = Scene::createWithPhysics(); PhysicsWorld* world = scene->getPhysicsWorld(); world->setGravity(Vec2(0, -500)); world->setSpeed(1.0f); world->setDebugDrawMask(PhysicsWorld::DEBUGDRAW_ALL); auto layer = HelloWorld::create(); scene->addChild(layer); return scene; }
次へ >> |