-
Notifications
You must be signed in to change notification settings - Fork 20
Features
This library uses display entities.
All other multipart entity systems use leather armor for the base material of bones and change the color of the leather armor to update the color of the bone. This has the limitation that the color of dark bones cannot be changed.
WSEE takes a different approach. Instead of changing the leather armor color, the item itself is swapped out for another item with a different texture. This allows for not only more accurate hit colors, it lets you change the texture completely. For example, a state could exist where the entity is completely white, and only has its normal texture applied when a player gets closer.
This library was designed with cpu and memory efficiency in mind. Certain strategies were used to speed up calculations and lower memory usage
When animating a model, keyframes
are used. These keyframes
define at what time a bone should be in which position and rotation. Keyframes
are not defined for every single tick, meaning that values must be interpolated. To speed up computation, when a model is loaded, position and rotation values are calculated for every bone in every animation, and stored. This means that when a bone is drawn, no interpolation calculation needs to be done, increasing drawing speed.
The caching described above is done in a static variable, meaning that once the model is loaded once, all models of the same type can use that cache, reducing memory usage.
This library is designed to be used with Minestom. Because of this, servers using this library will use less resources than a server using ModelEngine and Spigot.