往期博客[Unity学习笔记:FPS游戏制作(2)] 发射子弹————(2021.6.20学习笔记)

文章目录

  • 一,实现思路
  • 二,粒子效果的实现
    • (1)子弹拖尾特效的实现
    • (2)枪口火焰特效的实现
    • (3)碎屑飞溅特效的实现
    • (4)子弹碰撞爆炸波特效的实现
    • (5)子弹碰撞特效的实现
  • 三,子弹与物体碰撞触发粒子特效的实现
    • (1)设置子弹预制体与被碰撞物体的参数
    • (2)子弹碰撞物体触发特效代码的实现
  • 四,最终效果

一,实现思路

使用粒子系统制作子弹拖尾特效与子弹碰撞特效,碰撞碎屑飞溅特效。在子弹生成的时候,将拖尾粒子效果置于子弹的子物体集中,保证拖尾粒子效果能跟随子弹物体一起运动,然后在子弹碰撞到物体的时候,在子弹位置生成碰撞特效与碎屑飞溅特效

二,粒子效果的实现

(1)子弹拖尾特效的实现

新建一个粒子系统对象,重命名为BulletTailE,修改参数值如下图





子弹拖尾特效实现效果如下图

(2)枪口火焰特效的实现

新建一个粒子系统对象,重命名为OpenFireP,修改参数值如下图





枪口火焰特效实现效果如下图

(3)碎屑飞溅特效的实现

新建一个粒子系统对象,重命名为ExplosionDetritus,修改参数值如下图





碎屑飞溅特效实现效果如下图

(4)子弹碰撞爆炸波特效的实现

新建一个粒子系统对象,重命名为ExplosionEffect,修改参数值如下图





子弹碰撞爆炸波特效实现效果如下图

(5)子弹碰撞特效的实现

将碎屑飞溅特效设置为爆炸波特效的子物体,使两个特效合成为子弹碰撞特效,效果如下图

三,子弹与物体碰撞触发粒子特效的实现

(1)设置子弹预制体与被碰撞物体的参数

给子弹预制体添加刚体与碰撞体组件,并将碰撞体组件的IsTrigger选项点开,然后给被碰撞物体添加碰撞体组件,详细设置如下图


(2)子弹碰撞物体触发特效代码的实现

代码如下

