The world of 3D technology is a fast-growing world where possibilities are only limited to human imagination. 3D-modeling tools help to turn individual ideas into beautiful models and prototypes for a variety of fields, such as film, animation, gaming or architecture. There are a lot of tools available on the market so the choice of which software/tool is the best is still a personal choice. Besides, 3D rendering and graphics are becoming so popular, particularly in video games, that specialized APIs have been created to simplify the processes in 3D creation.

Since Experimental Foundation is currently developing a live holographic streaming engine — EF EVE, it is particularly important to understand which tools are popular and perceive how they can be useful to the technology.

There are two major categories for 3D rendering tools: API and engines. In one hand it’s possible to work with 3D Graphics API, such as OpenGL, Direct3D, Vulkan and VTK and on the other hand with engines as Unreal and Unity. Obviously there are plenty of other tools to modulate 3D data that can be integrated into these tools (Blender is a very powerful tool to design models). OpenGL is a cross-platform open source API that is available in several programming languages, starting from C++, C#, JAVA, Python to Perl, LUA and Fortran (among others). It is definitely one of the most used tools. Many others libraries or engines are based on this particular API. OpenGL is used to create visually-compelling graphics by taking data representation models created in another program and rendering these to the screen. In the gaming industry, a lot of discussion has been generated between OpenGL and Direct3D, mainly because of the speed. Direct3D only supports Windows and all the programming languages are Microsoft COM-aware: C++, C#, .NET. It allows manipulation of visual models and it’s essentially designed to visualize 3D hardware interfaces. Some experts claim that Direct3D is more powerful on Windows as it is especially design for this platform when comparing to OpenGL. However, it’s undeniable how OpenGL is quite more popular and more flexible than Direct3D.

With the current advancements of GPU-technology, Experimental Foundation also believes how important it is to take advantage of such powerful hardware. Vulkan is another opensource 3D API that can well conquer the world of 3D graphics development, at least for more advanced and experienced users. Cross-platform Vulkan improves speed and is far more flexible to control which part of the code is multi-threaded at a cost of an increase need to understand computer architecture, especially memory allocation, thread management and multi-queue work submission. Nevertheless, Vulkan offers low overhead and more direct control over the GPU and lower the CPU usage, but places more work and responsibility to the developer.

VTK is another 3D graphics API, far more simple than the previous ones, based on OpenGL. It’s used for 3D modeling, image processing, volume rendering and scientific visualization. It’s mainly based on C++, but possess primary bindings with Python, JAVA and TCL.

It’s well known how capable and forceful engines can be. Nowadays their capabilities are quite impressive as they facilitate game development and design considerably. Experimental Foundation considers Unreal Engine and Unity as the most complete and powerful in the market. Unreal supports Direct3D while Unity supports both Direct3D and OpenGL. Both are cross-platform, not only in computer systems (Windows, Linux and MacOS) as well as Xbox One, PlayStation4, HTML5, iOS and Android. These engines allow to animate 3D models that may or not be designed in the actual software, creating a complete amazing 3D world.

Follow us at: Experimental Foundation