Render to texture example

The first example will take a texture and will write into it some colors. To illustrate the use of work groups and work items, we will paint each pixel of the image with the index of the work group that processes that pixel. As we will use 16 x 16 work groups, the image will be filled with 16 x 16 solid block colors.

The shader invocation is done with this line: glDispatchCompute(16, 16, 1);.That means that we are going to execute the shader with 16 work groups in the X and Y dimensions and 1 in the Z (1 is the minimum accepted value for a dimension).

#version 430 // Configure how many work items compose the work groups // Because we are executing the shader with 16 x 16 work groups, we can handle images is 512 x 512 (16*32) ...

Get GLSL Essentials now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.