unity3d 破碎插件_unity破碎模拟插件 - CSDN
  • Unity物体破碎效果

    千次阅读 2019-05-28 17:29:55
        物体破碎的效果在游戏中非常常见,在本文中将实现任意大小的长方体的敲击破碎,并为实现更复杂物体的破碎效果做好铺垫。...在Unity中,物体的形状是由Me...

        物体破碎的效果在游戏中非常常见,在本文中将实现任意大小的长方体的敲击破碎,并为实现更复杂物体的破碎效果做好铺垫。
        最终效果图如下:
    效果图
        为了实现这种破碎效果,我们必须生成碎片物体,在本例中将根据敲击点生成四个碎片物体。在Unity中,物体的形状是由MeshFilter组件中的Mesh对象决定的。也就是说,只要我们创建恰当的Mesh对象,我们就能够生成任意形状的物体。
        从Mesh类的属性中,可以看出跟物体形状有关的属性为:

    //Vector3数组,储存顶点的相对位置
    public Vector3[] vertices { get; set; }
    //int数组,每三个数字一个三角面的顶点信息,每一个数字都是vertices的索引
    public int[] triangles { get; set; }
    

        输出一个cube的vertices如下(部分):
    顶点信息
        输出一个cube的triangles如下(部分):
    三角片信息
        很显然,如果从零构造一个物体,是比较复杂的。不过只是生成碎片的话,我们其实只需要更改部分顶点位置。


    利用这种思路,生成一个碎片:

    //生成Mesh对象
    private Mesh GenMesh(Mesh mesh, Vector3 hitPoint)
    {
        List<Vector3> mesh_vertices = new List<Vector3>();
        List<Vector3> piece_vertices = new List<Vector3>();
    
        int[] mesh_triangles = mesh.GetTriangles(0);
    
        List<Vector3> piece_normals = new List<Vector3>();
    
        mesh.GetVertices(mesh_vertices);
        mesh.GetNormals(piece_normals);
    
        foreach (Vector3 item in mesh_vertices)
        {
            piece_vertices.Add(item);
        }
        int i = 0;
        foreach (Vector3 v in mesh_vertices)
        {
            if (v == new Vector3(0.5f, 0.5f, 0.5f) || v == new Vector3(0.5f, 0.5f, -0.5f))
            {
                piece_vertices[i] = new Vector3(hitPoint.x, hitPoint.y, v.z);
            }
            else
            {
                if (v.x == 0.5f)
                {
                    piece_vertices[i] = new Vector3(0, v.y, v.z);
                }
                if (v.y == 0.5f)
                {
                    piece_vertices[i] = new Vector3(v.x, 0, v.z);
                }
            }
            i++;
        }
    
        Mesh piece = new Mesh();
        piece.SetVertices(piece_vertices);
        piece.SetTriangles(mesh_triangles,0);
    //法线信息与光照相关
        piece.SetNormals(piece_normals);
    
        return piece;
    }
    
    //生成物体
      private GameObject GenPiece(Mesh piece_mesh,MeshRenderer meshRender)
      {
          GameObject piece = new GameObject("piece");
          piece.transform.position = transform.position;
          piece.transform.localScale = transform.localScale;
          MeshRenderer piece_render = piece.AddComponent<MeshRenderer>();
          piece_render.material = meshRenderer.material;
          piece.AddComponent<MeshFilter>().mesh = piece_mesh;
          Rigidbody rig = piece.AddComponent<Rigidbody>();
          piece.AddComponent<MeshCollider>().convex = true;
          return piece;
      }
    
    //撞击点计算
    //hit.transform.localScale为破碎目标缩放信息
    Vector2 hitPoint = raycastHit.transform.position - raycastHit.point;
    -new Vector2(hitPoint.x / hit.transform.localScale.x, hitPoint.y / hit.transform.localScale.y)
    

        效果如图:
    效果示例
    以上修改了cube的右上角顶点,以及与右上角x或y相同的顶点,以此生成了1/4的碎片。


    只要分别修改4个顶点,就能生成四个碎片,再添加力,就可以实现炫酷了破碎效果了。


    工程下载链接请关注公众号SFGame后(*^_^*)回复:物体破碎

    更多个人原创博客,可关注公众号SFGame
    在这里插入图片描述

    展开全文
  • Unity3d 破碎、切割模型插件

    万次阅读 2016-01-16 11:34:56
    Unity3d 破碎、切割模型插件
    展开全文
  • unity3d 游戏插件 Mesh Explosion 物体破碎特效资源包
  • Unity3D的物体爆裂、炸裂、碎裂效果》(点击打开链接)提到了Unity3D的物体爆裂、炸裂、碎裂效果到底是用哪些组件去制作的,但是只是提到如果制作一个碰撞时的击碎效果,当然这也是这个组件最基本的使用,不过,在...

    在《【Fracturing & Destruction】Unity3D的物体爆裂、炸裂、碎裂效果》(点击打开链接)提到了Unity3D的物体爆裂、炸裂、碎裂效果到底是用哪些组件去制作的,但是只是提到如果制作一个碰撞时的击碎效果,当然这也是这个组件最基本的使用,不过,在实际上,更多情况是需要直接利用代码控制一个物件是否破碎,可以称之为“条件碎裂”。那么在Unity3D中,如何做到达到条件才触发的物体爆裂、炸裂、碎裂效果呢?其实还是同样利用到这个插件。下面举一个例子说明这个效果,为了使例子更加有趣,我做了一个点碎小球的例子:


    在《【Unity3D】判断是否鼠标点击物体与血条制作》(点击打开链接)我曾经完成了一个点击扣血的效果,这里是进一步,在点到血槽变空之后,小球碎裂。这里也说明,在Fracturing & Destruction中,不借助任何物体的撞击,如何用代码让小球自然破碎。

    制作过程如下:

    1、与《【Unity3D】判断是否鼠标点击物体与血条制作》(点击打开链接)一样摆好血条之后,导入Fracturing & Destruction插件之后,和在《【Fracturing & Destruction】Unity3D的物体爆裂、炸裂、碎裂效果》(点击打开链接)同样,生成一个Fractured Object,其位置摆放、内部材质应该和小球一模一样,但这里让他上来就碎,同时生成碎片的时候,弹出的对话框,问你是否收起原物体,这里选择否。


    最终场景布置如下图所示,当然这不是本文的重点,之前两篇相关文章都详细说过了。


    2、下面编写如下脚本,赋予给主摄像机Main Camera或者一个自己新建的GameObject,这里我是扔给了Main Camera一个GameScript.cs。

    这个脚本让达到条件才触发的物体爆裂、炸裂、碎裂效果成为可能,其主要思想是:将原物体和碎片物体重叠放置,但我们一开始就用SetActive(false)让上来就会自动碎裂的碎片物体隐藏,将其收起来,则他遇到SetActive(true)才会播放碎裂效果,不过,在他要SetActive(true)的时候,也就是原物体SetActive(false)隐藏之时。同时,在小球被点击的时候,对其授予一个向Y轴正方向,也就是向上的小速度,在Fracturing & Destruction对其进行碎片分析的时候,就将它设置为刚体,所以其由于重力的作用会自动下降,做到一个点击摇晃的效果。

    using UnityEngine;
    using System.Collections;
    using UnityEngine.UI;//Slider属于UI,用到这个头文件  
    
    public class GameScript : MonoBehaviour
    {
        public GameObject Fracture;//生成的碎片
        public GameObject Sphere;//原来的球
        public Slider HPStrip;//添加血条Slider的引用  
        private int HP = 10;//开始为10滴血  
    
        void Start()
        {
            Fracture.SetActive(false);//开始先收起并隐藏破碎物
            HPStrip.value = HPStrip.maxValue = HP;//初始化血条  
        }
    
        void Update()
        {
    
            if (Input.GetMouseButtonDown(0))//鼠标左键点下  
            {
                //住摄像机向鼠标位置发射射线    
                Ray mRay = Camera.main.ScreenPointToRay(Input.mousePosition);
                RaycastHit mHit;
                //射线检验    
                if (Physics.Raycast(mRay, out mHit))
                {
                    if (mHit.collider.gameObject == Sphere)//如果点击的是球
                    {
                        HP--;//点到这个球,血就-1  
                        HPStrip.value = HP; //对血条执行操作  
                        Sphere.rigidbody.velocity = new Vector3(0, 1, 0);
                    }
                }
            }
    
            if (HP <= 0)//如果血槽空
            {
                Sphere.SetActive(false);//原来的球消失掉
                Fracture.SetActive(true);//破碎物体呈现,让他开始他的表演!
            }
        }
    }
    
    当然,我们还要主摄像机指明各个物体,才能使程序正确运行,HPSlider就是血条Slider,Fracture就是插件生成的破碎物Fractured Object,而Sphere就是原来的小球:


    展开全文
  • Unity3d 插件 破碎效果 MeshExplosion
  • unity3d 碎片插件

    2020-07-30 23:31:22
    unity3d 破碎插件 1.04版本,测试可以使用,效果非常好
  • Unity3D常用插件

    2019-01-16 11:29:34
    Unity3D常用插件,想想自己也有小半年unity经验了,于是整理了一下自己用过的插件并附上下载地址。 NGUI,这个不用多说,上官网:http://www.tasharen.com/?page_id=140,也可以去我的百度云盘:...

    Unity3D常用插件,想想自己也有小半年unity经验了,于是整理了一下自己用过的插件并附上下载地址。

    1. NGUI,这个不用多说,上官网:http://www.tasharen.com/?page_id=140,也可以去我的百度云盘:http://pan.baidu.com/s/1qWwSwFE

    2. FingerGestures,顾名思义,这个是支持移动设备所有触摸事件的插件,包括点击,滑动,还有自定义手势等等,云盘:http://pan.baidu.com/s/1mgDp5Gk

    3. EasyTouch,也是用于移动平台上的RPG类的游戏,这里有篇文章,简单介绍了一下该插件http://my.oschina.net/dingxiaowei/blog/205231,下载地址:http://pan.baidu.com/s/1o6xC0Z4

    4. ShareSDK,功能强大的分享插件,支持一键分享并且配置起来十分简单,目前绝大多数的社交软件都支持,并且他们官方的文档写得特别清楚而且如果注册用户的话,还会有技术支持,官方文档:http://wiki.mob.com/Unity3D快速集成指南/ 下载地址:http://pan.baidu.com/s/1Coc8I

    5. AndroidRemote,这个主要用于安卓平台和电脑联调,省去了每次测试都要重新打包的麻烦,下载地址:http://pan.baidu.com/s/1bndGfwj

    6. NGUI_HUD_Text,这个用于游戏里血条的变化,下载地址:http://pan.baidu.com/s/1jGmpsge

    7. 2dToolKit,是一款2D开发组件,它具有很强的灵活性,可以让开发者在Unity中进行2D开发,下载地址:http://pan.baidu.com/s/1mgsWNA4、

    8. PlayerMaker,是一个可视化脚本工具,开发者可以使用它很快的完成游戏原型制作,能够大大的提高开发效率,让你的游戏更加完美,下载地址:http://pan.baidu.com/s/1jGL1jCi

    9. PathologicalGames,用于绝大多数的曲线操作,下载地址:http://pan.baidu.com/s/1bn8iowv

    10. FxMaker,侧重于unity里的粒子特效系统,这款插件提供了众多特效资源和效果预览,玩家可以随意组装效果并最终合成一个预设自己使用,下载地址:http://pan.baidu.com/s/1bndagvt

    11. Magical FX,魔法特效包,下载地址:http://pan.baidu.com/s/1vtc8e

    12. water.unitypackage,这是一款用于水的插件,性能还比较高,用于移动设备也没问题,弥补了专业版的unity水特效资源在移动设备卡机的不足,下载地址:http://pan.baidu.com/s/1gdxQGrp

    13. LitJson,看名字就知道,这是用于Json操作的一些API,下载地址:http://pan.baidu.com/s/1gdzS9H5

    14. icsharpcode-SharpZipLib,用于解压缩, ZipLib组件与.net自带的Copression比较,在压缩方面更胜一筹,经过BZip2压缩要小很多,而且这个功能更加强大。使用方法:http://blog.csdn.net/wjbaiverson/article/details/6226160,下载地址:http://pan.baidu.com/s/1dDF5JKt

    15. unity-lzma,也是一款用于压缩和解压文件的库,它是一个开源的类库,有C、 C++、C#、JAVA的类库,Unity里面我们自然要使用C#的类库,使用方法:http://www.tuicool.com/articles/J3Iv22I,下载地址:

    http://pan.baidu.com/s/1jGorfIQ

    2015年7月10日补充(摘自http://www.cgjoy.com/thread-47257-1-1.html)

    1. uScript-Visual-Scripting-Tool-for-UnityEasyMotion2D 脚本插件

    2. megafiers.unitypackage 变形插件,官方售价150美元,对各种物体任意变形

    3. Unisky 1.2.6 天空插件,方便的模拟各种天气

    4. UnityScriptEditor 脚本插件,方便智能的编辑脚本

    5. cave-run-3d-unity-game-starter-kit EasyRoads3Dv1.8.1.unitypackage 寻路插件

    6. chipoff-fracture-system 破碎特效插件

    7. Enhanced Editor++ v2.1.unitypackage 编辑增强插件

    8. MessageManager_1.1.1 消息插件

    9. particle-system-collection 粒子效果插件

    10. Dynamic Elements FX Pack 著名的效果插件

    11. FX’s+Collection 各种特效的集合,包括瀑布,雨雪,落叶等等40多个特效

    12. Unity Shooter Engine (Unity3D)U.S.E.射击游戏引擎 V1.7

    13. RoadPathTool v1.1&RiverTool v1.1 寻路插件

    14. SwipeControl.unitypackage 滑动屏幕插件

    15. FPS_Kit_for_3.0.unitypackage City Damage.zip 城市套件

    16. MagicalEffects.unitypackage 魔幻特效插件,模拟各种好看的效果

    17. Sprite manager.rar 动画插件

    18. Bitmap2Material.zip 材质贴图插件

    19. substance_designer_2_0_0.rar 材质插件

    20. 硬表面着色器Hard Surface Shaders Free and Pro .rar 材质插件,各种材质轻松表现

    21. TerrainToolkit 地形资源,包括各种树木等等

    22. Ian S Explosion Pack 爆炸特效插件,模拟各种爆炸效果

    23. TimelineFX.时光粒子编辑器 可以编辑出各种粒子效果

    24. Prime31_StoreKit_for_iPhone 著名的广告插件

    25. Chickens Shader Bundle shader包,包括各种材质shader

    26. shatter toolkit切西瓜插件

    27. easy unity3d timer 时钟插件

    28. dungeon construction kit characterkit-csharp2 角色游戏插件

    29. Enemies.unitypackage Buoyancy toolkit.unitypackage camera splat effects 镜头特效插件

    30. cp morphing lab 人体变形插件

    31. easy destructible wall 模拟墙倒塌的插件

    32. shatter toolkit 著名的切西瓜插件,可制作水果忍者游戏

    33. hard shaders pro 硬表面材质插件专业版

    34. energfx 能量特效插件

    35. edys vehicle physics 车辆游戏插件

    36. etcetera.unitypackage uscript 可视化编程插件

    37. Tom TerrianTool 地形编辑插件

    38. 3d anaglyph system 3d红绿插件

    39. InventoryManager-js-cs 背包系统插件

    40. soccertoolkit 足球插件

    41. strumpyshadereditor 材编辑质插件

    42. amplify shader manager 材质插件

    43. unity external lightmapping tool 外部灯光插件

    44. Vectrosity向量划线工具

    45. Cartoon Clouds 卡通白云

    46. HOTweenEditor_v0.2.101

    47. 镜像反射 着色器 Mirror Reflection shader

    48. 飞船模型带贴图.unitypackage

    49. 二层房屋室内示例House of the Future example

    50. 爆炸效果 Detonator – Explosions for Unity3D

    51. Camera Splat Effects 镜头溅斑效果

    52. Car Physics 汽车物理引擎包

    53. Fuz(毛发)shader

    54. Head Look Controller – 头部转向控制.unitypackage

    55. JCar Unity3D开发的简单赛车游戏

    56. Qualcomm AR – 增强实境工具.unitypackage

    57. Rope BETA 4.0 链子 绳子脚本示例

    58. 《魔兽世界》角色控制.unitypackage

    59. 反向关节工具.unitypackage

    60. 血液飞溅特效Blood Splatter FX

    61. 3rd Pesron Shooter Kit 第三人称射击游戏包

    62. AI 4 Enemies 人工智能.unitypackage

    63. Asylum 避难所,游戏室内场景项目资源

    64. 清风房车特效演示 材质 光效 动画 AirStream - Substance(含源码包.unitypackage

    65. unitycar:可以无需代码制作各种赛车游戏。

    66. gamedraw:可以制作模型,编辑模型,uv展开等等,无需切换到其他3d软件。

    67. a pathfinding project pro:强大易用的寻路插件。

    68. ship game starter kit:制作各种船类游戏

    69. poolmanager:游戏性能优化插件

    70. ez replay manager:帮助播你录下任何u3d游戏,重新播放,甚至以更快的速度

    71. RapidUnity Extra Primitives:让你迅速的添加物体到场景

    72. BrainBuilder编写游戏无需代码.unitypackage
      88.lavarocks.unitypackage

    mouselookdb.unitypackage

    Unity3D模拟制作陨石袭击地面或者炮弹落地成坑的效果
    Tazman-Audio.Fabric.v1.22f.unitypackage
    89. TerrainEdge地形包
    90. tower_Defense.unitypackage
    91. Unity3D中实现简单的电影模式框架 Edit UV.unitypackage
    92. 树木管理器小插件.unitypackage
    93. CloudsToy v1.2

    1. FX Camera Systems(FX 相机系统)
    2. gamedraw:可以制作模型,编辑模型,uv展开等等,无需切换到其他3d软件。
    3. a pathfinding project pro:强大易用的寻路插件。
    4. ship game starter kit:制作各种船类游戏
    5. ez replay manager:帮助播你录下任何u3d游戏,重新播放,甚至以更快的速度
    6. RapidUnity Extra Primitives:让你迅速的添加物体到场景
    展开全文
  • 插件连接:链接:https://pan.baidu.com/s/1htJs972 密码:ydm7菜单MouseForce:通过这个脚本可以对模型进行拖拽,根据当前鼠标左键按下的位置和鼠标移动后的位置在单位增量时间内的差值计算力度,并将这个力通过...
  • Unity3d】200个插件免费分享(所有资源已上传)

    万次阅读 多人点赞 2019-07-05 10:03:48
    接触U3D有段时间了,积累了点插件、资源、学习网站、论坛等,现在整理下,跟广大同仁们分享下! 所有资源已经上传完毕,约5G。 200个插件免费分享 【下载链接】  链接:https://pan.baidu.com/s/1smQzbDb 密码...
  • 支持Unity3D,游戏粒子资源,内有现成Demo可参考学习,仅供学习!
  • Unity3D常用插件下载及使用方法

    千次阅读 2017-11-08 09:39:15
    临近年假,好不容易有时间歇歇,偶然看到一个视频教程讲的是PlayMaker,本着认真学习的态度去Asset Store下载,结果收费,于是果断去度娘下载免费版,结果看到一篇文章讲的是Unity3D常用插件,网址:...
  • Unity3D 插件大全

    千次阅读 2013-12-06 16:07:44
    2D_Toolkit 2d动画开发插件包...ORK_Okashi_RPG_Kit Unity3D角色扮演游戏开发工具包 uScript-Visual-Scripting-Tool-for-UnityEasyMotion2D 脚本插件 Playmaker_1.21 可视化编程插件 RageSpline EZ GUI 2 GlyphDesigner
  • 如果要想做到如下图的爆裂、炸裂、碎裂效果...此时可以利用到Unity3D的一个插件Fracturing &amp; Destruction,官网上60美金,但用和谐的我,也给大家上传了一份:http://download.csdn.net/detail/yongh701/9...
  • unity物体破碎效果

    2020-07-30 23:32:00
    物理效果在unity模拟对初级程序很是困难,这个模拟物体破碎的资源可以提供参考。
  • Unity 3D插件大全

    千次阅读 2014-01-28 00:07:50
    200个插件免费分享约5G。 ...ORK_Okashi_RPG_Kit Unity3D的角色扮演游戏开发工具包 uScript视觉脚本工具UnityEasyMotion2D脚本插件 Playmaker_1.21可视化编程插件 RageSpline EZ GU
  • [unity3d插件]插件效果以及下载

    千次阅读 2014-04-30 10:17:35
    1.chipoff(破碎的效果) 下载:
  • Unity3D插件大全

    2019-05-07 00:26:04
    【转】...200个插件免费分享约5G。 【清单如下】 2D_Toolkit_1.51动画开发插件包 FingerGestures触摸插件 ORK_Okashi_RPG_Kit Unity3D的角色扮演游戏开发工具包 uScript视觉脚本工具Un...
  • Unity3D 200个插件免费分享

    千次阅读 2013-10-30 17:14:40
    插件清单:  2D_Toolkit_1.51 动画开发插件包  FingerGestures 触摸...ORK_Okashi_RPG_Kit Unity3D角色扮演游戏开发工具包  uScript-Visual-Scripting-Tool-for-UnityEasyMotion2D 脚本插件  Playmaker_1.21
  • Unity3D插件分享

    2019-06-25 01:26:22
    网上看到一个讲unity3D插件的,看着不错,转载过来。 本文汇总了近百个Unity3D插件,供大家参考下载。 2D_Toolkit_1.51 动画开发插件包 FingerGestures 触摸插件 ORK_Okashi_RPG_Kit Unity3D角色扮演游戏开发工具...
  • Unity实现物体破碎

    2019-10-17 10:53:45
    在我之前开发的时候,如果想实现物体呈现破碎效果的话,思维里只有把一个物体拆分为多个物体,然后进行变换位置,想法有点不现实。 程序猿:你都是一个整体了,我怎么拆啊,我又不是建模师。当我上知天文,下至地理...
1 2 3 4 5 ... 7
收藏数 121
精华内容 48
关键字:

unity3d 破碎插件