给出一个坐标,如何在XNA中为单个像素着色?即。
Coordinate(10,11).Color = Color.Red
答案 0 :(得分:4)
如果你计划做很多像素,对于像粒子系统这样的东西,最好使用着色器。您最终可能会使用SpriteBatch遇到性能问题。
答案 1 :(得分:2)
取决于您的坐标,有两种方式:
对于屏幕坐标,最简单的方法是让Texture2D
只保留一个白色像素,然后使用SpriteBatch
绘制并将所需颜色传递给Draw
方法
对于3D空间坐标,您要使用PointList。
你可以做一些更复杂的事情:使用Texture2D.SetData
在运行时制作你自己的单个白色像素纹理。或者,也可以使用PointList
和项目来筛选空间。