fixed not cleaning up anim controller when reloading it in editor
This commit is contained in:
parent
e618210f7f
commit
bdc78aae04
3 changed files with 3 additions and 0 deletions
|
@ -56,6 +56,7 @@ public:
|
|||
ResourceType getType() const override { return ResourceType("anim_controller"); }
|
||||
|
||||
void create() { onCreated(State::READY); }
|
||||
void destroy() { doUnload(); }
|
||||
void unload() override;
|
||||
bool load(FS::IFile& file) override;
|
||||
ComponentInstance* createInstance(IAllocator& allocator) const;
|
||||
|
|
|
@ -950,6 +950,7 @@ void AnimationEditor::loadFromEntity()
|
|||
auto* scene = (AnimationScene*)m_app.getWorldEditor().getUniverse()->getScene(ANIMABLE_HASH);
|
||||
ComponentHandle ctrl = scene->getComponent(entities[0], CONTROLLER_TYPE);
|
||||
if (!ctrl.isValid()) return;
|
||||
newController();
|
||||
m_path = scene->getControllerSource(ctrl).c_str();
|
||||
clearUndoStack();
|
||||
load();
|
||||
|
|
|
@ -1765,6 +1765,7 @@ ControllerResource::ControllerResource(IAnimationEditor& editor,
|
|||
|
||||
ControllerResource::~ControllerResource()
|
||||
{
|
||||
m_engine_resource->destroy();
|
||||
LUMIX_DELETE(m_allocator, m_root);
|
||||
LUMIX_DELETE(m_allocator, m_engine_resource->m_root);
|
||||
LUMIX_DELETE(m_allocator, m_engine_resource);
|
||||
|
|
Loading…
Reference in a new issue