粒子系统

引擎内包含了一套完整的粒子系统,让美术人员能够自由创建2D/3D特效,从烟雾、火焰,到游戏中的各类复杂技能。 特效由一个或多个模块化的发射器组成,每个发射器负责一个单一的效果,多个发射器组成最终的复杂效果。 每个发射器由多个模块组成,有的模块负责创建粒子,有的模块影响粒子,包括改变粒子的位置、颜色、速度等。

1. 粒子的制作

MagicCube提供了特效编辑器用于特效资源的制作。详情请参考“粒子编辑器“ 特效编辑器最终生成.fx文件,完整的特效资源由一个.fx文件和其引用的贴图文件组成。

2. 粒子的使用

2.1. 创建粒子

用户可通过创建一个粒子系统类型的Actor来使用特效功能。

local FxActor = world:CreateActor(XEParticleSystemActor.ACTOR_TYPENAME)
FxActor:GetRootComponent():LoadAsset(FileUtils:FilePath(FX_PATH))

2.2. 控制粒子

--播放特效
FxActor:GetRootComponent():PlayParticleSystem()
--停止特效
FxActor:GetRootComponent():StopParticleSystem()
--重启特效
FxActor:GetRootComponent():RestartParticleSystem()

2.3. 注意事项

为了减小批次,建议减少特效中所使用的贴图数量,同时,相邻的发射器尽量使用同一张贴图。 在某些情况下,可以把不同的贴图合到一张大图上,配合SubUV模块让每个发射器使用不同的UV区域,来减少贴图数量。

2.4. 高级使用

特效可在蒙太奇动画或过场动画中使用。详情请参考: “Sequencer编辑器” “蒙太奇编辑器

@Copyright © cosmos 2019 all right reserved,powered by Gitbook修订时间: 2021-04-12 18:28:15

results matching ""

    No results matching ""