1

javascript の box2D で多角形の頂点を手動で定義しようとしています。最終的にはボックスの各辺のサイズを手動で変更したいのですが、最初に頂点で描画できるようにする必要があります (サイズ変更メカニズムは既にあります)。マニュアルの例を見ましたが、ActionScript 用で、javascript では動作しないようです。さまざまな方法でポリゴンを定義しようとしましたが (スタンドアロン ポリゴン = new b2Polygon; など)、違いはありません。

新しいポリゴンをどのように定義しても、フィクスチャを作成する呼び出しで box2D ソースがエラーをスローします。エラーには、「tVec が未定義です」と表示されます。これは、box2D 関数の変数です: b2PolygonShape.prototype.ComputeAABB = function (aabb, xf)

コードの関連部分は次のとおりです (fixDef と bodyDef はコードの前半で作成されます)。

        var vertices = []; 

        vertices[0] = new b2Vec2()
        vertices[0].Set(1,1); 
        vertices[1] = new b2Vec2(); 
        vertices[1].Set(1, 6);
        vertices[2] = new b2Vec2(); 
        vertices[2].Set(6, 6);
        vertices[3] = new b2Vec2(); 
        vertices[3].Set(6, 1);

        fixDef.shape = new b2PolygonShape; 
        fixDef.shape.Set(vertices, 4);  
        world.CreateBody(bodyDef).CreateFixture(fixDef); 

これはしばらくの間私に問題を引き起こしているので、どんな助けも大歓迎です。

4

0 に答える 0