Hi guys, I recently finished my first complex Vulkan API example in Go: A SPINNING CUBE.
https://github.com/vulkan-go/demos/tree/master/vulkancube It actually took me three attempts to do that, meanwhile I was improving the Vulkan API bindings project, you can see the project history timeline there: https://github.com/vulkan-go/vulkan#project-history-timeline I decided to share this timeline and events that took place 2016-2017, it was very fun to work with Vulkan API using Go programming language, it was very productive year. Starting from the initial public announcement, when the only device that could run Vulkan out of the box was an Android tablet from NVIDIA, the project evolved and now supports all major platforms, including Amazon AWS instances (in headless/computing mode). The first attempt on cube was immediately after I created a triangle drawing app (Go port of tri.c from LunarG), the app was ~2K lines of code in C originally, so I decided to take the cube.c as well (~2.5K lines of code) and port it. The attempt took about 25 hours and was totally frustrating: the app was drawing nothing and validation layers were silent. After a long pause, I took another attempt, taking the code from Mali Vulkan SDK for Android, also created Asche framework to manage platform initialisation and constrains outside the app code, the approach was highly inspired by Mali team. With the same result, 25 hours of work and another black-screen example with no chance to debug. After another very long pause, I decided to give 3rd attempt, this time I used up-to-date cube.c example from LunarG, it was 4K LOC chunk of C code, I was simultaneously rewriting the app logic and also improving the Asche framework with new ideas, making it more suitable for my needs. And in 16 hours I came up with beautifully working (!) cube example and Asche framework that others can find useful. It was a fun year with Vulkan API and Go lang, I experienced a lot, frustrated a lot, but finally the project met a happy ending. I'm looking forward to re-write some Intel tutorials for Vulkan API, but in Go programming language, it would be unfair to do that without a SPINNING CUBE example :D This spinning cube demo is is like a practicing lawyer license, but in graphics field. ---- Thanks for reading, Max http://github.com/vulkan-go -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.