描き方のモデルにXNAのBasicEffect
質問
思い描くモデルXNA.私gona先を交わしたと言われてい紙でfbxファイル形式でのコンテンツのパイプラインでご用意してお待ちしています。どのコードを追加するには、Draw()メソッドのWindowsGame()?たって、以下のもの全てを取得しますのでグレー画面(グレーブルの透明色されているということを、すなわち,このモデルは輸入のとする。負荷、スローなしエラーと呼んで"鉢".
誰でもできるので教えて私はなぜこんか?
protected override void Draw(GameTime gameTime)
{
GraphicsDevice.Clear(Color.CornflowerBlue);
BasicEffect b = new BasicEffect (graphics.GraphicsDevice, new EffectPool ( ));
foreach (ModelMesh m in Bowl.Meshes)
{
b.View = Cam.mView;
b.Projection = Cam.mProj;
b.World = mWorld;
b.EnableDefaultLighting ( );
b.Begin ( );
m.Draw ( );
b.End ( );
}
base.Draw(gameTime);
}
いただきました、いする場合と同じ結果が得られますが殺人の効率だったので、いろいろなものをうにするためにも必要となり作業前の最適化します。
解決
本当に共通の課題きを描こうとも、カメラなみお返事ありがとうございます。います。もうひとつの問題は、そのモデルになっているものはありません規模ります。例えば、カメラは5台のzもこのモデルは、10台の広さ、カメラを効果的に内部のモデルです。
どの描画質問は、Microsoftが良いdocsす: http://msdn.microsoft.com/en-us/library/bb203933.aspx
利用できるこのスニペットとしてのヘルパー:
private void DrawModel(Model m)
{
Matrix[] transforms = new Matrix[m.Bones.Count];
float aspectRatio = graphics.GraphicsDevice.Viewport.Width / graphics.GraphicsDevice.Viewport.Height;
m.CopyAbsoluteBoneTransformsTo(transforms);
Matrix projection = Matrix.CreatePerspectiveFieldOfView(MathHelper.ToRadians(45.0f),
aspectRatio, 1.0f, 10000.0f);
Matrix view = Matrix.CreateLookAt(new Vector3(0.0f, 50.0f, Zoom), Vector3.Zero, Vector3.Up);
foreach (ModelMesh mesh in m.Meshes)
{
foreach (BasicEffect effect in mesh.Effects)
{
effect.EnableDefaultLighting();
effect.View = view;
effect.Projection = projection;
effect.World = gameWorldRotation * transforms[mesh.ParentBone.Index] * Matrix.CreateTranslation(Position);
}
mesh.Draw();
}
}
所属していません StackOverflow