Is there a way to optimize performance by reducing the number of animation frames being sent?
I am currently experiencing some performance issues. When I place 10 monster models on the screen simultaneously, the server's TPS starts to drop drastically. After comparison, I can confirm that the more elements are moving on the monsters, the worse the performance.
So, my temporary solution is to reduce the number of joints on monster models and the number of moving elements on each monster to optimize the performance of scenes with multiple monsters.
I have a guess about how to optimize this issue. Firstly, the smooth frame rate exhibited by entities clearly exceeds the maximum packet frame rate supported by the Minecraft server. This surplus smooth frame rate is based on a client-side computational "interpolation algorithm," and the server's packet sending speed has not been increased from 20/s to 120/s. In other words, the model engine still sends animation update data for each model at a maximum speed of 20/s, and the rest is computed locally on the client side.
Based on this premise, is it possible for us to minimize the number of packets sent by the server per second and rely more on the client-side interpolation algorithm to fill in the missing frames? Using the concept of animation as an example, this is similar to reducing the number of keyframes while achieving the same animation effect, thereby reducing the server's burden.