Esempio n. 1
0
func New(vert, frag string) *Program {
	ass.True(util.GlSupportsVersion(2, 0))
	vsh := NewShader(true)
	fsh := NewShader(false)
	vsrc, fsrc := vertShaderSource(vert), fragShaderSource(frag)
	vsrc = PreprocessShaderSource(vsrc)
	fsrc = PreprocessShaderSource(fsrc)
	vsh.Source(vsrc)
	fsh.Source(fsrc)
	vsh.Compile()
	fsh.Compile()
	prog := new(Program)
	prog.vparam, prog.fparam = vert, frag //save params
	prog.id = gl.CreateProgram()
	prog.AttachShader(vsh)
	prog.AttachShader(fsh)
	prog.Link()
	if GUsedProgram == nil {
		GUsedProgram = prog
	}
	return prog
}
Esempio n. 2
0
func New() *Vbo {
	ass.True(util.GlSupportsVersion(1, 4))
	v := new(Vbo)
	v.InitData()
	return v
}