2011-07-22 8 views
2

私はXNAでfarseer 3.3をトライアルしています。私の人生にとって、私はDebugViewXNAを動作させることができません。Farser 3.3 DebugViewXNA - フックアップ

私はそこにいくつかの体を持つワールドオブジェクトを持っています。ボディはポリゴンモデルに固定されているので、私はこれらを描画するためにdebugviewXNAクラスが必要ですが、その方法を見つけることはできません。頂点に渡す必要があると仮定しますが、Worldオブジェクトからこれらの頂点にアクセスする方法を見つけることができず、どのメソッドを正確に呼び出すかもわかりません。私が遠く離れた3.3で見つけた問題の1つは、サポートは "例を見る"ことに限られているようだが、答えを示すようには思われない、Googleは私にこのように感じているだけではないことを伝える。

経験豊富な人の助けを借りてください。事前

答えて

2

ありがとうございますDebugViewXNAに任意の頂点を渡す必要はありません - それは世界のボディに取り付けた器具からその情報をつかみます。

physicsWorld = new World(GRAVITY); 
physicsDebug = new DebugViewXNA(physicsWorld); 
physicsDebug.LoadContent(this.GraphicsDevice, this.Content); 
physicsDebug.AppendFlags(DebugViewFlags.Shape); 
physicsDebug.AppendFlags(DebugViewFlags.PolygonPoints); 

以降の描画のために:

Matrix proj = Matrix.CreateOrthographicOffCenter(0f, GraphicsDevice.Viewport.Width, GraphicsDevice.Viewport.Height, 0f, 0f, 1f); 
Matrix view = camera.GetViewMatrix(Vector2.One); 
physicsDebug.RenderDebugData(ref proj, ref view); 
+0

おかげアランダは、私が見た中で最高の例のthatsここで私はそれが働いて得た方法です。唯一のカメラオブジェクトの部分は私が得ることはありません...私はちょうどproj行列を渡すと繋がって、それはコーナーに小さなバージョンを出力します。 – Nick

+0

申し訳ありませんが、ビューパラメータの行列を生成するために使用できる独自のカメラクラスを開発することができました。奇妙なことですが、サイズを正しく設定することはできません。私が試しているプロジェクトは空想ではなく、ズームや動きのない1280 x 720の環境だけです。 – Nick

+1

その特定のカメラクラスは[here](http://www.david-gouveia.com/2d-camera-with-parallax-scrolling-in-xna/)からリッピングされました。特にない。それが役に立てば幸い。 – Aranda

関連する問題