WebGL编程指南(5)进入三维世界

书本源代码 https://download.csdn.net/download/qfire/10371055

5.1 视点、观察目标点和上方向


      我们可以用上述三个矢量创建一个视图矩阵,然后将该矩阵传给顶点着色器。视图矩阵可以表示观察者的状态,含有观察者的视点、观察目标点、上方向等信息。Matrix4.setLookAt()函数可以根据上述三个矢量来创建出视图矩阵。ch07/LookAtTriangles.html


 从指定视点观察旋转后的三角形


 用键盘改变视点

5.2 可视范围(正射类型)

 不绘制可视范围外的对象,是基本的降低程序开销的手段

 顶点着色器的执行流程

5.3 可视空间(透视投影)

 投影矩阵的作用

5.4 正确处理对象的前后关系

 WebGL为了加速绘图操作,是按照顶点在缓冲区中的顺序来处理它们的。

 WebGL提供了隐藏面消除功能


 深度冲突:当几何图形或物体的两个表面极为接近时,就会出现新的问题,使得表面看上去斑斑驳驳的。WebGL提供多边形偏移

5.5 立方体

  使用gl.drawElements()代替gl.drawArrays()函数进行绘制。


  通过顶点索引绘制物体




猜你喜欢

转载自blog.csdn.net/qfire/article/details/80080205