Golang gomobile basic example [1] uses VertexAttribPointer to set 3 x FLOATS per vertex.
However the vertex shader attribute type is vec4. Shouldn't it be vec3?
Why?
Within render loop:
glctx.VertexAttribPointer(position, coordsPerVertex, gl.FLOAT, false, 0, 0)
Triangle data:
var triangleData = f32.Bytes(binary.LittleEndian,
0.0, 0.4, 0.0, // top left
0.0, 0.0, 0.0, // bottom left
0.4, 0.0, 0.0, // bottom right
)
Constant declaration:
const (
coordsPerVertex = 3
vertexCount = 3
)
In vertex shader:
attribute vec4 position;
[1] gomobile basic example: https://github.com/golang/mobile/blob/master/example/basic/main.go