一、Mesh 是怎么构建出来的?
在上节课中,我们介绍了如何添加一个立方体到场景中并渲染到画布上。那么这个立方体是如何被构建出来的呢?我们又该如何控制他的尺寸呢?
记得上节课我们在构建立方体也就是调用 creatBox 方法的时候,传入了一个空的对象。其实可以通过它来控制立方体的一些属性,说明如表。
option | 值类型&说明 | 默认值 |
---|---|---|
size | (number) 立方体每一面的大小,也就是长宽高统一都是这个值 | 1 |
height | (number) 单独设置高度Y,覆盖size的高度 | size |
width | (number) 单独设置长度X,覆盖size的长度 | size |
depth | (number) 单独设置宽度Z,也称为深度,覆盖size的长度 | size |
sideOrientation | (number) 物体可被看到的面 | 默认0,正面,可选:0 正面,1 背面,2 双面 |
这里要怎么理解 sideOrientation 呢?它涉及到了一个知识点:面剔除。面剔除是节省性能开销的一种有效方法,通过将看不见的面的片段舍弃,可减少50%以上的开销。判断一个三角形的正向需要根据其顶点的环绕顺序,默认情况下,顶点逆时针方向环绕为正向。
注意:如果选择正面,那么当相机位