ホーム > タグ > Box2D

Box2D

Box2d で風雨に揺れる葉っぱのようなもの

なんか夏休みろくにとれなかったので、
最近インドネシアはバリ島に遊びに行ってました。

バリ島は雨季が近いということでスコールも1度味わってきました。

というわけで、雨と風にたなびく葉っぱのようなものを強引にBox2Dで作ってみました。
雨粒のあたり判定が甘いのは仕様です。
ちょっとこれを使ってまた別のものを作ろうと考えています。

↓ 以下、種明かしのようなもの

Continue reading

Box2D オブジェクトにオブジェクトをあてて回転させる

久々に、、、Box2Dさわってみた。

これの続きです。
ってマジで久しぶりだ(^-^;;

今までジョイントには全く手を出さなかったので、
モノがぶつかると回転するオブジェクトを追加してみました。

音符がぶつかることで障害物が回転します。

↓以下動くものと、一部のソース

Continue reading

Box2D,Papervision3Dでフリースローゲームを3D表示

前々回のエントリでBox2DとPapervision3dを連携させてみて、
前のフリースローも似たようなことできるんじゃないかと思ってやってみた。

ボールを投げたところからだけ3Dでシミュレーションします。
環境によってはすごい重いと思います。

縦長w 長すぎましたねw 下だけ表示でもなんとなく操作できます。
今回は「←」「→」キーで前後に移動できるようにしました。
「クリック」、「s」キーで方向、パワー決定してシュート!

基本的には前のエントリとやってることは同じです。
Box2dな方のソースは整理中・・・。

シーンをENTER_FRAMEイベントで書き出し続けつつ、
Box2DのほうからupDatePositionsを呼んで、カメラ、ボールの位置を変更しています。

ACTIONSCRIPT:
  1. private function onEnterHandler(event:Event):void {
  2.             ball.rotationY += 5;
  3.             renderer.renderScene(scene, camera, viewPort);
  4.         }
  5.        
  6.         public function upDatePositions( boy_pos, ball_x, ball_y,ball_angle) {
  7.             camera.z = -100 + boy_pos/1.5;
  8.             ball.z = -100 + ball_x * 90;
  9.             ball.y = 925 - ball_y * 90;
  10.         }

↓Papervision3Dのほうのソース全部

Continue reading

Box2D と PaperVision3D を連携させてみる

Box2Dをちょっと勉強してみて、
このライブラリでは、
「物理演算させた結果を数値パラメータとして取り出して使う」、
ということがわかってきた。

Box2Dで遊んでいる人の多くがそうであるように、
このパラメータを何で使ったらおもしろいかというひとつの行き先として、3D表示がある。
Flashには3D表現のライブラリとしては、PaperVision3Dが有名です。

というわけで、3D表現とか未経験なので、勉強もかねて、
技術評論社の簡単なBox2Dサンプルの動作を、
Papervision3Dライブラリを使って3D表示させてみた。

↑ 画面クリックで、箱が落ちます。
Box2D部分はほぼ技術評論社のものと変更ありません。

Box2Dは、2次元の物理演算ライブラリなので、
PaperVision3Dを用いても、表示されている領域内では、2Dの動作しかしません。

Box2Dで、毎フレームごとのX座標、Y座標、傾きなどの値を取り出して、
PaperVision3Dの世界に落とし込んでいます。

というわけで、とりあえずPaperVision3Dの初体験ができましたw
がんばればもうちょっと面白いことできそうだなー。

↓ソース全部。

Continue reading

Box2Dでバスケのフリースローゲーム(2)

前のエントリのやつを調整。

画面クリックでスタート。"s"キーまたは、クリックで角度とパワーを決めてシュート!

友人に、いろいろとつっこまれたところを直しました。
↓変更箇所と、ちょっとしたネタバレ

Continue reading

Box2D でバスケのフリースローゲーム

以前のエントリで、思いついたBox2Dによるフリースローゲームを、
ごりごりと作ってみて、とりあえず動いた。

画面クリック後は "s"キーのみ。"s"で方向を決めて、"s"でパワーを決めてシュート!
・・・思ったより入らないけど、ちゃんと入りますよw

別で作っている組曲ボーナスのFlashのコードが基本です。
今回のは勢いでばばーっと作ったので、とてもソース全公開できない、、、。

"s"キーを押すごとにonEnterFrameの挙動を、「角度を決める」、「パワーを決める」等ふりわけて、
ゴールのSpriteと、ボールのSpriteが重なったらゴールした、と見なすというような処理としています。

もし全コードみたいという奇特な方がいらっしゃれば、
こっそりあげるかも。

本当にBox2Dエンジンおもしろいなー。

今後は組曲ボーナスFlash作りつつ、Progression Frameworkが気になっているので、
そっちに手を出したりするかも。

Home > Tags > Box2D

リンク
chocolataste-planner
millon

サーチ
Feeds
Meta
blog ranking ブログランキング・にほんブログ村へ
にほんブログ村 テクノラティのお気に入りに追加する

Return to page top