Unity如何实现裁剪的效果?

TTangled 2020-07-12 08:31:27
类似剪刀裁剪布料那种的。
...全文
13410 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
TTangled 2020-07-19
  • 打赏
  • 举报
回复
引用 4 楼 sdhexu 的回复:
这个很复杂。。。 如果是特定的对象,可以用动画实现;如果要裁剪任意位置,动态裁剪,那就比较复杂了。 比如一个面,你要想裁剪他,需要这么做(假设你的裁剪路径是直线,曲线更复杂了): 1、经过裁剪路径做垂直于被剪对象的平面; 2、获取被剪对象的mesh顶点数据和面数据; 3、获取与平面相交的、被剪对象上的面,在两个面上创建新的顶点,修改被剪对象的顶点数据; 4、被剪对象上新创建的顶点做封口处理(创建三角形索引),计算新的面的法线、UV等数据,更新到被剪对象上。 总之很复杂。。
确实很复杂,我参考了YouTube和GitHub很多的项目,目前软体切割那部分还是很符合我的需求,但是那一块对我来讲还是很难实现的,非常感谢您的解答!
示申○言舌 2020-07-18
  • 打赏
  • 举报
回复
这个很复杂。。。 如果是特定的对象,可以用动画实现;如果要裁剪任意位置,动态裁剪,那就比较复杂了。 比如一个面,你要想裁剪他,需要这么做(假设你的裁剪路径是直线,曲线更复杂了): 1、经过裁剪路径做垂直于被剪对象的平面; 2、获取被剪对象的mesh顶点数据和面数据; 3、获取与平面相交的、被剪对象上的面,在两个面上创建新的顶点,修改被剪对象的顶点数据; 4、被剪对象上新创建的顶点做封口处理(创建三角形索引),计算新的面的法线、UV等数据,更新到被剪对象上。 总之很复杂。。
TTangled 2020-07-18
  • 打赏
  • 举报
回复
引用 1 楼 laidog12 的回复:
Mask遮罩效果?还是说动态的。 如果是动态的可以用shader呀,根据时间参数或自定义参数,进行遮罩显示,边缘裂缝效果用normal贴图表现
是这样的,我希望模拟出一个类似手术切割的过程,用 shader 的话就没办法加碰撞器了,因为要用到力反馈这样的设备
laidog12 2020-07-17
  • 打赏
  • 举报
