You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I've been slowly optimizing (and adding massive amounts of missing classes/structures/etc) to the library, and thought I'd share at least the base performance enhancing drug.
Deserialization times are incredibly slow once you start loading more and more classes (such as actors, components, etc), that have special serialization requirements. Mostly due to the fact that you are allocating lists, arrays, doing single-reads at a time, when you should be doing things in "bulk". (Such as TArray.SerializeBulk())
The following is the meat and potatoes for the reading (and partial writing) using much faster mechanisms, and proper support for structure-based reads, rather than per-field reads (which are slow)
Unfortunately, since the UE Explorer isn't "open source", I have to manage my own custom build of it, while I do a lot of cleanup, and reworking a lot of the UElib internals due to lack of support for a lot of the engine serialization tasks (such as components, custom serialization, bulk data, and non-default properties that you need tangible access to, rather than just string data). I'd offer a pull request, but it will cause a lot of "taint" to the library as you know it.
The text was updated successfully, but these errors were encountered:
I've been slowly optimizing (and adding massive amounts of missing classes/structures/etc) to the library, and thought I'd share at least the base performance enhancing drug.
Deserialization times are incredibly slow once you start loading more and more classes (such as actors, components, etc), that have special serialization requirements. Mostly due to the fact that you are allocating lists, arrays, doing single-reads at a time, when you should be doing things in "bulk". (Such as TArray.SerializeBulk())
The following is the meat and potatoes for the reading (and partial writing) using much faster mechanisms, and proper support for structure-based reads, rather than per-field reads (which are slow)
https://gist.github.com/6c32846e50e029a6042c367052f3133a
Unfortunately, since the UE Explorer isn't "open source", I have to manage my own custom build of it, while I do a lot of cleanup, and reworking a lot of the UElib internals due to lack of support for a lot of the engine serialization tasks (such as components, custom serialization, bulk data, and non-default properties that you need tangible access to, rather than just string data). I'd offer a pull request, but it will cause a lot of "taint" to the library as you know it.
The text was updated successfully, but these errors were encountered: