ホーム > タグ > Box2D
Box2D
Box2d で風雨に揺れる葉っぱのようなもの
なんか夏休みろくにとれなかったので、
最近インドネシアはバリ島に遊びに行ってました。
バリ島は雨季が近いということでスコールも1度味わってきました。
というわけで、雨と風にたなびく葉っぱのようなものを強引にBox2Dで作ってみました。
雨粒のあたり判定が甘いのは仕様です。
ちょっとこれを使ってまた別のものを作ろうと考えています。
↓ 以下、種明かしのようなもの
- Comments: 0
- Trackbacks: 0
Box2D オブジェクトにオブジェクトをあてて回転させる
久々に、、、Box2Dさわってみた。
これの続きです。
ってマジで久しぶりだ(^-^;;
今までジョイントには全く手を出さなかったので、
モノがぶつかると回転するオブジェクトを追加してみました。
音符がぶつかることで障害物が回転します。
↓以下動くものと、一部のソース
- Comments: 0
- Trackbacks: 0
Box2D,Papervision3Dでフリースローゲームを3D表示
前々回のエントリでBox2DとPapervision3dを連携させてみて、
前のフリースローも似たようなことできるんじゃないかと思ってやってみた。
ボールを投げたところからだけ3Dでシミュレーションします。
環境によってはすごい重いと思います。
縦長w 長すぎましたねw 下だけ表示でもなんとなく操作できます。
今回は「←」「→」キーで前後に移動できるようにしました。
「クリック」、「s」キーで方向、パワー決定してシュート!
基本的には前のエントリとやってることは同じです。
Box2dな方のソースは整理中・・・。
シーンをENTER_FRAMEイベントで書き出し続けつつ、
Box2DのほうからupDatePositionsを呼んで、カメラ、ボールの位置を変更しています。
- private function onEnterHandler(event:Event):void {
- ball.rotationY += 5;
- renderer.renderScene(scene, camera, viewPort);
- }
- public function upDatePositions( boy_pos, ball_x, ball_y,ball_angle) {
- camera.z = -100 + boy_pos/1.5;
- ball.z = -100 + ball_x * 90;
- ball.y = 925 - ball_y * 90;
- }
↓Papervision3Dのほうのソース全部
- Comments: 0
- Trackbacks: 0
Box2D と PaperVision3D を連携させてみる
Box2Dをちょっと勉強してみて、
このライブラリでは、
「物理演算させた結果を数値パラメータとして取り出して使う」、
ということがわかってきた。
Box2Dで遊んでいる人の多くがそうであるように、
このパラメータを何で使ったらおもしろいかというひとつの行き先として、3D表示がある。
Flashには3D表現のライブラリとしては、PaperVision3Dが有名です。
というわけで、3D表現とか未経験なので、勉強もかねて、
技術評論社の簡単なBox2Dサンプルの動作を、
Papervision3Dライブラリを使って3D表示させてみた。
↑ 画面クリックで、箱が落ちます。
Box2D部分はほぼ技術評論社のものと変更ありません。
Box2Dは、2次元の物理演算ライブラリなので、
PaperVision3Dを用いても、表示されている領域内では、2Dの動作しかしません。
Box2Dで、毎フレームごとのX座標、Y座標、傾きなどの値を取り出して、
PaperVision3Dの世界に落とし込んでいます。
というわけで、とりあえずPaperVision3Dの初体験ができましたw
がんばればもうちょっと面白いことできそうだなー。
↓ソース全部。
- Comments: 2
- Trackbacks: 1
Box2Dでバスケのフリースローゲーム(2)
前のエントリのやつを調整。
画面クリックでスタート。"s"キーまたは、クリックで角度とパワーを決めてシュート!
友人に、いろいろとつっこまれたところを直しました。
↓変更箇所と、ちょっとしたネタバレ
- Comments: 0
- Trackbacks: 0
Box2D でバスケのフリースローゲーム
以前のエントリで、思いついたBox2Dによるフリースローゲームを、
ごりごりと作ってみて、とりあえず動いた。
画面クリック後は "s"キーのみ。"s"で方向を決めて、"s"でパワーを決めてシュート!
・・・思ったより入らないけど、ちゃんと入りますよw
別で作っている組曲ボーナスのFlashのコードが基本です。
今回のは勢いでばばーっと作ったので、とてもソース全公開できない、、、。
"s"キーを押すごとにonEnterFrameの挙動を、「角度を決める」、「パワーを決める」等ふりわけて、
ゴールのSpriteと、ボールのSpriteが重なったらゴールした、と見なすというような処理としています。
もし全コードみたいという奇特な方がいらっしゃれば、
こっそりあげるかも。
本当にBox2Dエンジンおもしろいなー。
今後は組曲ボーナスFlash作りつつ、Progression Frameworkが気になっているので、
そっちに手を出したりするかも。
- Comments: 0
- Trackbacks: 0
Home > Tags > Box2D



