Vulkan 1.0 3D Graphics API Now Available
Written by David Conrad   
Wednesday, 17 February 2016

After a few delays the Khronos Group has released version 1.0 of the Vulkan API - which is often referred to as the next generation version of OpenGL. How will this change things?

khronos

 

Graphics programmers seem to be living their lives in a time reversal stream compared to every other programmer on the planet. In other areas the move is toward an ever-increasing abstraction and a hiding of the details of the hardware. Graphics programmers have made moves in this direction in the past with 3D APIs such as early versions of DirectX, which operated in "retained mode", but today the move is away from such things and back to the hardware - well it sort of is. 

There are lots of graphics programmers who are very happy with the level of abstraction in APIs such as OpenGL and perhaps would like things to continue to evolve in this way. However, graphics is still a computationally demanding task and, while other areas of programming have benefited from enough hardware improvement to indulge in software abstraction, graphics always needs still more hardware. Even with the availability of GPUs to speed things up, the need to address the specific capabilities of the hardware to squeeze the last drop of performance out has been important. In fact the existence of GPUs has made this even more attractive, with real-time high quality graphics only just out of reach. 

Put simply, for the 3D CAD community OpenGL is more than enough and well worth using for the simplification it offers. For the real-time graphics programmer it is time to move to Vulkan and pay the price of increased complexity and hardware dependence. 

Vulkan is a development on AMD's Mantle a proprietary low level API and it stands alongside rather than replacing OpenGL. At the moment overall support is low so don't expect to see lots of new games that run 10 times faster than the old ones. Nvidia has release a driver which passes the conformance tests for Windows and Linux. There is a driver from Qualcomm which passes the test for Android, but AMD's beta driver has not yet reached conformity.

Vulkan is in competition with the latest DirectX, i.e. version 12, and with Apple's Metal API. However, Metal isn't as low level as Vulkan - it is more something between DirectX 11 and 12. It is argued that developing using Vulkan has the huge advantage of being platform independent and open source whereas DirectX 12 is tied to Windows 10 and Metal is tied to Apple. The biggest problem is that it is very early days for Vulkan and there are few tools. 

Perhaps one day soon the hardware, or perhaps more likely the software, will develop to the point where graphics programmers can join the mainstream and start moving towards increased abstraction and further away from the hardware. Until then we have Vulkan 1.0.

 

vulcanlogo

More Information

https://www.khronos.org/vulkan/

 

Related Articles

Vulkan For Android 

The New OpenGL - Vulkan and SPIR-V 

 

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on, Twitter, FacebookGoogle+ or Linkedin

 

Banner


Ursina - A Game Engine Powered by Python
08/11/2024

Ursina is a new open source game engine in which you can code any type of game in Python, be it 2-D, 3-D, an application, a visualization, you name it.



The Feds Want Us To Move On From C/C++
13/11/2024

The clamour for safe programming languages seems to be growing and becoming official. We have known for a while that C and C++ are dangerous languages so why has it become such an issue now and is it  [ ... ]


More News

 

espbook

 

Comments




or email your comment to: comments@i-programmer.info

 

Last Updated ( Thursday, 18 February 2016 )