2012-01-13 27 views
1

私はゲームのヒーローボディのボックス形状を持っているなど、割り当てられた後にボディ内のシェイプを変更できますか?下向きの矢印を押すとヒーローが魔法使いになるサイズを変更するには体の形が必要です。box2dボディ形状の変更

私はすでにGoogleで検索していますが、図形をモディファイするという話題はあまり一般的ではないようです。多分あなたはこれを行うより良い方法を知っていることは不可能です。

答えて

0

私は、形状を置き換えて身体に取り付けるようなものがなければ、それは可能ではないと思います。

私の提案は、プリズムジョイントで接続された、文字の下部と上部の2つの別々のボディを持つことです。

(関節hereの詳細情報。)

+0

ええ、私は、そのオプションを検討したが、私は最小限に体の数を制限したいと私はBOX2Dマニュアルに記載されていない可能性があることを望みました。 –

+0

あなたがすることができるのは、身体を2つの器具から構成し、身体の残りの部分に関して上部の位置を変えることです。それはアニメーション効果ではなく瞬間的なものでなければならず、物理学的にうまくいくかどうかはわかりません - 私はテストなしでこれを書いていますが、私が考えることができる唯一の一体型ソリューションです。 – Andrey

+0

ええ、それは私のものですが、私は体内の形を動かすことができませんでした。そして、それらに変形を加えることができるのであれば私は興味がありました。 –

0
- (void)scaleShape 
{ 
    b2CircleShape shape; 

    for (b2Fixture *f = self.yourb2Body->GetFixtureList(); f; f = f->GetNext()) 
    { 
     shape = *(b2CircleShape *)f->GetShape(); 

     self.yourb2Body->DestroyFixture(f); 
     shape.m_radius += 0.01; 
     self.yourFixture.shape = &shape; 
     self.yourFixture.isSensor = true; 
     self.yourb2Body->CreateFixture(&self.yourFixture); 
    } 
関連する問題