前面的文章里,基本上都忽略了顶点的z坐标和w坐标,直接把OpenGL当做2D API来使用,本篇文章介绍一下w坐标的用处。
透视
为了在2D的屏幕上表现出3D效果,OpenGL使用的是一种叫做透视的古老技术。说的更具体一点,Vertex Shader处理后的顶点坐标,并不是直接被OpenGL使用,而是还要经过Perspective Division处理。也就是说x、y和z坐标会被w除,w越大,得到的结果就越小,也就越接近0,看上去就越远。
代码和效果
在OpenGL Console里执行下面的脚本:
import java.nio.ByteBuffer
import java.nio.ByteOrder
import javax.media.op

本文详细探讨了OpenGL ES2中w坐标的用途,特别是在实现3D透视效果中的关键作用。通过透视技术,顶点的x、y、z坐标会被w坐标除,w值越大,表示距离观察者越远,从而在2D屏幕上产生深远的3D视觉效果。文章结合代码示例进行了深入解释。
--神秘的w&spm=1001.2101.3001.5002&articleId=12707457&d=1&t=3&u=b25bf0aac19d498cb233b218563e5dff)
2162

被折叠的 条评论
为什么被折叠?



