# Terrain effect # This effect uses prodecural shader splatting, you most likely want to modify # it with your own texture-map generation code. vertex: inout: | uniform samplerBuffer InstancingData; transform: | int data_index = gl_InstanceID * 4; vec4 data_0 = texelFetch(InstancingData, data_index); vec4 data_1 = texelFetch(InstancingData, data_index + 1); vec4 data_2 = texelFetch(InstancingData, data_index + 2); vec4 data_3 = texelFetch(InstancingData, data_index + 3); mat4 transform_mat = mat4(data_0, data_1, data_2, data_3); vOutput.position = (transform_mat * p3d_Vertex).xyz; // Also transform normal, not 100% correct but works out nicely vOutput.normal = mat3(transform_mat) * vOutput.normal; fragment: