As my latest side project, ive ported a 2002 open source game to nintendo switch. The game is rRootage, made by Kenta Cho, a japanese developer who has released tons of open source games. Its a bullet hell game that has been ported to many platforms over the years, such as Android, IOS, and PsP homebrew. I chose that game to port because I like bullet hells and because this is a easy project to port due to its minimal codebase and dependencies while it has a license that allows porting to consoles. In here, i write about how I ported it to Nintendo Switch
All players like to play games that perform well in their machines, and yet, knowing what to do to have a well performing game isn’t something easy to learn. On the GPU side, tweaking the settings of the engine is something well documented, but knowing how to code the game so it performs great is not so clear.
Over and over i have seen people making the same mistakes when developing games on Unreal Engine 4, so i decided to gather the information i’ve found around performance while working on projects of different scales, and share it with the community.
This guide will be useful for unity developers too, as a lot of them are very similar in both engines. Its focused around CPU and code performance, not GPU.
After getting bottlenecked by UE4 on the last ECS battle simulation Link , I decided to create one on direct C++,using an engine written by me.
The new simulation simulates 130.000 entities at 60 fps on my Ryzen machine. It is designed in a way that it almost scales linearly with cores.
Video
Inspired by the new Unity ECS system, i decided to try those same techniques with UE4 and C++ instead of Unity and C# . For my experiment, i used the library EnTT to drive the ECS.