What you need to know about Hummingbird’s support for Nintendo Switch
As of 24th of April 2018 Coherent Labs is the only UI solution on the market that has the privilege of supporting Nintendo Switch™. We have been wanting to say that for a while now!
The communication between the two teams – Nintendo & Coherent Labs – started back in December of last year and has been going without a hitch to this day, when we can officially offer our SDK for Nintendo to clients.
Fully multiplatform UI solution
From a business perspective, adding Nintendo Switch to our portfolio means our clients can now enjoy the workflow and performance benefits of the leading UI tool on the last platform they couldn’t. That makes the lives of our sales team much, much easier as there is virtually nothing left we can’t offer to our clients at this point.
Being the most popular UI solution used for games with the widest variety of platform support we were eager to add Nintendo Switch to the list, as it was the last major platform missing from our portfolio. If you are wondering how this whole ordeal started, it’s quite simple – we got a request from a prospective client whose game was to be developed for Nintendo Switch. The next step was to get in touch with the Nintendo team and see what needed to be done to make this platform support become a reality.
Eager to know which is the game that made us go through this whole ordeal? Stay tuned and you will find out. For now, however, let us tell you a bit about the technical challenges we encountered while integrating Hummingbird.
Integrating Hummingbird with Nintendo Switch
Hummingbird’s core code is lean, mean and platform-independent. Porting it to almost any platform takes as little time as adding the new platform to our build system. That’s not as true when speaking about our one and only major dependency – the JS VM.
For Nintendo Switch specifically we are using JavaScriptCore, although we are looking into moving to ChakraCore later in the year, but nothing is solid as of yet. Porting JSC took most of our time in the process. The worst offenders being getting CMake to play well with the build system of Nintendo Switch and forcing all JSC’s internal tools to generate relevant code. Everything else was smooth sailing so congrats to Nintendo for the amazing transition experience.
But there’s another reason we love getting our hands on new technologies – new compilers and tools are a great way for validating that we are heading in the right direction. We are users as well as developers of our own product and have integrated the core SDK into engines like UE4 and Unity3D. We also have a dedicated team creating UI kits (which you’ll finally get to enjoy in HB 1.10). Yet, how easy it is to best integrate our code into a new tech is always a good test. Even better, new hardware means more options for us to check how our architecture performs. How does the task system perform on it? Does the new compiler find warnings in our code that the others didn’t? Does the graphics API fit our rendering subsystem?
The answer to all of those was a resounding success. HB runs at submillisecond speeds in our FPS kit:
With adding platform support for Universal Windows Platform and now Nintendo Switch, Hummingbird became a fully multiplatform UI solution. Now it is adequate to say that we will shift our focus to expanding Hummingbird’s features, so keep an eye on our Blog for more news.
In the meantime, are you planning on developing something for Nintendo Switch soon?
© 2017 Nintendo. Nintendo Switch and Joy-Con are trademarks of Nintendo.