2016-03-27 36 views
-2

是否有任何其他方式如何绘制纹理矩形(2个三角形)的图像?不使用“纹理矩形”方法绘制图像

我想遍历图像的像素,并在画布上绘制这些像素,我想要的。

我的目标是计算每个像素的位置(坐标)以获得圆柱投影图像。

有没有可能,请问您有什么想法?

回答

1

这不是WebGL的工作原理。

See this article on how WebGL works

基本上WebGL的绘制三角形(和线,和四边形/分)。您不会决定每个像素的位置,而是决定在哪里放置三角形的顶点,然后webgl会栅格化每个三角形,问您使用什么颜色来制作像素。

因此,对于极坐标,您需要反向工作。鉴于你可以知道WebGL将要绘制的像素,如果你正在使用极坐标,可以计算出该像素将绘制什么。

否则,您可以通过绘制带纹理的圆圈(使用许多三角形)来模拟极坐标,纹理在圆圈周围伸展。然后,您将首先画出纹理,然后假装X和Y是您的极坐标,最后将该纹理渲染到圆上。

不幸的是,分辨率会越来越差,离纹理的中心越远越差。尽管使用足够大的纹理,这可能不会是一个问题。至少这是最简单的解决方案。

+0

是的,那正是我需要做的 - 倒退。请问,有没有一些例子或教程?我只想看看如何先获得像素,然后再应用一些数学运算。 –