这不是真正的坐标系是如何工作的,除非你正在谈论屏幕空间。在这种情况下,整个屏幕被映射到[-1,-1](左上角) - [1,1](右下角)。这是无用的,所以不这样做。
你需要做的就是让自己一个精灵类,在其中执行精灵(纹理)的起源,你要绘制的发现:
public class Sprite
{
static Vector2 WorldOrigo = new Vector2(400, 240); //center of a 800x480 screen
Texture2D Texture { get; set; }
Vector2 Origin { get; set; }
public Sprite(Texture2D texture)
{
Texture = texture;
Origin = new Vector2(texture.Width/2, texture.Height/2);
}
public void Draw(Vector2 position, SpriteBatch spriteBatch)
{
spriteBatch.Draw(Texture, WorldOrigo + position - Origin, Color.White);
}
}
请注意,这只是一个例子。你的精灵可能会有动画等代码。
我会尝试,当我可以,谢谢 – Jcorretjer 2013-07-16 10:26:35