游戏开发Unity2D图片任意形状破碎裂片效果展示

目录
  • 一、前言
  • 二、效果演示
  • 三、Demo工程下载
  • 四、操作步骤
    • 1、牙图片:SrpiteRenderer
    • 2、碎裂:Explodable
    • 3、多边形碰撞体组件:PolygonCollider2D
    • 4、生成碎片:Generate Fragments
    • 5、点击碎裂:ExplodeOnClick
    • 6、碎裂爆破:ExplosionForce
    • 7、碎了再碎:ExplodableFragments
  • 结束语

一、前言

点关注不迷路,持续输出Unity干货文章。

嗨,大家好,我是新发。
2014年的某一天,我因为牙疼去看了牙医,是个小诊所,牙医告诉我有个牙坏了,可能要杀神经,因为我已经被牙疼折磨了好几天,于是答应了杀掉牙神经。杀完神经真的就不疼了,但这个牙基本也就完蛋了,没有了养分供应,它会越来越脆弱,注定了它会在未来的某一天崩掉。
就在前两天,它崩了,就在我吃饭的时候,我知道这一天迟早会来,但来得没有一丝丝知觉,唉,兄弟,一路走好。
于是,我打算用Unity做一个效果,来纪念我的牙的光荣牺牲。

二、效果演示

最终效果如下:

三、Demo工程下载

Unity Demo工程已上传到CodeChina,感兴趣的同学可自行下载学习。
地址:https://codechina.csdn.net/linxinfa/Unity2DDestruction
注:我使用的Unity版本:2020.2.7f1c1 (64-bit)

使用到的插件 Unity 2D Destruction:https://lab.uwa4d.com/lab/5b5ca3a6d7f10a201fe8b8f4

四、操作步骤

1、牙图片:SrpiteRenderer

通过SrpiteRenderer的方式显示牙图片。

如下:

2、碎裂:Explodable

给牙挂上Explodable组件,此时会自动挂上Rigidbody2D组件。

Rigidbody2DBody Type设置为Kinematic

3、多边形碰撞体组件:PolygonCollider2D

给牙挂上多边形碰撞体组件:PolygonCollider2D

4、生成碎片:Generate Fragments

点击Explodable组件的Generate Fragments按钮,即可生成碎片。

如下:

可以设置碎片的形状类型,改为Voronoi类型,再加多额外20个点。

效果如下:

5、点击碎裂:ExplodeOnClick

给牙添加ExplodeOnClick,实现点击碎裂的效果。

此时运行效果如下:

6、碎裂爆破:ExplosionForce

创建一个空物体,挂上ExplosionForce组件,设置一下碎裂爆破的力Force为200,半径为10。

此时效果如下:

7、碎了再碎:ExplodableFragments

给牙添加ExplodableFragments组件。

重新点击Explodable组件的Generate Fragments按钮。

此时运行效果如下:

结束语

喜欢Unity的同学,不要忘记点击关注,如果有什么Unity相关的技术难题,也欢迎留言或私信,希望大家以后多多支持我们!

(0)

