Shatter Toolkit插件,自己正在熟悉,同时方便别人使用,现简单翻译下。
# Shatter Toolkit
# Copyright 2011 Gustav Olsson
# http://gustavolsson.squarespace.com/
# How it works
Attach one ShatterTool script instance and one UvMapper script instance (WorldUvMapper or TargetUvMapper), located in Core/Main/, to a game object that you want to shatter or split. When shattering or splitting a game object the pieces will be instantiated as clones of the original game object and the original game object will be destroyed.
要打碎或切割的游戏对象,需要绑定一个ShatterTool脚本和一个UvMapper脚本,这两个脚本在Core/Main中.当打碎或者切割一个游戏对象时,碎片会被创建,就像从源对象上克隆,而源对象会被销毁。
The ShatterTool script requires that the game object has a MeshFilter attached, as it needs some geometry to work with. Any other component you attach will be carried over without modification to the pieces when the game object is shattered or split. However, the ShatterTool script takes special care to itself, MeshCollider and Rigidbody components respectively. If attached, any of these will be updated to act realistically when the game object is shattered or split by for example modifying the Rigidbody's mass and velocity.
ShatterTool脚本需要游戏对象有一个MeshFilter的组件,因为它需要处理的就是几何体。该游戏对象上的其他任何组件,新的碎片模型也都会有。ShatterTool脚本还可以很好地处理MeshCollider和Rigidbody组件。当游戏对象被打碎和切割时候,所有的附加的组件都会更新,比如Rigidbody组件的质量和速度。
IMPORTANT! If you attach a MeshCollider and a Rigidbody, always keep the MeshCollider Convex in order to avoid errors while updating the mass properties of the Rigidbody.
重要!如果你附加了一个MeshCollider和Rigidbody组件,要保证选中MeshCollider的Convex属性,以避免更新Rigidbody组件的质量属性时所导致的错误。
IMPORTANT! If ShatterTool.FillCut is enabled (default) every edge of the mesh needs to belong to exactly two triangles, ie. the mesh needs to be closed.
重要!如果ShatterTool.FillCut是可用的(默认),网格(mesh)的每个边都要恰好属于两个三角形。网格需要是闭合的。
Here are a number of ways you can shatter or split a game object:
下面是打碎或者切割一个游戏对象的多种方式:
No scripting required:
无需脚本:
- Attach the ShatterOnCollision script (located in Helpers/Game Objects) and specify the required force needed to shatter the game object (requires an attached rigidbody and convex collider)
- 绑定ShatterOnCollision脚本(在Helpers/Game Objects)并且指定打碎游戏对象所需的力量(需要一个Rigidbody组件和一个勾选了Convex属性的Collider组件) 
- Attach any of the mouse scripts (located in Helpers/Mouse) to an empty game object in the same scene
- 绑定任何一个鼠标脚本(在Helpers/Mouse)到该场景的一个空游戏对象上
Scripting:
需要脚本:
- In a script, send a "Shatter" message to the game object and specify a world-space point (Vector3) where the game object should be shattered; for example 
SendMessage("Shatter", Vector3.zero);
- 在脚本中,给游戏对象发送“Shatter”消息,并指定一个世界坐标系中的点(Vector3),该点说明这个游戏对象应该在哪被打碎;例如
SendMessage("Shatter", Vector3.zero);
- In a script, send a "Split" message to the game object and specify an array of world-space planes (Plane[]) with unit-length normals where the game object should be split; for example
SendMessage("Split", new Plane[] { new Plane(Vector3.right, Vector3.zero) });
- 在一个脚本中,给游戏对象发送"Split"消息,并指定一组世界坐标系中的平面(Plane[]),平面需要指定单位向量用来说明该游戏对象应该从哪被分割。例如:
SendMessage("Split", new Plane[] { new Plane(Vector3.right, Vector3.zero) });
# Example scenes:
Check out the example scenes to see how the shatter toolkit is used in practice.
示例场景:
查看示例场景,看看Shatter插件如何应用。

