滚动3D对象,它的纹理向上

时间:2012-10-29 22:50:07

标签: c# windows xna

所以我正在构建一个Windows游戏,并且我在原语上有一些文本作为纹理。我试图向上滚动原语,但无法实现这一点。我试过简单地在Vector3的Y位置添加一个值,但这里有问题。

我使用:

初始化顶点
verts = new VertexPositionTexture[4];
verts[0] = new VertexPositionTexture(new Vector3(-xPosition, yPosition, 0), new        Vector2(0,0));
verts[1] = new VertexPositionTexture(new Vector3(xPosition, yPosition, 0), new Vector2(1, 0));
verts[2] = new VertexPositionTexture(new Vector3(-xPosition, negY, 0), new Vector2(0, 1));
verts[3] = new VertexPositionTexture(new Vector3(xPosition, negY, 0), new Vector2(1, 1));

然后,当我尝试通过添加Y坐标向上滚动时,可能会发生一些事情。

如果我添加y坐标的变量,如下所示:

yPosition += .01f;
negY += .01f;

verts[0].Position.Y = yPosition;
verts[1].Position.Y = yPosition;
verts[2].Position.Y = negY;
verts[3].Position.Y = negY;

纹理或原始一起甚至不再出现。如果我注释掉negY + = .01f,则原语的顶部向上滚动,但这开始明显地扭曲纹理。为什么这不起作用?!为什么要在整个交易中添加到negY bork?

0 个答案:

没有答案