下载此文档

【unity】mesh网格编程(二)流体.doc


文档分类:汽车/机械/制造 | 页数:约12页 举报非法文档有奖
1/12
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/12 下载此文档
文档列表 文档介绍
【Unity】Mesh网格编程(二)流体通过Mesh网格随Sin函数实时变化模拟液体的流动,从而达到动态水的效果。对,你没有看错。这是本博客的一个系列,但同时也是一篇转载。原文已经做得很棒了!不做重复工作,直接转入本系列中。Mesh网格编程(一)流体水本文通过Mesh网格随Sin函数实时变化模拟液体的流动,从而达到动态水的效果。本文分享自蓝鸥科技杜老师。Mesh网格编程步骤:一:确定数量确定该几何图形应有多少个三角形面,顶点坐标、顶点序列、UV贴图、法线向量皆为三角形面数的三倍。二:根据三角形面确定顶点坐标这里我****惯把一个面的顶点确定好之后再去找下一个面,这样做可以是法线和顶点序列确定起来很容易。但是要注意的是在确定顶点时要按照顺时针顺序确定,否则会导致三角形面相反。三:确定法线法线大致分为两种:其一是棱角分明的几何体,这种几何体的法线可以用确定好的顶点坐标两两相减,得到的向量做叉乘并赋值给三个顶点上的法线。其二是圆滑的几何体,这种几何体需要求出该点在曲面上的切线,从而确定垂直于切线的法线。如果是圆形。可以使用顶点减圆心所得的向量。此外,求得的法线尽量单位化,否则可能出现一个面上的颜色不同。四:确定顶点序列若三角形顶点按照面数去确定,顶点序列就会变得非常简单,按顺序赋值即可。五:确定UV贴图根据所做几何体的不同,贴图左边也会有所改变,并不固定。六:创建网格实现代码如下:;;:MonoBehaviour{;=10;//=10;//=3;//=10;//[]vs;//[]ts;//[]newUVs;//[]newNormals;//(){=((tier+1)*8+4)*3;//=newVector3[temp];=newint[temp];=newVector2[temp];=newVector3[temp];=2*;//=0;(inti=0;i<tier;i++){=i*length/tier-length/2;=(i+1)*length/tier-length/2;34.//[count]=newVector3(pos1,(+i*dis),width);[count+1]=newVector3(pos2,(+(i+1)*dis),-width);[count+2]=newVector3(pos1,(+i*dis),-width);[count+3]=newVector3(pos1,(+i*dis),width);[count+4]=newVector3(pos2,(+(i+1)*dis),width);[count+5]=newVector3(pos2,(+(i+1)*dis),-width);42.//[count]=(newVector3(1,(+i*dis),0));[count+1]=(newVector3(1,(+(i+1)*dis),0));[count+2]=(newVector3(1,(+i*dis),0));[count+3]=(newVector3(1,(+i*dis),0));4

【unity】mesh网格编程(二)流体 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数12
  • 收藏数0 收藏
  • 顶次数0
  • 上传人iris028
  • 文件大小44 KB
  • 时间2019-12-07