源码已上传至github,并持续更新,链接请看底部。(本帖跟随github持续更新)

继先前的一篇MeshEditor之后,MeshEditor第二版发布,这次在先前的基础上加入了为模型新增顶点以及删除顶点的功能,还有多项针对顶点的操作,类似于顶点塌陷的功能将会有效的降低模型面数(目标最好是仅有材质没有贴图的模型),这次我将以一个例子来大致讲解"模型网格编辑器(高级)"的多项功能,例子是:制作一个剑痕模型。

传送门(模型破碎模型融化模型镜像

好了,我们进入正题:




第一步:


首先,我们在场景中新建一个Cube,并为其添加我们的模型网格编辑器(高级)组件,先前一版的编辑器并未移除,也并未融合,虽然先前一版只支持更改顶点的位置,但在很多情况下或许只需要这个功能。


第二步:


打开我们的模型网格编辑辅助界面,Window-> 模型网格编辑辅助界面。

创建顶点:选中两直接相连顶点之后,在两点之间新增一个顶点,注意新顶点会自动与原两点所组三角面的其他点相连,从而组成新的三角面,因为,在unity中不包含在三角面中的点和线是不能存在的。

删除顶点:选中任意一个顶点之后,删除此顶点,注意同时被删除的还有这个顶点所关联的所有三角面,请慎重操作,Ctrl + Z是不能返回的。

相交位移:选中两个顶点之后,将两个顶点以两者相对的方向移动至两者相距的中心位置。

镜像位移:选中两个顶点之后,将两个顶点的位置相对调换,注意,你如果不想制作出一些奇形怪状的东西的话,请慎用此功能。

两点塌陷:选中两个顶点之后,将第二个点合并至第一个点,多余的无依靠的面将会被删除。(此操作可以有效降低模型面数)

多点塌陷:选中两个以上顶点之后,将所有顶点合并至第一个点,多余的无依靠的面将会被删除。(此操作可以有效降低模型面数)



第三步:


选中Cube直接相连的两个顶点,在两者之间创建一个新顶点。(只有存在直接连线的顶点之间才可以新建顶点)


第四步:


将新创建的顶点往上拖,形成剑痕的一方尖角。


第五步:


我们转到模型背面,选中背向尖角的两个点,执行相交位移(或者两点塌陷)。


第六步:


我们可以看到两个点被重合为一个点了,这是剑痕的剑锋部分。


第七步:


我们再转到模型下部,再新建一个点作为剑痕的另一方尖角。


第八步:


将尖角拉出。


第九步:


再选中下部尖角背面的两个顶点,执行相交位移(或两点塌陷)。


第十步:


一个长长的两面尖的剑痕就已经有些样子了不是,我们可以调节背面让其更薄。


第十一步:


我们继续调节剑痕的背部,让他表现得更薄。


第十二步:


我们再拉长一下两端的尖角,让他表现得更长。


第十三步:


好了,接下来是重点了,我们要让他更细更薄


第十四步:


这下完成了,记得点击编辑完成,如果点击之后没效果,可以直接手动移除Cube上的模型编辑脚本。


最后的效果:


我们之前创建的Cube是不会被修改的,修改的模型会自动生成一个克隆体。

当然不止是Cube,MeshEditor针对的是任何带有网格的物体,外部导入的模型我们也可以随心所欲的进行我们想要的修改的,让我们来玩一玩龙之谷的卡拉翰吧。

我们可以微调一下人物的面部,把鼻子拉长。

或者将眼睛变得更大。

不过可别对有贴图的模型进行删除顶点的操作,你会发现被你删除的那块面直接空了,最主要的是材质会丢失,当然删除之后再选中边缘顶点塌陷就可以补全空白了,但UV可能会乱。

github源码链接:https://github.com/coding2233/MeshEditor

-----by MeshEditor

Unity插件 - MeshEditor(二) 模型网格编辑器(高级)的更多相关文章

  1. Unity插件 - MeshEditor(一) 3D线段作画 & 模型网格编辑器

    之前,因为工作需要,项目中需要动态生成很多的电线,不能事先让模型做好,更不能用LineRenderer之类的,因为画出来没有3D的效果,最主要是拐角的时候还容易破面,而我们要的是真真实实纯3D的电线, ...

  2. Unity插件 - MeshEditor(五) 网格顶点动画(变形动画)

    源码已上传至github,并持续更新,链接请看底部.(本帖跟随github持续更新) 网格顶点动画(变形动画)是针对于物体的形状可以随意变换并记录为关键帧的动画,虽然模型的顶点数据还是应该交给GPU绘 ...

  3. Unity插件 - MeshEditor(三) 面片破碎&网格破碎

    网上的unity破碎插件很多,不过想着可以以自己的方式实现也不失为一种乐趣,虽然整体的表现性上显得有些差,但也并不会影响最终的效果,接下来我大致讲解一下破碎一个物体的流程,因为用到了协程计算碎片的原因 ...

  4. Unity插件 - MeshEditor(八)模型镜像特效

    将静态模型(带MeshFilter)按指定轴向.指定距离克隆一个镜像物体出来,思路很简单,将模型的顶点坐标按指定轴取反,并累加上设定的距离值,然后就完毕了!不过,因为镜像体的顶点镜像于之前模型的顶点, ...

  5. Unity插件 - MeshEditor(四) 模型融化特效

    现在的电影里有很多妖魔在死亡后身体逐渐融化并下滑最后化为一滩黑水的情景,本次出于兴趣大致研究了这个效果,原理是控制模型的顶点向一个方向坍塌,坍塌到最低点时再根据法线方向扩散形成黑水状. 第一步: 添加 ...

  6. Unity插件 - MeshEditor(七)变形动画骨骼及蒙皮

    MeshAnimation在物体的顶点比较多的情况下,悲剧是显而可见的,我一个一个的点选顶点肯定得累死,而且对于形态的调控不是很方便,应该说是很麻烦,要知道,骨骼动画因为有了骨骼以及蒙皮信息而有了灵魂 ...

  7. Unity插件 - MeshEditor(六) 变形动画状态机

    变形动画状态机--MeshAnimator,是针对MeshAnimation的状态管理器,有大量类似Unity animator的功能,但MeshAnimator操作会更加简便,更加直观,居家旅(zh ...

  8. 无插件的大模型浏览器Autodesk Viewer开发培训-武汉-2014年8月28日 9:00 – 12:00

    武汉附近的同学们有福了,这是全球第一次关于Autodesk viewer的教室培训. :) 你可能已经在各种场合听过或看过Autodesk最新推出的大模型浏览器,这是无需插件的浏览器模型,支持几十种数 ...

  9. Fixflow引擎解析(二)(模型) - BPMN2.0读写

    Fixflow引擎解析(四)(模型) - 通过EMF扩展BPMN2.0元素 Fixflow引擎解析(三)(模型) - 创建EMF模型来读写XML文件 Fixflow引擎解析(二)(模型) - BPMN ...

随机推荐

  1. jquery easyui datagrid 设置设置在选中的所有行中只选择第一行

    var row = $('#dg').datagrid('getSelected'); if ($('#dg').datagrid('getChecked').length > 1) { //将 ...

  2. AngularJs开发——指令与控制器间的通信

    (原文:http://www.html5jscss.com/controller-between-directive.html) 指令与控制器之间通信,跟控制器间的通信.指令间通信也类似,也是下几种方 ...

  3. SpringMVC之简单的增删改查示例(SSM整合)

    本篇文章主要介绍了SpringMVC之简单的增删改查示例(SSM整合),这个例子是基于SpringMVC+Spring+Mybatis实现的.有兴趣的可以了解一下. 虽然已经在做关于SpringMVC ...

  4. acm几何

    fzu 2231,N个点求构成的平行四边行个数. 题意简重点在优化上 #include <cstdio> #include <iostream> #include <cs ...

  5. spring cloud 入门系列四:使用Hystrix 实现断路器进行服务容错保护

    在微服务中,我们将系统拆分为很多个服务单元,各单元之间通过服务注册和订阅消费的方式进行相互依赖.但是如果有一些服务出现问题了会怎么样? 比如说有三个服务(ABC),A调用B,B调用C.由于网络延迟或C ...

  6. Docker配置文件

    Docker 的 Registry 利用配置文件提供了一些仓库的模板(flavor),用户可以直接使用它们来进行开发或生产部署. 模板 在 config_sample.yml 文件中,可以看到一些现成 ...

  7. 关于云Linux部署tomcat服务器(Maven的多模块war包)

    博主的运行环境: 电脑系统: Linux mint 18 JDK版本: java version "1.8.0_171" Maven版本:  Apache Maven 3.5.3 ...

  8. 安卓高级6 CoordinatorLayout

    原作者大神地址:http://blog.csdn.net/huachao1001/article/details/51554608 曾在网上找了一些关于CoordinatorLayout的教程,大部分 ...

  9. Android自定义底部带有动画的Dialog

    Android自定义底部带有动画的Dialog 效果图 先看效果图,是不是你想要的呢 自定义Dialog package --.view; import android.app.Dialog; imp ...

  10. android MultiDex multiDex原理(一)

    android MultiDex 原理(一) Android分包MultiDex原理详解 转载请注明:http://blog.csdn.net/djy1992/article/details/5116 ...