# Good to know
知之有益
1. The ShatterTool properties have tooltips in the editor, mouse over to read them
1、ShatterTool属性编辑器中有提示,鼠标悬停可以显示。
2. Check out the Reference.zip for scripting reference
2、查看Reference.zip中的脚本参考
3. You can make the ShatterTool instance send pre- and post-split messages by toggling the "Pre Split msg" and the "Post Split msg" properties in the editor. These may be useful if you need to do something before and/or after a split occurs.
3、你可以通过切换编辑器上的"Pre Split msg" 和"Post Split msg"属性,使ShatterTool实例发送pre-和post-split消息。在你想在切割前或者切割后做某些操作,这些会很方便。
4. When shattering or splitting parented game objects, make sure you always handle the children/parent carefully to avoid duplicating too many game objects. See the Table game object in the Basic scene for an example.
4、当打碎或者切割有父子关系的对象时,要确保你总是谨慎地处理父子关系,以避免产生太多的游戏对象。示例参考Basic场景中的桌子对象。
要打碎或切割的游戏对象,需要绑定一个ShatterTool脚本和一个UvMapper脚本,这两个脚本在Core/Main中.当打碎或者切割一个游戏对象时,碎片会被创建,就像从源对象上克隆,而源对象会被销毁。
ShatterTool脚本需要游戏对象有一个MeshFilter的组件,因为它需要处理的就是几何体。该游戏对象上的其他任何组件,新的碎片模型也都会有。ShatterTool脚本还可以很好地处理MeshCollider和Rigidbody组件。当游戏对象被打碎和切割时候,所有的附加的组件都会更新,比如Rigidbody组件的质量和速度。
重要!如果你附加了一个MeshCollider和Rigidbody组件,要保证选中MeshCollider的Convex属性,以避免更新Rigidbody组件的质量属性时所导致的错误。
重要!如果ShatterTool.FillCut是可用的(默认),网格(mesh)的每个边都要恰好属于两个三角形。网格需要是闭合的。
下面是打碎或者切割一个游戏对象的多种方式:
无需脚本:
- 绑定ShatterOnCollision脚本(在Helpers/Game Objects)并且指定打碎游戏对象所需的力量(需要一个Rigidbody组件和一个勾选了Convex属性的Collider组件) 
- 绑定任何一个鼠标脚本(在Helpers/Mouse)到该场景的一个空游戏对象上
需要脚本:
- 在脚本中,给游戏对象发送“Shatter”消息,并指定一个世界坐标系中的点(Vector3),该点说明这个游戏对象应该在哪被打碎;例如
SendMessage("Shatter", Vector3.zero);
- 在一个脚本中,给游戏对象发送"Split"消息,并指定一组世界坐标系中的平面(Plane[]),平面需要指定单位向量用来说明该游戏对象应该从哪被分割。例如:
SendMessage("Split", new Plane[] { new Plane(Vector3.right, Vector3.zero) });

示例场景:
查看示例场景,看看Shatter插件如何应用。
应该知道:
1、ShatterTool属性编辑器中有提示,鼠标悬停可以显示。
2、查看Reference.zip中的脚本参考。
3、你可以通过切换编辑器上的"Pre Split msg" 和"Post Split msg"属性,使ShatterTool实例发送pre-和post-split消息。在你想在切割前或者切割后做某些操作,这些会很方便。
4、当打碎或者切割有父子关系的对象时,要确保你总是谨慎地处理父子关系,以避免产生太多的游戏对象。示例参考Basic场景中的桌子对象。

