ここに示されていない頂点によって定義された形状を描く方法を次に示します。
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
同じ形状を遠くにペイントして、その中心が画面上の同じ (x,y) ピクセルにとどまるようにしたいのですが、全体的には遠くにあるほど小さくなります。
位置ベクトルをスケーリングしようとしましたが、成功しませんでした:
position .Z *= 2;
position .X *= 2;
position .Y *= 2;
これを行う正しい方法は何ですか?