结束行为
阅读时间:1分钟更新于 2024-11-11 15:2
合成结束行为类型
Galacean Effects 合成在设定的时长到达时会触发对应的结束行为,具体包括:销毁、无限播放、重播和冻结。
每种结束行为分别对应合成结束后的产物处理方式:
- 销毁:合成结束时,会被销毁并从画面清除,合成使用的数据和 GPU 资源会被释放
- 无限播放:合成会无限播放,除非暂停或者销毁 player,交互元素可以在其对应生命周期触发
- 重播:合成结束时,player 会从头继续播放合成,播放不会停止
- 冻结:合成结束时,会被销毁释放资源,同时保留最后一帧图像在画面(注意,这个时候交互元素不再能够触发)
结束回调
为了实现不同场景的应用,我们在合成上添加了合成播放结束回调 composition.on('end', ()=>{})
,回调会在合成每次播放结束时触发:
- 销毁:合成播放完成时触发一次
end
回调 - 冻结:合成播放完成时触发一次
end
回调 - 无限播放:合成第一次播放至生命周期结束时触发
end
,后续不再会触发 - 重播:合成每一遍播放结束都会触发
end
举例场景
需要产物播放指定次数。
解决思路:
通过调用合成的播放结束回调,记录播放次数,在指定次数时选择暂停播放或者销毁播放期等。
Preview