经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » 程序设计 » 游戏设计 » 查看文章
Fire Balls 08——音效的添加
来源:cnblogs  作者:优梦创客  时间:2019/9/10 10:29:55  对本文有异议

版权申明:

  • 本文原创首发于以下网站:
  1. 博客园『优梦创客』的空间:https://www.cnblogs.com/raymondking123
  2. 优梦创客的官方博客:https://91make.top
  3. 优梦创客的游戏讲堂:https://91make.ke.qq.com
  4. 『优梦创客』的微信公众号:umaketop
  • 您可以自由转载,但必须加入完整的版权声明

目标:

  • 给背景加上音效
    给子弹加音效并按照按下时间来提高音阶

给背景加音效

  • 首先我们先联系到课助老师免费获取音效,然后导入到我们的项目中,并拖给我们的ENV组件,并把Loop选项打开即可。

给子弹加音效并按照按下时间来提高音阶

  • 首先打开我们的Projectile把我们的Biu音效拖入,然后打开我们的Porjectile脚本编写如下代码
  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using UnityEngine;
  4. public class Tank : MonoBehaviour
  5. {
  6. public GameObject Bullet;//子弹的预制体
  7. public Transform ShotPos;//子弹发出的位置
  8. public bool gameover;
  9. public float lastFireTime = 0;
  10. public float pressTime = 0;
  11. // Start is called before the first frame update
  12. void Start()
  13. {
  14. }
  15. // Update is called once per frame
  16. void Update()
  17. {
  18. if (gameover)
  19. return;
  20. if (Input.GetButtonDown("Fire1"))
  21. {
  22. pressTime = Time.time;
  23. }
  24. if (Input.GetButton("Fire1")&&Time.time - lastFireTime>0.2f)
  25. {
  26. //每一帧计算当前时间-按下时间之差d
  27. float d = Time.time - pressTime;
  28. //实例化一个子弹;
  29. var transProj = Instantiate(Bullet).transform;
  30. float f = d / 2;//最大2秒内有变化,超过2秒使用最高音高系数(1)
  31. if (f > 1)
  32. {
  33. f = 1;
  34. }
  35. transProj.GetComponent<AudioSource>().pitch = 1 + f * 2;
  36. //设置子弹的父节点;
  37. transProj.SetParent(transform, false);
  38. //设置子弹的坐标;
  39. transProj.position = ShotPos.position;
  40. //给子弹一个力,可以让子弹往前移动;
  41. Vector3 v = ShotPos.forward * 20;
  42. transProj.GetComponent<Rigidbody>().AddForce(v, ForceMode.Impulse);
  43. lastFireTime = Time.time;
  44. }
  45. }
  46. }
  • 这样进入游戏时持续按下射击键即可听到我们发出的子弹的音效的不同

原文链接:http://www.cnblogs.com/raymondking123/p/11495560.html

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号