16 Jan 2014

Box2Dのworldを壁で囲むサンプル

Box2Dでworldを壁で囲むクラス worldWallsのサンプルです。



箱を作ります
var box = new worldWalls(debugDraw.GetDrawScale(), canvas, '1111');
worldBoxにscale(Box2D上の単位)とcanvas element(画面上の実寸を保持している)を渡しサイズを決定します。

第3引数のtrblはtop right bottom leftの略でバイナリ形式の文字列でどの辺に壁が欲しいかを指定します。 例えば 底辺にだけ壁が欲しい時は'0010'、上以外に壁が欲しい場合は'0111'を指定してください。

クラス外部からwallを参照したい場合は以下の様にプロパティにアクセスしてください

var walls = new worldWalls(debugDraw.GetDrawScale(), canvas, '0111');
walls.top.restition = 10; //右辺だけ強くバウンドするようにする。