question: private void createSceneVao ( ) { int vao = glGenVertexArrays ( ) ; int vbo = glGenBuffers ( ) ; glBindVertexArray ( vao ) ; glBindBuffer ( GL_ARRAY_BUFFER , vbo ) ; long bufferSize = 4 * ( 3 + 3 ) * mesh . numVertices ; long normalsOffset = 4L * 3 * mesh . numVertices ; glBufferData ( GL_ARRAY_BUFFER , bufferSize , GL_STATIC_DRAW ) ; glBufferSubData ( GL_ARRAY_BUFFER , 0L , mesh . positions ) ; glBufferSubData ( GL_ARRAY_BUFFER , normalsOffset , mesh . normals ) ; glEnableVertexAttribArray ( 0 ) ; glVertexAttribPointer ( 0 , 3 , GL_FLOAT , false , 0 , 0L ) ; glEnableVertexAttribArray ( 1 ) ; glVertexAttribPointer ( 1 , 3 , GL_FLOAT , false , 0 , normalsOffset ) ; glBindBuffer ( GL_ARRAY_BUFFER , 0 ) ; glBindVertexArray ( 0 ) ; this . vaoScene = vao ; }
target:  Creates a VAO for the scene.