engine-lottie
engine-lottie copied to clipboard
Lottie 销毁逻辑
类似 https://github.com/galacean/engine/pull/1831 这条 PR,开发者需要如何销毁 Lottie 的资源?
重构 glTF 引用计数的那个 PR 大致做了以下工作:
- 将 glTF 原本克隆根节点的操作作为类方法(
instantiateSceneRoot)方便使用,并且保证原始节点不直接被生产环境使用 - 所有 glTF 解析得到的原始节点都加上模版标记(
_isTemplate),这个标记会忽略引用计数,即场上只剩下原始节点时,引用的资产引用计数依旧是 0。 - 在场上有使用 gltf.instantiateSceneRoot 的实例或者其子节点的克隆时,非强制不能回收局部资源,保证模型正常显示
- 在场上没有使用 gltf.instantiateSceneRoot 的实例或者其子节点的克隆时,可以清理局部资源的引用
Lottie 的使用场景会简单一些,这块定下来我可以依照 @GuoLei1990 对复合型资产的设计进行实现。