使用XNA中的点创建纹理2D Sprite

时间:2011-10-30 05:30:15

标签: c# xna

我正在使用C#中的平滑地形生成算法并使用XNA显示数据。

我正在制作它所以它在每次迭代的每个点之间创建一个新点,在两者之间的随机高度。这工作正常,我得到当前结果,随机放置点。

Current Result

现在我要做的是将这些点变成原始(我认为就是这样)并将它显示为一座山,显然是使用山脉纹理。下面的示例(使用不同的点数据,在油漆中组成)

Example Result

非常感谢任何帮助或提示,并期待您的回复。

感谢。

颠簸

1 个答案:

答案 0 :(得分:0)

您可以在基元和屏幕底部之间的点之间交替绘制三角形条带,使其与之前的点相同,沿着屏幕底部踩踏。

我不熟悉在XNA(只是openGL)中绘制图元,但它应该是相似的。

你拿分,例如A,B,C和D. 绘制条带。你可以将你的顶点排序为;

vertex1= A  
vertex2 = point(A.x, 0)  
vertex3= B  
vertex4 = point(B.x, 0)  
vertex5= C  
vertex6 = point(C.x, 0)  
vertex7= D  
vertex8 = point(D.x, 0)  

(我假设屏幕的底部有一个y坐标为0,它可以是屏幕高度或你选择的任何颜色)

http://en.wikipedia.org/wiki/Triangle_strip