箱を降らせてみよう

箱を降らせてみよう

 まずこちらより、サンプルファイルをダウンロード(http://www.thinkit.co.jp/images/article/91/2/9121.zip)してください(9121.zip/7.45 KB)。解凍されたsample1.fla、sample1.asをBox2DFlashAS3_2.0.0フォルダ内に配置してください。

 このサンプルは、まず開始時にランダムに位置、大きさ、色が設定された10個の箱が落ちてきます。さらにクリックするたびにランダムな箱が落ちてくるというものです(前ページの図1の動画と同様です)。

 まずはFlash上でプレビューしてこのFlashを動作させてみましょう。前ページの図1のように色とりどりの箱が落ちてくると思います。

 Box2DFlashAS3でオブジェクトを表示するには、大きく分けて以下の5ステップとなります。

ステップ1:「シミュレーション世界(World)の生成」
ステップ2:「オブジェクト(Body)の生成」
ステップ3:「シェイプの生成」
ステップ4:「シミュレーション世界(World)にオブジェクト(Body)を実体化」
ステップ5:「オブジェクト(Body)にシェイプ(四角とか丸などの形)を登録」

 今回のサンプルでは、ステップ1として、24行目から36行目までの「ワールドオブジェクトの生成」に対応しています。ステップ2からステップ5は、79行目からの「オブジェクトをワールドに追加するメソッド」や38行目から59行目までの「床の生成」にあたります。

 物理計算の結果とディスプレイオブジェクトの連携に関しては、オブジェクト(Body)のuserDataプロパティにMovieClipを登録すること行っています。また、Event.ENTER_FRAMEでUpdateというメソッドを定期的に実行していますが、これにより時間の経過とともに物理計算が更新されます。

重力を変えてみよう

 ワールドオブジェクトの生成のところで、下記のパラメータをセットするところがありますがこれはお決まりの文章なので、あまり気にする必要はないようです。

worldAABB.lowerBound.Set(-100.0, -100.0);
worldAABB.upperBound.Set(100.0, 100.0);

 29行目の「重力の設定」のところで、下記の記述があるかと思いますが、ここは重力のパラメータをセットすることころです。

var gravity:b2Vec2 = new b2Vec2(0,20);

 試しにここのパラメータを変更してみましょう。2つ目の20を100に変えてみるとどうでしょうか?箱の落ちてくるスピードが一気に速くなったかと思います。

 また、お気づきかもしれませんが、この重力のパラメータは横にも設定することができます。試しに30、30と入れてみましょう。箱が落ちてきつつも右にも流れていくのがわかるかと思います。図2の動画をご覧ください。風に流されているような動きがわかると思います。

 そのほか、摩擦係数、跳ね返り係数など変更できるパラメータはsample1.asの中でコメントとして記述してありますので、変更して試してみてください。動きがだいぶ変わってくるので、見ていて面白いと思います。

人気記事トップ10

人気記事ランキングをもっと見る

企画広告も役立つ情報バッチリ! Sponsored

ClickHouse Cloudが実現した広告運用SaaS「ATOM」のデータ基盤革新、パフォーマンスを向上しながら、運用負荷とコストを削減 6:20 AIで開発が加速する時代、品質保証はどう変わる? Tricentisが示すAIエージェント活用の実像 11月9日 6:45 悪用までの猶予が「1分」に迫るフロンティアAI時代に開発と本番を貫く脆弱性管理が必要 10月29日 8:30 欧州CRA対応とSBOM運用。AI生成コードのOSS混入問題の対策とは ――スニペット単位で検出する「FossID」「Insignary Clarity」によるSBOM運用 9月16日 6:40 PostgreSQLからTiDBへ、稼働中SaaSで進める段階的DB移行の実践と再設計への展望 9月7日 6:30 機能安全開発におけるGoogleTestの活用を支援!「Parasoft C/C++test CT」で実現する効率化&AI連携 4月14日 6:30 【CNDW2025】Grafanaが明かす「オブザーバビリティの哲学」ー最小限の労力で実用的なインサイトを得るには 1月23日 6:30 【CNDW2025】プロダクト急増に備える基盤刷新 ーウェルスナビがECSからEKSへの移行で得た知見とは 1月15日 6:30 【CNDW2025】250環境を5人で運用、構築時間は30分に ーKINTOテクノロジーズが語るインフラ基盤組織の作り方 2025年12月18日 6:30 新たな自動化で熱視線! AIエージェントの「推論能力」を支える2つのコンポーネントとは? 2025年11月28日 6:30