回复
Mask遮罩效果?还是说动态的。
如果是动态的可以用shader呀,根据时间参数或自定义参数,进行遮罩显示,边缘裂缝效果用normal贴图表现
译者序 前 言 第1章 漫反射着色 1.1 引言 1.2 创建基本的表面着色器 1.2.1 准备工作 1.2.2 如何操作 1.2.3 实现原理 1.2.4 参考 1.3 为表面着色器添加属性 1.3.1 如何操作 1.3.2 如何操作 1.3.3 参考 1.4 在表面着色器中使用属性 1.4.1 如何操作 1.4.2 实现原理 1.5 创建自定义漫反射光照模型 1.5.1 如何操作 1.5.2 实现原理 1.5.3 更多内容 1.5.4 参考 1.6 创建Half Lambert光照模型 1.6.1 如何操作 1.6.2 实现原理 1.7 创建渐变纹理来控制漫反射着色 1.7.1 准备工作 1.7.2 如何操作 1.7.3 实现原理 1.8 使用2D渐变纹理创建假的BRDF 1.8.1 准备工作 1.8.2 如何操作 1.8.3 实现原理 1.8.4 参考 第2章 使用纹理贴图制作特效 2.1 引言 2.2 通过修改UV坐标实现纹理贴图的滚动 2.2.1 准备工作 2.2.2 如何操作 2.2.3 实现原理 2.3 让精灵表单动起来 2.3.1 准备工作 2.3.2 如何操作 2.3.3 实现原理 2.3.4 更多内容 2.3.5 参考 2.4 压缩和混合纹理贴图 2.4.1 准备工作 2.4.2 如何操作 2.4.3 实现原理 2.4.4 参考 2.5 法线贴图 2.5.1 准备工作 2.5.2 如何操作 2.5.3 实现原理 2.5.4 更多内容 2.6 在Unity编辑器中创建程序纹理贴图 2.6.1 准备工作 2.6.2 如何操作 2.6.3 实现原理 2.6.4 更多内容 2.7 Photoshop色阶效果 2.7.1 准备工作 2.7.2 如何操作 2.7.3 实现原理 2.7.4 更多内容 2.7.5 参考 第3章 利用镜面反射让游戏闪耀起来 3.1 引言 3.2 利用Unity3D内置的高光类型 3.2.1 准备工作 3.2.2 如何操作 3.2.3 实现原理 3.3 创建Phong高光类型 3.3.1 准备工作 3.3.2 如何操作 3.3.3 实现原理 3.4 创建BlinnPhong高光类型 3.4.1 准备工作 3.4.2 如何操作 3.4.3 实现原理 3.5 使用贴图对模型的高光进行遮罩 3.5.1 准备工作 3.5.2 如何操作 3.5.3 实现原理 3.6 金属与软高光 3.6.1 准备工作 3.6.2 如何操作 3.6.3 实现原理 3.6.4 参考 3.7 创建各向异性高光类型 3.7.1 准备工作 3.7.2 如何操作 3.7.3 实现原理 第4章 着色器的反射 4.1 在Unity3D中创建立方图 4.1.1 准备工作 4.1.2 如何操作 4.1.3 实现原理 4.1.4 参考 4.2 Unity3D中简单的立方图反射 4.2.1 准备工作 4.2.2 如何操作 4.2.3 实现原理 4.3 Unity3D中的遮罩反射 4.3.1 准备工作 4.3.2 如何操作 4.3.3 实现原理 4.4 Unity3D中的法线贴图和反射 4.4.1 准备工作 4.4.2 如何操作 4.4.3 实现原理 4.4.4 更多内容 4.5 Unity3D中的菲涅尔反射 4.5.1 准备工作 4.5.2 如何操作 4.5.3 实现原理 4.6 在Unity3D中创建简单的动态立方图系统 4.6.1 准备工作 4.6.2 如何操作 4.6.3 实现原理 4.6.4 更多内容 第5章 光照模型 5.1 引言 5.2 发光球体光照模型 5.2.1 准备工作 5.2.2 如何操作 5.2.3 实现原理 5.2.4 参考 5.3 漫反射卷积光照模型 5.3.1 准备工作 5.3.2 如何操作 5.3.3 实现原理 5.3.4 更多内容 5.3.5 参考 5.4 创建车辆喷漆的光照模型 5.4.1 准备工作 5.4.2 如何操作 5.4.3 实现原理 5.4.4 更多内容 5.5 皮肤着色器 5.5.1 准备工作 5.5.2 如何操作 5.5.3 实现原理 5.5.4 更多内容 5.6 布料着色器 5.6.1 准备工作 5.6.2 如何操作 5.6.3 实现原理 第6章 透明度 6.1 引言 6.2 使用alpha参数创建透明效果 6.2.1 准备工作 6.2.2 如何操作 6.2.3 实现原理 6.3 透明裁剪着色器 6.3.1 准备工作 6.3.2 如何操作 6.3.3 实现原理 6.4 通过渲染队列进行深度排序 6.4.1 准备工作 6.4.2 如何操作 6.4.3 实现原理 6.5 GUI和透明度 6.5.1 准备工作 6.5.2 如何操作 6.5.3 实现原理 第7章 顶点魔法 7.1 引言 7.2 在表面着色器中访问顶点颜色 7.2.1 准备工作 7.2.2 如何操作 7.2.3 实现原理 7.2.4 更多内容 7.3 表面着色器的顶点动画 7.3.1 准备工作 7.3.2 如何操作 7.3.3 实现原理 7.4 在地形中使用顶点颜色 7.4.1 准备工作 7.4.2 如何操作 7.4.3 实现原理 第8章 移动平台上着色器的优化 8.1 引言 8.2 什么是轻型着色器 8.2.1 准备工作 8.2.2 如何操作 8.2.3 实现原理 8.3 对着色器进行性能分析 8.3.1 准备工作 8.3.2 如何操作 8.3.3 实现原理 8.3.4 更多内容 8.4 移动平台上的着色器修改 8.4.1 准备工作 8.4.2 如何操作 8.4.3 实现原理 第9章 使用CgInclude文件让着色器模块化 9.1 引言 9.2 Unity中的内置CgInclude文件 9.2.1 准备工作 9.2.2 如何操作 9.2.3 实现原理 9.3 创建CgInclude文件来存储光照模型 9.3.1 准备工作 9.3.2 如何操作 9.3.3 实现原理 9.4 使用#define指令模块化地创建着色器 9.4.1 如何操作 9.4.2 实现原理 第10章 使用Unity的渲染纹理实现屏幕特效 10.1 引言 10.2 创建屏幕特效的脚本系统 10.2.1 准备工作 10.2.2 如何操作 10.2.3 实现原理 10.2.4 更多内容 10.3 使用屏幕特效实现亮度、饱和度以及对比度 10.3.1 准备工作 10.3.2 如何操作 10.3.3 实现原理 10.4 使用屏幕特效实现类似Photoshop的基本混合模式 10.4.1 准备工作 10.4.2 如何操作 10.4.3 实现原理 10.4.4 更多内容 10.5 使用屏幕特效实现叠加混合模式 10.5.1 准备工作 10.5.2 如何操作 10.5.3 实现原理 第11章 游戏的可玩性和屏幕特效 11.1 引言 11.2 创建老电影风格的屏幕特效 11.2.1 准备工作 11.2.2 如何操作 11.2.3 实现原理 11.3 创建夜视的屏幕特效 11.3.1 准备工作 11.3.2 如何操作 11.3.3 实现原理 11.3.4 参考

2,543

社区成员

发帖
与我相关
我的任务
社区描述
Unity3D相关内容讨论专区
游戏unity 技术论坛(原bbs)
社区管理员
  • Unity3D
  • 芝麻粒儿
  • 「已注销」
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

Unity3D社区公告:

  1. 社区致力于解决各种Unity3D相关的“疑难杂症”。
  2. 社区不允许发布与Unity3D或相关技术无关内容。
  3. 社区版主邀请各位一道为打造优秀社区不懈努力。

试试用AI创作助手写篇文章吧