Golang gomobile 基本示例 [1] 使用 VertexAttribPointer 为每个顶点设置 3 x FLOATS。
但是顶点着色器属性类型是 vec4。不应该是vec3吗?
为什么?
在渲染循环中:
glctx.VertexAttribPointer(position, coordsPerVertex, gl.FLOAT, false, 0, 0)
三角数据:
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
)
常量声明:
const (
coordsPerVertex = 3
vertexCount = 3
)
在顶点着色器中:
attribute vec4 position;
[1] gomobile 基本示例:https ://github.com/golang/mobile/blob/master/example/basic/main.go