博文

目前显示的是 八月, 2018的博文

浅谈Vector3的点积与叉积

图片
一、点积(又称“数量积”、“内积”) 二、叉积(又称“向量积”、“外积”)

Unity3D中MeshRenderer的使用

图片
任何一个模型都是由许多网格面组成的,而面又是由许多三角形组成的。 操作环境:Win7操作系统、Unity3D 4.0 创建网格面的核心就是为其添加2个组件:Mesh Renderer(网格渲染器)和Mesh Filter(网格过滤器)。 添加组件的方法有2种: (Ⅰ)选择一个游戏对象,然后执行Component→Mesh→Mesh Filter 和Mesh Renderer。 (Ⅱ)通过脚本实现: 【理论分析】 由于网格面是由三角形组成的,所以我们有必要知道三角的三个顶点的位置。数组mesh.vertices就是用于存储三角形顶点坐标。 当顶点数超过3个的时候,我们连接点的顺序不同,就会绘制出不同形状的图形,所以我们必须要获得我们想要的连接点的顺序。数组mesh.triangles就是用来记录连接三角形的顺序的。由于每绘制一个三角形需要知道其三个顶点的顺序,那么绘制n个三角形就需要知道3*n个点的顺序。即数组mesh.triangles的长度是3的倍数。 如上图,如果我们已知顶点的坐标和顺序如上,怎样绘制出这样的图形? 已知5个点,选择3个点来连接,将其全部连接完有很多种方式,这里我就不计算了~嘻嘻嘻。但是不是每一种方式都能连接成上面的图形的。例如:(0,1,2),(1,2,3),(2,3,4)就无法完成上面的图形。所以我们必须要获得三角形顶点的索引顺序。完成上面图形我采用的顺序:(0,1,2),(0,2,3),(0,3,4)。大家也可以使用其他的顺序。那么我的mesh.triangles=new int[]{0,1,2,0,2,3,0,3,4};而mesh.vertices的值就是点的坐标了。  【案例】拖动鼠标来绘制一个圆弧 ...