using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class BulletScript : MonoBehaviour
{public GameObject BulletTPrefab;//子弹拖尾特效预制体public GameObject ExplosionPrefab;//子弹爆炸特效预制体void Start(){GameObject BulletTail = Instantiate(BulletTPrefab);BulletTail.transform.parent = transform;BulletTail.transform.rotation = transform.rotation;BulletTail.transform.localPosition = new Vector3(0, 0, 0);//在指定坐标生成子弹}void Update(){}private void OnTriggerEnter(Collider other)//当物体接触到另外一个刚体时触发{GameObject ExplosionEffect = Instantiate(ExplosionPrefab,transform.position,transform.rotation);Destroy(ExplosionEffect, 2);}}

把该脚本挂载于子弹预制体

四,最终效果

[Unity学习笔记:FPS游戏制作(3)]子弹拖尾,碰撞与枪口火焰效果相关推荐

  1. [Unity学习笔记]2D游戏中的触碰/OnMouseDown

    [Unity学习笔记]2D游戏中的触碰/OnMouseDown 这种情况多用于2D游戏的触屏 1.给2D游戏对象加上collider 2D,让其能够被检测到

  2. UE4学习笔记(三)刀光拖尾的制作

    话不多说,先放成品图 进入正题. 第一步,创建一个材质,我这里名字取的[White]. 首先你得把材质改成面板中的数值改成这样,[半透明]是因为刀光就是比较透明的,不然就会遮挡人物.[无光照],是指由 ...

  3. Unity中 利用Line Renderer || Trail Renderer制作飘烟拖尾

    在Unity中粒子特效就可以制作飘烟拖尾,但是如果运动过快难免会有不自然的断开.虽然粒子中加入了Trail,但是我让拖尾转角圆滑比较困难(这方面还得请教特效同学).当然如果对转角没有要求,粒子还是最简 ...

  4. [Unity学习笔记:FPS游戏制作(2)] 发射子弹————(2021.6.20学习笔记)

    往期博客 [Unity学习笔记:FPS游戏制作(1)]角色的移动,旋转与推进上升----(2021.6.13学习笔记) 文章目录 一,实现思路 二,实现代码 三,脚本的使用方法 四,最终效果 一,实现 ...

  5. Unity学习笔记1 简易2D横版RPG游戏制作(一)

    这个教程是参考一个YouTube上面的教程做的,原作者的教程做得比较简单,我先参考着做一遍,毕竟我也只是个初学者,还没办法完全自制哈哈.不过我之前也看过一个2D平台游戏的系列教程了,以后会整合起来,做 ...

  6. Unity学习笔记—二次元日系游戏制作(实践篇-游戏初始化场景制作)

    原教程:siki:二次元日系游戏制作工具 - live2dSDK入门教程 http://www.sikiedu.com/my/course/282 (上)Unity学习笔记-二次元日系游戏制作(理论篇 ...

  7. unity学习笔记2-卡牌游戏的制作

    unity学习笔记2 需求:制作卡牌游戏 第一步,建立card类,carddatabase类 card类删除自带的start和update方法,因为只是个对象类,负责装载对象即可 carddataba ...

  8. Unity 2D 学习笔记:游戏实例Sunnyland

    Unity 2D 学习笔记:游戏实例Sunnyland 01安装软件&导入素材 02编辑素材&Tilemap 03图层layer&角色建立 04角色移动 05角色方向& ...

  9. 【Unity】U3D TD游戏制作实例(三)相机管理器、生成敌人优化、敌人血槽小组件

    文章目录 相机管理器 调整相机 敌人类优化 融合导航测试代码 敌人移动速度 销毁对象 加载敌人配置 敌人生成方式优化 血槽组件 相机管理器 调整相机 首先将主相机调整为正交镜头,这样可以防止模型畸变. ...

最新文章

  1. 浅析_tmain()与main()的区别
  2. hdu 4496 并查集 逆向 并查集删边
  3. 芒果TV会员,月卡最低9.9元,年卡最低128元!
  4. 伪共享和缓存行填充,Java并发编程还能这么优化!
  5. java第七章jdbc课后简答题_javaEE简答题答案
  6. python增加工作日列_将工作日添加到日期字段
  7. 如何查看linux命令源代码(转自网络)
  8. Sql 列转行 三种方法对比
  9. idea弹出Server‘s certificate is not trusted
  10. JavaScript 遗漏知识再整理;错误处理,类型转换以及获取当前时间、年份、月份、日期;...
  11. Protobuf3详细介绍
  12. Java —— 学生成绩分析程序Demo(附源代码)
  13. MIMO中预编码Precoding和波束beamforming有什么区别?
  14. 256K,320K及以上Nero AAC,QAAC,FAAC,MP3,OGG等主流有损音频格式横评
  15. 2019牛客暑期多校训练营(第八场) CDMA
  16. git操作生成ssh公钥
  17. DPU-PYNQ使用笔记
  18. 软件测试仿真系统,嵌入式系统软件仿真自动化黑盒测试平台
  19. 中秋国庆长假,SEO你在坚持吗?
  20. Jfinal engin 集成shiro标签支持

热门文章

  1. NDK开发使用addr2line定位到错误代码行
  2. Gitbook安装与设置
  3. shell小技巧(八十二)彩票选号器
  4. java判断oom_OOM排查
  5. React封装一个纯CSS实现的水滴样式的盒子
  6. 文献阅读笔记【5】:基于图像处理的膨胀圆裂缝检测算法
  7. 部署https后浏览器提示不安全,不出现绿色小锁?
  8. rust的矿坑_Rust 基础语法
  9. 《网页设计基础——HTML常用标签》
  10. R语言 —— 多元线性回归