Shatter Toolkit Readme相关推荐

  1. Shatter ToolKit使用细节

    http://www.taodudu.cc/news/show-6984349.html 相关文章: [数据挖掘]4. 打散(Shattering) VC维数 基于VC维数和Margin的泛化定理 & ...

  2. unity 实现物体破碎效果的一些方法 - 细雨淅淅

    游戏越来越接近现实的感觉,如果有一个真是的 虚拟现实设备,可能我们真的会感觉是在真实世界.场景的逼真是在渲染效果.角色AI.游戏逻辑.物理效果等等一起导致的结果.现在游戏越来越大,除了渲染,物理估计是 ...

  3. Unity3D 200个插件免费分享

    插件清单:  2D_Toolkit_1.51     动画开发插件包  FingerGestures           触摸插件  ORK_Okashi_RPG_Kit       Unity3D角 ...

  4. Unity3d 模型 动态切割

    使用插件:Shatter Toolkit ,这个插件可以切割模型 和 破坏模型 代码 using System.Collections; using System.Collections.Generi ...

  5. 【Unity】Unity 常用插件

    NGUI,算是最常用的UI插件了,下载地址:https://download.csdn.net/download/xiaoyaoACi/21028754 FingerGestures,顾名思义,这个是 ...

  6. Unity游戏程序员面试题及解答

    典型的一些如手写排序算法.一些基本数学问题,在此就不列举了.以下整理出一些代表性的.有参考价值的题,真实面试题,附有本人的解答,欢迎讨论. 题1.指出下列哪些属于值类型? int System.Obj ...

  7. [Unity3D]接入vive tracker 方案SteamVR+VRTK配置

    Unity版本2019.4.27   steamvr版本:SteamVR1.2.3   VRTK3.3 下载SteamVR 点击连接,进入VRYK官网    Getting Started · VRT ...

  8. OWT Server信令分析 (下) [Open WebRTC Toolkit]

    OWT Server信令分析 (下) [Open WebRTC Toolkit] 目录 信令分析因为包含一些代码和格式,文章很长,所以分成上下两篇记录,OWT(Open WebRTC Toolkit) ...

  9. VOT Toolkit工具使用说明(Python版)

    VOT Toolkit工具使用说明(Python版) 一. 工具链接 vot-toolkit python版 github链: https://github.com/votchallenge/tool ...

最新文章

  1. 智源重大研究方向“智能体系架构与芯片”发布会(活动报名)
  2. 浅析建设企业网站的三大基本类型
  3. 从事UNIX/LInux服务器编程最方便的代码编译工具------(eclipse for c/c++)、(FileZilla)、(Secure CRT) 这三种一定要一起使用 之3...
  4. 安装adobe acrobat导致回滚
  5. c++怎么将文件中的数据读出并赋值给字符串_web前端开发过程中如何写JavaScript程序?...
  6. Maven知识- repositories
  7. Java dectobin(n)函数_浙大JAVA实验题答案09answer.docx
  8. MOSS工作流任务权限控制
  9. lodop同一页面一次性打印多次
  10. ap.net core 教程(三)
  11. Egret入门学习日记 --- 问题汇总
  12. 单片机拟真电路图软件_DIY AT89S52单片机编程器
  13. 部落战魂找不到服务器,部落战魂官方版
  14. 小米手机的sd卡显示无服务器,小米sd卡无法读取_我的小米手机识别不到SD卡,怎么办?...
  15. 在excel中如何筛选重复数据_高级筛选,让重复的数据记录无处可逃
  16. python提示syntaxerror什么意思_“SyntaxError:print”调用中缺少括号在Python中是什么意思?...
  17. 项目总结报告(小米商城)
  18. 重庆交通大学计算机考研资料汇总
  19. MongoDB——GridFS
  20. 消费者洞察案例分析_情绪搜索洞察定时器案例研究

热门文章

  1. 申请软著用的60页代码,半个小时轻松搞定
  2. 什么是美术作品?美术作品版权著作权怎么申请?
  3. 如何正确衡量线性回归模型中变量的重要性
  4. 微信小程序开发之——网络请求封装
  5. js部分换行报错的问题解析
  6. 收购一家小公司,从财务角度看,你觉得应该从哪些看是否值得收购?
  7. JAVA正则表达式怎么表达汉字_Java的正则表达式匹配汉字
  8. redis监控软件对比
  9. 用c语言实现比较两个分数的大小
  10. 简单的Spring MVC入门程序,对于Spring mvc工作流程的理解,servlet标签和servlet-mapping 理解,视图解析器