SPIR-V vec3 buffers

Jan 26, 2020 - 7 minutes
You just add a vec3 storage buffer in your GLSL shader…. but can’t index it properly, let us find out why vec3 buffers indexing fights back again I am neck deep in the refactor of my engine, getting the Vulkan back end in a good state. During my work to start rendering meshes in a uniform way for both DX12 and VK, I moved from vertex push (that is, using a vertex declaration and have the vertex attributes appear in the vertex shader) to vertex pull (i. Read more ...

HLSL Viewport Clamping trick

Jan 17, 2020 - 4 minutes
Time to render that sweet skybox but how to avoid overdraw? The skybox problem I always found a skybox an incredible tool to increase the quality of your scene, as soon as you add a skybox everything looks better, even lighting although probably that is just my brain playing tricks. When I got to the point of rendering a skybox in my DX12 game engine I went the quick and hacky way, just render a big enough sphere and be done with it. Read more ...

AMD GCN ISA: a first dive

Mar 10, 2019 - 13 minutes
You want to learn more about GCN but where to start? Where to start I always liked optimizing and disassembling code. When trying to do that on GPU, the result is mixed. It is often hard to do because the information is simply not available (on PC) and you can’t really see the machine code easily. That is more or less true depending on the API you are using, you can for example see CUDA disassembly but you don’t have the ISA to understand the instructions and/or arguments/registers. Read more ...