Passer au contenu principal

Feb: More Profiling & Better Interpolation!

· 4 minutes de lecture
Gabriel • SyedMuhammad
lead developer™

New Profiling Tools & Better Interpolation!

Welcome to our roundup of the latest updates from the last month!

Unreal Engine 5.5

Epic has finally released the long-awaited hotfix 5.5.2 for Unreal! And in the 1.71.0 update, nanos world has been updated to Unreal 5.5 as well!

The Steam branch bleeding-edge is now running on 5.5, while main remains on 5.4 for now. We strongly recommend that you update your assets as soon as possible to ensure compatibility!

New Profiling Tools

We've introduced several new features and improvements to our profiling toolset!

Network Stats

We've implemented a new profiling feature that displays the amount of network data being used per class during a game session:

Client Network Stats displaying accumulated bytes usage per class in this session

On the server side, a debug message will be output every minute, providing details on the number of bytes sent and received:

Server Profiling displaying Network stats over the last minute

To enable this feature on the client, toggle both profiling and display network stats in the screen settings.

For the server, start it with the --profiling command-line flag.

Network Invokes

By enabling in-game profiling, you can now view the time spent on individual class methods being called:

Client Profiling Network on Screen now displays Network Invokes times

Network Interp Stutters

Recent Unreal updates caused issues with network interpolation in poor connection scenarios. Every packet loss or small delay resulted in visible stutters or hitches, as shown in the video below:

Old Interpolation with occasional packet loss, causing stutters/hitches

We have significantly improved the client-side interpolation/extrapolation system, preventing these stutters even on weak connections:

New Interpolation with packet loss but no stutters/hitches

This improvement currently applies to character movement. We plan to revisit interpolation for physics-based objects soon™.

Cached Vault API

We have implemented an experimental cache system for our Vault, as we know that it's currently extremely slow to load the Vault assets, so we implemented an intermediary cache system that speeds a lot the Vault requests:

Vault Loading time reduced down to a second

note

As this is a cache system, the results are internally updated at a frequent rate, expect some seconds delay when updating your content in the Vault and seeing it in game.

Docs Improvements

Installation du serveur

We've updated our Server Installation page with revised minimal OS requirements for setting up a nanos world server on Linux.

API References Pop-up

We've enhanced our documentation with a new component that displays detailed method and event information when hovering over them, improving tutorials and examples:

New Assets Thumbnails

We've refreshed all asset thumbnails photos and fixed missing ones:

Sandbox Spawn Menu with all thumbnails updated

Loading Screen Improvs

Async Callbacks

The "waiting for async callbacks" step now displays the number of pending tasks:

Smooth Progress

Also, now the progress bars update smoothly instead of jumping between values.

Updated Dependencies

We've updated our internal dependencies to ensure stability and performance:

  • CEF updated to version 132.
  • Ultra Dynamic Sky Plugin updated to version 8.6 - make sure to update yours too.

Enabled Plugins

We've enabled the MotionTrajectory plugin for use in your UGC projects.

Conclusion

Hope you enjoyed this month's updates!

I'm working on putting together a clearer development roadmap and restructuring some parts of the project to make everything run even smoother. Exciting things are on the horizon, and I can't wait to share more soon!

Big thanks to all of you for your continued support and feedback. It really keeps me motivated. Stay tuned for more awesome updates next month!