掌握flash的as3图形学Stage3d的屏幕坐标和纹理UV采样坐标

时间:2022-11-08 15:28:20

很多入门的朋友,可能对Flash中Stage3D的坐标系比较不清楚。

这里我写个图文来说明一下它的坐标系倒底是怎么样的?

有图好明白,所以我画了一个图。

(1)其中,蓝色箭头坐标,表示是Flash的舞台Stage坐标系:

原点(x=0,y=0)位于屏幕的左上角。+x为右方向,+y为向下方向。

(2)其中,红色箭头坐标,表示是Flash的Stage3D坐标系,3D空间投影到2D屏幕上。

原点(x=0,y=0)位于屏幕的中心。+x为右方向,+y为向上方向。


掌握flash的as3图形学Stage3d的屏幕坐标和纹理UV采样坐标

(原创图片,如需转载,请注明出处)


以上图片,其中还标注了Stage3D的纹理采样坐标。

以上图为例,纹理的左角上u=0,v=0。右下角u=1,v=1

准确来说:

我们称纹理坐标为uv坐标。u是水平,v是垂直向下,坐标原点是纹理图的左上角(0,0)。

纹理采样坐标用u,v表示,其实和xy意思差不多啦~

纹理采样在着色器中使用插值采样的方法。

掌握flash的as3图形学Stage3d的屏幕坐标和纹理UV采样坐标

(此图片来自于百度)

纹理图可大可小,小到4,8,16,32.大到1024x1024,1024x2048。

尺寸完全是乱的,不同的,所以这个时候,我们就不能通过纹理图的尺寸来设置坐标了。

但是我们可以使用比率来做。一张图,最大为1,最小为0.中间为0.5。这个比率总不会变把。

因此呢,gpu就通过这种方式来根据uv值对纹理图进行采样。


好了,看完图片,是不是心中有谱了呢?