Matrix projection = Matrix.CreateOrthographicOffCenter(0, viewport.Width, viewport.Height, 0, 0, 1); Matrix halfPixelOffset = Matrix.CreateTranslation(-0.5f, -0.5f, 0); basicEffect.World = Matrix.Identity; basicEffect.View = Matrix.Identity; basicEffect.Projection = halfPixelOffset * projection; basicEffect.TextureEnabled = true; basicEffect.VertexColorEnabled = true; spriteBatch.Begin(0, null, null, null, null, basicEffect);
You can pass BasicEffect to the SpriteBatch.Begin method. This allows you to use a custom shader using spritebatch, and more interesting in your case, allows you to control the camera and convert an ATV that supports SpriteBatch. The above value is standard and should behave like a standard SpriteBatch, you cannot change the points specifically, but the rotation should achieve the effect that you are after.
To change the three-dimensional location of a square, simply change the basicEffect.World matrix.
Example:
basicEffect.View = Matrix.Identity * Matrix.CreateRotationY(.002);
source share