Hello girls and boys! Mouk3y here for a another trek into the wild world of technology! *waves hands as fireworks go off* Fancy isn’t? Enough pageantry and extravagance, let’s get to talking about the FUTURE *more hand waving and fireworks* That’s the last of them, buying fireworks out of season is tough. Onward!
Before we dive into what all this is, let’s define a few key words/acronyms that will be used in this post. Some of you might know these terms, but lets all get on the same page so we can experience this as a family!
OS – Operating System. It’s basically a means for a device to know what to do with all it’s parts and allow you to understand and interact with it. Windows for PC is a prime example.
GPU – Graphics Processing Unit. This is the chip or add-on card that is part of any device that makes the magic happen. This is thing that crunches all the code and makes awesome 3D graphics appear on your screen.
Driver – This is the bit of software that tells the OS what a piece of hardware is and what it’s capabilities are.
API – Application programming interface. To put it as simply as possible, let’s say you’re playing Minecraft. For you to survive, you need to gather materials and use those materials to make things. Think of those materials and means of utilizing them as the API for creating stuff.
Bottleneck – The best explanation of this uses a ketchup bottle. You know when you flip it upside down and it all kinda gets trapped in there without giving you any ketchup? That’s a bottleneck. For those that don’t know, you can just tilt it at a 45 degree angle so it doesn’t clump up to get much better results.
OpenGL – first released in 1992 as a means to create a more cross-platform way of working with 3D graphics. That is to say, it used the original proprietary version called Iris GL which was only for Silicon Graphics workstations as a baseline and created a new version that was able to be used by anyone. OpenGL uses a language similar to the C programming language; however, it can be use with several languages including C, Java and soon C++ to name a few.
Wait a second! Aren’t we supposed to be talking about Vulkan? You’re a clever one. I can’t put anything past your keen sense of things and stuff. Vulkan is actually the next evolution of OpenGL. It allows the GPU to handle the processing instead of waiting for the OS and drivers to do it. Also, it offloads the work of the CPU. This allows two really important things: easier code cross-compatibility for devices and little to no bottleneck from the driver/OS side of things. Confusing?
- Take a car like the Honda Civic and add a rocket engine to it.
- While doing this, realize that no amount of logic is keeping you from doing it.
- You can literally attach it anywhere you please and it will work.
- Now take that idea and apply it to any other make/model of car you want.
- You can do that as many times as you want with any vehicle.
- Finally, put them on the interstate … and take away all traffic.
Now you’re getting the picture!
Vulkan is definitely a game changer, but it actually wasn’t the first to do this. AMD released the Mantle API only a few years ago. This shows that, given the right circumstances, this method of interacting with GPU can directly and dramatically improve overall performance. In fact, Mantle is the basis for what Vulkan is now. This design has also been implemented in the upcoming DirectX12 API from Microsoft and Apple’s Metal API. The main difference is that DX12 and Metal will only be usable on devices that run Microsoft and Apple’s OS’s respectively, whereas Vulkan can be used on any device including the ones that use the aforementioned OS’s.
Why is this all so important? Efficiency and performance, really. People want the best they can get out of whatever it is they buy – the best bang for your buck, if you will. What if your current phone became as fast as the next model phone above it just by utilizing this technology? It’s possible. You think the PS4 or Xbox 1 are fast now? Wait until they add the new technology.
The ability to push devices to their graphical limit has always depended on more powerful hardware which has always been a very expensive endeavor. Now, with the new API’s nearing completion, consumers can expect better performance and longer lifespans from their devices which will ultimately lower the prices of hardware to keep things competitive.
To summarize it all: OpenGL has allowed 3D to be used in many devices for many years. AMD created a revolutionary new way of doing what OpenGL started by allowing graphics to run without bottle necking. OpenGL + Mantle = Vulkan. Microsoft and Apple are making their own versions. They all do the same thing essentially, but Vulkan will work on everything instead of being proprietary. As a result, the consumer will benefit from the ever growing competitive market of graphics interfaces. Vulkan is the wildcard we have all be waiting for.