WebGL 简单范例 代码
function CreateData()
{
g_VertexPositionAttribute = g_WebGLContext.getAttribLocation( g_ShaderProgram, "aVertexPosition" );
g_WebGLContext.enableVertexAttribArray( g_VertexPositionAttribute ); // create scene data
g_VertexPositionBuffer = g_WebGLContext.createBuffer();
g_WebGLContext.bindBuffer( g_WebGLContext.ARRAY_BUFFER, g_VertexPositionBuffer );
var vertices = [ 0.0, 0.8, 0.0, -0.8, -0.8, 0.0, 0.8, -0.8, 0.0 ];
g_WebGLContext.bufferData( g_WebGLContext.ARRAY_BUFFER, new WebGLFloatArray(vertices), g_WebGLContext.STATIC_DRAW);
}
在这段程序里,主要的动作是:
透过 getAttribLocation() 取得 g_ShaderProgram 这个 shader program 中,名称为「aVertexPosition」的 attribute 地址(vertex shader 的)
使用 enableVertexAttribArray() 来 enable g_VertexPositionAttribute 这个 vertex attribute array