首页/ 第 12 章 · 特效与粒子/ 第 199 课
LESSON 199 · 特效与粒子

特效与音频整合

特效与音频已整合。下一课特效章综合练习。

⏱ 约 14 分钟📊 难度:入门🗂 第 12 章 · 特效与粒子📍 第 199 / 300 课
课程进度
199 / 300

🎯本节学习目标

  • 实现音效特效同步
  • 实现环境音持续
  • 整合反馈系统

🚀课程导读

“特效一出声效就响”是“手感”的核心。本课把特效与音频系统打通。

特效与音效同步触发

一次触发两样反馈。

  1. 【整合触发器】做一个 FeedbackManager 统一管理:
  2. public class FeedbackManager : MonoBehaviour {
  3. public static FeedbackManager Instance;
  4. public AudioManager audio; // 音频管理器
  5. void Awake() { Instance = this; }
  6. public void PlayHit(Vector3 pos) {
  7. // 1. 实例化命中特效
  8. ObjectPool.Instance.GetHitFx(pos);
  9. // 2. 播放命中音效(随机音调)
  10. audio.PlaySFX(audio.hitSound, 0.9f);
  11. // 3. 屏幕反馈
  12. CameraShake.Instance.Shake(0.2f);
  13. }
  14. }
  15. 【调用】攻击命中/受到伤害时统一走 PlayHit()。
  16. 【音画同步】粒子特效的爆发瞬间 = PlayOneShot 音效瞬间,天然同步。
  17. 【动画事件】走路/攻击的“动画事件”同时触发粒子+音效(第 135 课):
  18. FootStep 事件里:粒子步尘 + PlaySFX(脚步随机音效)。
  19. 【延迟音效】爆炸先闪后响:协程延时 0.05s 播爆炸音(光速快于音速,微调更真实)。
  20. 【注意】音效与特效别“脱节”,同一处触发。
  21. 【完成】动作、音效、特效三位一体。
反馈黄金律:特效+音效+屏幕震动“同时出现”,手感瞬间翻倍。

环境音与持续特效

场景“活”起来。

  1. 【环境音】瀑布、风声、火焰声:3D AudioSource 放在特效位置(Spatial Blend=1,第 175 课)。
  2. 【持续特效】流水粒子 + 水声同步:把 AudioSource 与粒子放同一对象,走近听得见、特效在眼前。
  3. 【距离联动】远离时音量衰减、特效不显示(Culling,第 186 课),走近自然“出现”。
  4. 【随机氛围】随机播放鸟叫/风声(协程+随机延时,第 173 课随机音效)。
  5. 【昼夜切换】(进阶)代码切换天空盒+环境光+环境音。
  6. 【整合检查】把“火把(火光+火焰+噼啪声)”做成一个预制体,一个对象全包含。
  7. 【预制体】做“篝火”“瀑布”等环境预制体,拖进场景即“有声有色”。
  8. 【注意】环境音用 3D,避免全图都响。
  9. 【完成】你的场景“有声有色”了!
环境整合 = 特效+3D音源“打包成一个预制体”,一拖即“活”。

常见错误与排查

错误:环境音效全图都响?
原因:AudioSource 的 Spatial Blend 是 0(2D)
解决:环境音源 Spatial Blend 设 1,配合 Min/Max Distance 衰减。

动手练习

课后小任务(做出来才算真的学会)

  • 整合命中反馈(特效+音效+震动)
  • 做“篝火”整合预制体
  • 实现随机环境氛围音

本节小结

特效与音频已整合。下一课特效章综合练习。

完成打卡后,主站会实时更新你的学习进度 🎯

← 上一课特效性能优化