UnityMol: Visualization with a game engine

Nowadays there is an increasing demand in biology to represent very huge and complex systems, such as macromolecular structures, -omics networks or organs and organisms. Consequently, academic researchers may experience difficulties to quickly develop high-end solutions to address these new challenges. On the other hand, the video game industry faces similar needs in terms of complexity and efficiency to release games for an increasingly larger audience. To address this issue, this industry benefits from more and more advanced tools allowing quick development and making the most of latest hardware and software. The question is now: can the scientific community use these tools to overcome complexity and efficiency issues? To explore this approach, we developed a molecular and network viewer using Unity3D, a freely available 3D game engine. We evaluated the rendering performances of built-in methods and implemented Hyperballs, a GPU ray-casting based representation. We realized that while performances are not as high as a pure OpenGL approach, building a complex 3D application is easy with the help of the API and GUI provided, especially when it comes to 3D interaction and animation.