1
ここでは、ここに示していない頂点で定義されたいくつかの図形を描いています。XNA - オブジェクトを遠くに描画する方法
Vector3 position = (5,5,1);
Matrix world = Matrix.CreateTranslation(position);
BasicEffect basicEffect = new BasicEffect(graphicsDevice);
Matrix view = Matrix.CreateLookAt(new Vector3(0, 0, -20), new Vector3(0, 0, 100), Vector3.Up);
Matrix projection = Matrix.CreatePerspectiveFieldOfView(MathHelper.PiOver4,
graphics.Viewport.AspectRatio,
1.0f,
100);
// Set BasicEffect parameters.
basicEffect.World = world;
basicEffect.View = view;
basicEffect.Projection = projection;
//....draw some shape with basicEffect
Iは、その中心が画面上の同じ(X、Y)の画素に留まるが、それはより遠くだとして、それは全体小さくなるようだけ遠く同じ形状を描画したいです。
私は位置ベクトルをスケーリングしようとしたが、それと全く成功しなかったしました:
position .Z *= 2;
position .X *= 2;
position .Y *= 2;
これを行うには正しい方法は何ですか?