我可以在像素着色器中创建tile引擎吗?

时间:2012-10-29 23:55:24

标签: texture2d pixel-shader tile-engine

我正在尝试使用像素着色器和两个纹理创建一个tile引擎。一个纹理将保存tileset,一个纹理将保存地图。

是否可以将纹理数据作为实际(非采样)数据读取,以便从地图中提取索引?

读取像素数据的最佳方法是什么?

我已经尝试过text2D但是这样做有些不足之处(说实话,我对像素着色器来说有点新鲜。)

基本上,我需要一种方法来从地图纹理中的特定像素读取实际数据,并将其用作切片纹理的整数索引。假设我已经设法创建并将适当的纹理传递给着色器。

有什么想法吗?

(使用地铁的monogame,所以dx等级9_1)

1 个答案:

答案 0 :(得分:0)

如果您使用tex2D并传入(x + 0.5) / width(y + 0.5) / height,则应获得(x, y)处的确切像素值。更多信息请访问:Texture memory-tex2D basics