4 ms·
I would like to excuse for my incompetent/ignorant comment in advance, but wouldn't it be fairer to compare Vulkan with OpenGL 4.5 where indirect indexed draw c
by Am-hehu 11y ago
I would like to excuse for my incompetent/ignorant comment in advance, but wouldn't it be fairer to compare Vulkan with OpenGL 4.5 where indirect indexed draw calls are available? I also noticed that this demo avoids interactive animations (moving / reacting objects). In my experience with next-gen apis this results often in command dead-locks and inevitable queue-rollbacks.
- simcop2387 11y agoNot necessarily, I believe they're demoing this against OpenGL ES specifically because of google recently announcing that Vulkan will be available on android[1]. Given the 4 cores that seems to line up, since a lot of ARM devices are going to multicore recently. [1] http://arstechnica.com/gadgets/2015/08/android-to-support-vulkan-graphics-api-the-open-answer-to-metal-and-dx12/ http://arstechnica.com/gadgets/2015/08/android-to-support-vu...
- kllrnohj 11y agoThe GPU in question here, the PowerVR G6430, does not support OpenGL 4.5. It tops out at OpenGL 3.2 since it's a mobile part so everyone is using GLES. The blog post only somewhat touches on it but I believe a key part of why this is so much faster is that it sounds like Vulkan is actually exposing tiled-based rendering. Note that PowerVR is a tile-based deferred renderer under the hood[1]. So if the app is doing the work of chunking draws into tiles instead of the driver trying to extract that from the OpenGL stream that's going to be significantly more efficient. 1: http://blog.imgtec.com/powervr/a-look-at-the-powervr-graphics-architecture-tile-based-rendering http://blog.imgtec.com/powervr/a-look-at-the-powervr-graphic...
- olaulaja 11y agoVulkan doesnt really expose tile based rendering. In the demo the scene is split into tiles and since the geometry is static they can prepare commands for gpu execution once for each of these tiles. This cannot be done in OpenGL which effectively has to repeat this work every frame (the driver hides this) There are of course other tricks to speed up crowds like this in OpenGL
- ashleysmithgpu 11y agoCheck the blog post after Wednesday, there are some things we cannot say yet. The demos is slightly unrealistic yes and you could use multi draw indirect. But you would not be able to use multiple cores with that. As for moving objects, you would really just need to handle the objects moving between tiles and pass the animation matricies in the right places. It was thought about, but we didn't have time to implement.
- kllrnohj 11y agoBlog post was updated, looks like one of the tricks is the pixel local storage GLES extension is a core feature on vulkan.