相关推荐

  • Unity Shader实现2D游戏迷雾

    本文实例为大家分享了Unity Shader实现2D游戏迷雾的具体代码,供大家参考,具体内容如下 先看效果吧. 我使用的是屏幕后处理效果,首先先去Photoshop做一张图片如下,用画笔点一个点就可以了,使用它来对摄像机截取的图片进行处理. 在摄像机上添加脚本文件 using System.Collections; using System.Collections.Generic; using UnityEngine; public class TestScript : MonoBehaviou

  • Unity3D制作序列帧动画的方法

    当我们需要制作动态炫酷科技感很强的UI时,美术一般会给我们提供一些序列图,这时候我们只需在程序里实现序列动画. 一.动画机 unity自带的帧动画机很方便,我们首先选择所要播放序列帧动画的Image,然后在Window下选择Animation,会弹出一个动画制动的界面,我们选择Create,然后进入如下界面: 我们按照如下添加动画控制的属性, 然后将我们美术给我们的序列图(要设置成2DandUI模式哦)拖入到动画帧面板里. Unity自带的动画机播放序列帧动画很简单也很方便,但是有一定的局限性.

  • UnityShader3实现2D描边效果

    本文实例为大家分享了UnityShader3实现2D描边效果的具体代码,供大家参考,具体内容如下 1. Shader "Custom/Edge" { Properties { _MainTex ("Texture", 2D) = "white" {} _OffsetUV ("OffsetUV", Range(0, 1)) = 0.1 _EdgeColor ("EdgeColor", Color) = (1,

  • Unity Shader实现2D水流效果

    水流的模拟主要运用了顶点变换和纹理动画的结合: 顶点变换中,利用正弦函数模拟河流的大致形态,例如波长,振幅等. 纹理动画中,将纹理坐标朝某一方向持续滚动以形成流动的效果. 脚本如下: Shader "MyUnlit/ScrollWater" { Properties { _MainTex ("Texture", 2D) = "white" {} _Color("Color Tint",color)=(1,1,1,1) //控制

  • 游戏开发Unity2D图片任意形状破碎裂片效果展示

    目录 一.前言 二.效果演示 三.Demo工程下载 四.操作步骤 1.牙图片:SrpiteRenderer 2.碎裂:Explodable 3.多边形碰撞体组件:PolygonCollider2D 4.生成碎片:Generate Fragments 5.点击碎裂:ExplodeOnClick 6.碎裂爆破:ExplosionForce 7.碎了再碎:ExplodableFragments 结束语 一.前言 点关注不迷路,持续输出Unity干货文章. 嗨,大家好,我是新发. 2014年的某一天,我

  • 游戏开发进阶Unity网格(Mesh\动态合批\骨骼动画\蒙皮)

    目录 一.前言 二.Hello Mesh 三.萌新初识Mesh 1.引擎内置的Mesh 2.Mesh是什么 三.Mesh的创建方式 1.第三方建模软件 2.Unity建模插件:ProBuilder 3.程序动态生成网格 四.Unity中如何显示网格 1.MeshFilter:网格过滤器 2.MeshRenderer:网格渲染器 3.SkinnedMeshRenderer:蒙皮网格渲染器 3.1 骨骼动画 3.2 SkinnedMeshRenderer组件 3.2 使用BakeMesh进行优化 五

  • js实现图片加载淡入淡出效果

    本文实例为大家分享了js图片加载淡入淡出效果展示的具体代码,供大家参考,具体内容如下 HTML代码 首先是图片标记的写法: <img data-src="/path/to/image.jpg" alt=""> 需要将图片的地址放到 data-src 属性里,而src值填写默认的一张图片. CSS代码 所有具有data-src属性的图片,我们将其初始显示状态为不可见,通过透明度来调节: img { opacity: 1; transition: opaci

  • python使用pgzero进行游戏开发

    目录 1. pgzero python在各个领域都有着丰富的第三方库,pygame是python在游戏领域的应用库,可以用来开发各种不同的游戏.但是对于初学者来说,还是存在一定的门槛.pgzero是在pygame基础上做了进一步的封装,使得设计一款游戏十分的方便. pgzero的安装 pip install pygame pip install pgzero 2. 游戏设计的过程 我们可以简单梳理下开发一款简单游戏需要的过程: 游戏的故事设计 游戏的场景绘制(背景图片和声音) 游戏的角色 如何控

  • Pygame游戏开发之太空射击实战图像精灵下篇

    目录 视频 图像精灵 变为图形精灵 在哪里可以找到艺术品 组织游戏组件 视频 观看视频 图像精灵 这是我们教程系列“使用 Pygame 进行游戏开发”的第 3 部分.它适用于对游戏开发和提高Python编码技能感兴趣的初学者/中级程序员.您应该从第 1 部分开始:入门 变为图形精灵 彩色矩形很好 - 它们是开始并确保游戏正常工作的好方法,但迟早你会想要为你的精灵使用很酷的宇宙飞船图像或角色.这就引出了第一个问题:您从哪里获得游戏图形. 在哪里可以找到艺术品 当您的游戏需要美术时,您有 3 种选择

  • IOS游戏开发之五子棋OC版

    先上效果图 - 功能展示 - 初高级棋盘切换效果 实现思路及主要代码详解 1.绘制棋盘 利用Quartz2D绘制棋盘.代码如下 - (void)drawBackground:(CGSize)size{ self.gridWidth = (size.width - 2 * kBoardSpace) / self.gridCount; //1.开启图像上下文 UIGraphicsBeginImageContext(size); //2.获取上下文 CGContextRef ctx = UIGraph

  • iOS开发中仿Tumblr点赞心破碎动画效果

    最近Tumblr轻博客无论是web端还是移动端,都非常受欢迎,简单调研了一下,其中动画是我感兴趣的,特此写了个仿Tumblr点赞心破碎动画: 1.首先看下效果: 2.模仿Tumblr中的效果应用如下: 原理:使用按钮点击Action增加两个事件,通过改变背景hidden和frame,切换图片,增加动画效果等: setupUI及touch Action: <span style="font-size:14px;">- (void)setupUI { // 点击的btn UIB

  • 网页游戏开发入门教程二(游戏模式+系统)

    一.游戏模式目前webgame游戏模式大体上可以分为以下四类:1.玩家拥有一个城市,不断的升级城市内建筑,建筑可以自动获得物资,可以生产军队,军队之间进行对比数值的战斗.这里我简单的称为Ogame模式. 比较优秀的代表:战神世界II,Travian,Ogame,武林三国,纵横天下,领主online,乱舞春秋,热血三国,方便面三国等等.这是一个比较成熟的模式, 但正因为成熟.因此,玩家接触到这类游戏比较的多,除非你能超过这些优秀的代表,否则就只是简单的重复开发. 对玩家来说:优点:Ogame模式模

  • javascript游戏开发之《三国志曹操传》零部件开发(一)让静态人物动起来

    首先来说,让一个游戏赋有可玩性必须要动静结合.(哈哈,大家以为我要讲作文了...但其实我今天要讲的是Javascript)静态的东西谁不会做呢?因为东西一生下来就是静态的(除非你是用的gif动画),所以不需要任何处理就能完成静态.那么我将要在下面告诉大家如何运用Javascript将静态图片变为动态图片. 一.图片准备     fight01.pngfight02.pngfight03.pngfight04.png03.png02.png01.png首先,我找了一些出自经典游戏<三国志曹操传>

  • javascript游戏开发之《三国志曹操传》零部件开发(五)可移动地图的实现

    一.前言 这一讲的内容很简单,大家理解起来会更快.因此我只对重点加以分析,其他的就轮到大家思考哦!首先来说,我对游戏开发可以算是不怎么深入,因为现在的程序员爱用canvas,我却就只会拿几个div凑和.不过没关系,因为做出来的同样是游戏.哈!废话最近有点多,望大家原谅.接下来请看代码解析. 二.代码讲解 今天调一下讲解顺序,先看代码后看图片. 这是slg.js里的内容: 复制代码 代码如下: var subtractedMargin = 0; var subtractedMarginL = 0;

随机推荐