Unity3D动态生成模型_第1页
Unity3D动态生成模型_第2页
Unity3D动态生成模型_第3页
Unity3D动态生成模型_第4页
Unity3D动态生成模型_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

MeshFiltermeshF=cannelObject.AddComponent<MeshFilter>();Meshmesh=meshF.mesh;mesh.vertices=vertexArray;mesh.triangles=triangleArray;mesh.uv=UVArray;mesh.RecalculateNormals();5、 现在物体已经存在了骨骼。下面就是给物体添加渲染器,让其在场景中渲染出来。第一步先寻找一个的Shader,当然你也可以自己定义一个。6、 定好Shader之后,再找一张贴图。贴图是ps自己做还是网上找一个这个随便你了。MeshRenderermeshR=cannelObject.AddComponent<MeshRenderer>();Materialmaterial=newMaterial(Shader.Find(矿Diffuse"));material.mainTexture=p_texture;meshR.materials=newMaterial]](material);7、现在已经可以看到这个物体了,在场景里面。下面就为其添加碰撞器,让其符合游戏特性。MeshCollidercollider=cannelObject.AddComponent<MeshCollider>();位置,并以其指定的空间角存在。cannelObject.transform.position=p_startPostion;cannelObject.transform.Rotate(p_eulerAngel);^^^?这里^态生成模型任务收工^一章会介绍^型之间的布尔运以符合实际情况。最后贴上一张我的效果图。Unity3D运行时动态生成模型<二>选择模型2014-01-2310:01:37|分类:技术相关|标签:unity3d轮廓|举报|字号订阅接上一篇文章,动态生成了简单的模型。下一步就是需要对模型进行编辑,首当其冲的是选择模型。即当鼠标移动到物体上时,物体有一定的特效,本文选择的是给物体增加一个薄边。当对物体单击来选择或撤销选择时,也需要有一定的特效,即当物体被选择之后,物体需要一个特效表示自己被选择了。本文选择的是给物体一个厚边。

此处的实现参照/forum/read.phpftick3592。此处对于实现的细节不再详细介绍,直接参考此文章即可。本文主要对于原样例代码进行了整改,优化。以达到无入侵式显示轮廓。即为达到该效果,仅需把需要显示轮廓的物体调用全局函数即可实现,而无需按照上文中那般,需要提前绑定一些脚本以及创建轮廓摄像机(本质上这些事情依然存在,不过由代码自动完成)。示例代码:艮口哪里需要,直接调用OutLineManager的相关方法即可。相对而言,更好在项目中部署使用。项目下载地址/detail/u010302605/6876007.最近缺分,不好意思各位了,望谅解Unity3D运行时动态生成模型<三>编辑模型2014-02-1120:52:53|分类:技术相关|标签:unity3dgizmo位移旋转缩放|举报|字号订阅年后开工第二天,整理了下去年年末写的功能。去年,先写了模型的生成以及选择,但对于VR来说,这个还够,因为我们绕不开的一个问题,我们需要在线对模型进行编辑,如移动位置旋转缩放等。如果纯粹代码实现移动缩放旋转,相信入门的都会。但我们肯定要一个友好的交互,即给用户一个比较友好的编辑方式。我个人认为这方面,也不用费脑筋了,直接看看3dmax或者unity3d自身提供的编辑方式即可,这种方式真的很好,也许还存在更好的。于是我的目标就变成了山寨。同网友聊天过程中得知在unity商店里面有一款RTGizmo,价格五刀,实现的功能即为我需要的功能。果断,google之,最后花费一定资源分从某网站下载到手,打开一看,竟然是UnityScript直接开发的,故而也触动了我的欲望C#整改之。缩放:位移:puMEt(hildEunt[Metw由群1|隔标住肝&兀珂止舐踮费wl]g统)ipubicV«ADr3eulerAnglesiget5tt)〕F讪h用希寸forward何井KfJ网hRtcdh】忒hm伊d(刷』怕旬rri凶爆4口』10::1如"旭需切■淑【引]勺此【思蝠dtiiipW社云】叩£皆[3皓如%17^31M叩p加ImI反1|甦)pubicVstorSlocilELlerAngl»用箕we川pubk"M帅locilRixkiDniget;ssl;}IpvblcQuatefflianIdcalRpUtigii{gets改)pubicVector]而ISMIH臾1pbk■命11触MTffiWldM抻谊!get]pvbkVcd;pr3IfiiiSjSulfi[jet}ipubicTrjn^kfniparwit{IM-shfld:rnpi(Me:hodljm3l0p:^r!$.lirfrralCall),%l昂[get[liMiix3rnp诉命jX【吓1。砒5£」「坦mCdl.励*Kr/Util]MtfpubkVeatrSpvsitignget;}fubkVedorSright■(g*pubkTrjMkf™rootf恢世恤』叩(M!』hcd而阳ptiw见唳叩』匚孤1/*那陟恤匚cal]get)阳bk血北川。「f冲前n〔9北汛IpvbkVertorlup!getsrt,E」bkMa烦心■!woridTgcgcalMMrixI次] blog.163.can'pergJnJ<Li我们需要关注的属性包括:I) 表征子变换个数的childCount3) 表征相对父物体的空间角信息localEulerAngles4) 表征相当父物体的空间位置信息localPosition5) 表征相对父物体的缩放信息localScare6) 表征相互世界坐标系的空间角信息eulerAngles,rotation7) 表征相对世界坐标系的位置信息postion8) 表征相对世界坐标系的缩放信息lossyScale9) 表征从自身坐标系到世界坐标系转换的矩阵localToWorldMatrix10) 表征从世界坐标系到自身坐标系转换的矩阵worldToLocalMatrixII) 表征自身坐标系的X方向right12)表征自身坐标系的Y方向up14publicsealedclassMeshRenderer:Renderer//MethodspublicMeshRendererQ;ExpandMethods我们看到MeshRenderer其本身不存在任何状态性成员,均为直接继承于其父级Renderer。Renderer的代码如下我们查看其具有set类的属性(只能get的不会具有状态记忆功能,仅仅是从其他状态成员上计算所得而已。)1) 表征是否投射阴影的标志castShadows2) 表征是否启用的标志enabledo(很多人喜欢问如果隐藏一个物体,这个就是隐藏物体的开关)3) 表征应用到该渲染器的光照图的索引lightMapIndex4) 表征应用到该渲染器的光照图的位置以及偏移lightMapTillingOffset(Vertor4)pifolicwifaddassMfihFiiHr:Gwnpcwnt/fPrcperbnpubicM«chimsh[圉血由叩'侗姓h&dimplZp腌箱旭点口血加叩时也曙3]奥[思收油汩(MTiddiirfilC1街邮』思ml项LW郎pw也&』]蛇t)pubicMtsh(hiredMesh:["h碱顽flM^ho![叩IC巾叫保叫匕丽'尬原时『1«亦』11g蛇[尬蜘dEM瞄加下成而牌如帅无痈Wr叩Messkallb戒]catifips#M^lifldi HoglSXcoin'peiiguin.ku可以看到他只有两个属性,一个是mesh,一个是sharedMesh,两个都i是Mesh对象。通过官方手册,我们得知这两个属性的区别在于,mesh是当前物体独有的,你修改他,不会影响其他也使用这个网格的物体,但是如果修改sharedmesh,则会连带其他使用该网格的物体一起变化。那么,对于此处,我们随便选择一个即可,因为我们自己保存加载物体,不会出现多个物体使用同一个网格。Mesh:pubicMatrirfrfQbindpHEEI 或htehodSmpQ伽心*苗。忧W顾per&同l|get[V血血伸(MMhodllmpK}pikrs』nl£rru<!iC地枷网icrln如R]set)pubkincbkndsMpKomt"牌品盘nbrrlj«”办Mjg吐public氏口顼膈口的bon『仰igllts\[Hplhcd叩印血启:啡心时^加归fLsi.讨m叩mm土』']get7>|1-'^'C]iipii;^e:hDd:fnpOptior£.irt#nr.jlL3lj'iVrjpperwLjcalllcet,jzubicEdjrd-bsurdf• 冲]卜扯冲1ImoUftAmfil[[Mwshsdl叩1|鞘日她由咋1以:比危屈知3最1&ftrappedewfjal]*汽}pubkteorj](filers仰甘也圳口那烦讷1叫【(汹gmmrml”(1神「卯W帽I就城时《«13呼叫机引叫10威551酣"*;可小「叩??-1咛1汕]灌'1) 表征网格顶点信息vertices2) 表征顶点对应的颜色信息colors3) 表征三角面信息triangles4) 表征纹理坐标UV5) 表征子网格的数量subMeshCount,每一种材质均对应一个独立的网格列表Bi-:.GnityKuEinfl.Bprj)lirch^T血dslBchsvior:lfccHEfh3Ti(nir\/'•上。&做口bj虻t虹r刘一//Vstthisf*iritislitMioneuc-itSiut0[}//Kpflitjihcalled."Iop?EfrOii日“蛆EH诳。E}B娅CwtUIOEIt斜L如讪临*如以料0,码麒扩旧外[):■■-

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论