Appearance
粒子系统
创建粒子系统

CPU粒子系统与GPU粒子系统
二者核心区别在于计算位置、性能表现以及适用场景。
| 特性 | CPU粒子系统 (CPUParticles) | GPU粒子系统 (GPUParticles) |
|---|---|---|
| 计算核心 | 由主处理器(CPU)进行串行计算 | 由显卡(GPU)进行并行计算 |
| 性能表现 | 适合少量到中等数量的粒子,数量过多会严重拖累游戏帧率 | 可轻松处理成千上万个粒子,对主游戏逻辑(CPU)负载极低 |
| 配置方式 | 直接在节点属性面板中设置参数,或通过GDScript脚本控制 | 必须依赖 ParticleProcessMaterial(粒子处理材质)资源来定义行为,也可配合自定义着色器 |
| 适用场景 | UI界面特效、小规模火花、简单的烟雾等轻量级效果 | 复杂的天气系统(如暴雨、大雪)、大场面爆炸、火焰、魔法洪流等 |
| 兼容性 | 兼容性极好,在低端设备或GPU瓶颈的情况下可能表现更稳定 | 需要现代显卡支持,是追求高质量视觉表现的首选 |
- 选型建议
1. 什么时候用 GPU 粒子? 如果你需要营造宏大的视觉效果,比如一场覆盖全屏的暴雨、战场上密集的爆炸烟尘,或者绚丽的魔法技能,首选 GPUParticles。因为它利用显卡的并行计算能力,即使同屏渲染数万个粒子也不会导致游戏卡顿。不过要注意,它的参数配置需要通过 ParticleProcessMaterial 资源来完成,上手门槛稍微高一点点。
2. 什么时候用 CPU 粒子? 如果你的特效规模很小,例如角色踩在地面上溅起的几滴小水花、按钮点击时的简单反馈光效,或者你的游戏需要适配非常老旧的低端设备,CPUParticles 会更省心。它不需要额外的材质资源,直接在检查器里调参即可,非常直观。
3. 两者可以互相转换吗? Godot 提供了非常人性化的功能:你可以在编辑器中一键将 GPUParticles 转换为 CPUParticles(通常在3D编辑器视口顶部的菜单栏选择 Particles > Convert to CPUParticles)。这方便你在开发初期快速调试,后期再根据性能需求决定最终使用哪种方案。
在实际的游戏开发中,很多开发者会采取混合策略:用 GPU 粒子做背景的大范围环境特效(如下雨),同时用 CPU 粒子做前景的小规模交互特效(如雨滴落在主角身上溅起的水花),从而在画质和性能之间取得完美的平衡。
粒子系统默认报错



粒子调节
不同于其他引擎,godot里的例子是通过材质里的属性进行对粒子的调节。
粒子朝向

粒子贴图


去除黑底
