本文整理汇总了Golang中C.glUseProgram函数的典型用法代码示例。如果您正苦于以下问题:Golang glUseProgram函数的具体用法?Golang glUseProgram怎么用?Golang glUseProgram使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了glUseProgram函数的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: UseProgram
func UseProgram(p Program) {
defer func() {
errstr := errDrain()
log.Printf("gl.UseProgram(%v) %v", p, errstr)
}()
C.glUseProgram(p.c())
}
示例2: drawFrame
func (game *game) drawFrame() {
time += .05
color := (C.GLclampf(math.Sin(time)) + 1) * .5
C.glUniform2f(C.GLint(game.offsetUni), C.GLfloat(game.offsetX), C.GLfloat(game.offsetY))
C.glUniform3f(C.GLint(game.colorUni), 1.0, C.GLfloat(color), 0)
C.glClear(C.GL_COLOR_BUFFER_BIT | C.GL_DEPTH_BUFFER_BIT)
C.glUseProgram(game.prog)
C.glDrawArrays(C.GL_TRIANGLES, 0, 3)
}
示例3: initGL
func (game *game) initGL() {
log.Printf("GL_VERSION: %v GL_RENDERER: %v GL_VENDOR %v\n",
GetString(C.GL_VERSION), GetString(C.GL_RENDERER), GetString(C.GL_VENDOR))
log.Printf("GL_EXTENSIONS: %v\n", GetString(C.GL_EXTENSIONS))
C.glClearColor(0.0, 0.0, 0.0, 1.0)
C.glEnable(C.GL_CULL_FACE)
C.glEnable(C.GL_DEPTH_TEST)
game.prog = createProgram(vertShaderSrcDef, fragShaderSrcDef)
posAttrib := attribLocation(game.prog, "vPosition")
game.offsetUni = uniformLocation(game.prog, "offset")
game.colorUni = uniformLocation(game.prog, "color")
C.glUseProgram(game.prog)
C.glEnableVertexAttribArray(C.GLuint(posAttrib))
vertVBO := GenBuffer()
checkGLError()
C.glBindBuffer(C.GL_ARRAY_BUFFER, vertVBO)
verts := []float32{.0, 0.5, -0.5, -0.5, 0.5, -0.5}
C.glBufferData(C.GL_ARRAY_BUFFER, C.GLsizeiptr(len(verts)*int(unsafe.Sizeof(verts[0]))), unsafe.Pointer(&verts[0]), C.GL_STATIC_DRAW)
C.glVertexAttribPointer(C.GLuint(posAttrib), 2, C.GL_FLOAT, C.GL_FALSE, 0, unsafe.Pointer(uintptr(0)))
}
示例4: UseProgram
func UseProgram(p Program) {
C.glUseProgram(p.c())
}
示例5: UseProgram
func UseProgram(
program uint32) {
C.glUseProgram(
C.GLuint(program))
}
示例6: Unuse
// Unuse calls glUseProgram with a 0 argument
func (p *Program) Unuse() {
C.glUseProgram(C.GLuint(0))
}
示例7: Use
// Use calls glUseProgram
func (p *Program) Use() {
C.glUseProgram(p.i)
}
示例8: Use
func (program *Program) Use() {
C.glUseProgram(program.id)
}
示例9: Use
// Use installs a program object as part of current rendering state.
func (p Program) Use() {
C.glUseProgram(C.GLuint(p))
}
示例10: ProgramUnuse
func ProgramUnuse() { C.glUseProgram(C.GLuint(0)) }