alelievr / NodeGraphProcessor

Node graph editor framework focused on data processing using Unity UIElements and C# 4.6
https://github.com/alelievr/NodeGraphProcessor/projects/2
MIT License
2.3k stars 385 forks source link

Undo Performance #77

Closed GangstaHikka closed 4 years ago

GangstaHikka commented 4 years ago

Undo performance dramatically degrades right after open Graph and don't restore after the closing of Graph Window. So maybe implement some Undo listeners cleaning process after the window closing? Or add a possibility of disabling Undo for Graph? Degraded undo performance makes undo totally useless, so if there is no way to fix it disable it will be a better option.

alelievr commented 4 years ago

Hello, There was indeed an issue with undo event not being unsubscribed causing performance issues, here's the fix: https://github.com/alelievr/NodeGraphProcessor/commit/d95a37cd5f396890bef0dc433c1aa25390054145 (in master).

Note that a refactor using the [SerializeReference] feature is planned to improve serialization speed, asset size and undo/redo speed on big graphs.