diff --git a/gpu/headless/driver_test.go b/gpu/headless/driver_test.go index ddebc2b4..5e21fbd3 100644 --- a/gpu/headless/driver_test.go +++ b/gpu/headless/driver_test.go @@ -42,47 +42,6 @@ func TestFramebufferClear(t *testing.T) { } } -func TestSimpleShader(t *testing.T) { - b := newDriver(t) - sz := image.Point{X: 800, Y: 600} - vsh, fsh, err := newShaders(b, gio.Shader_simple_vert, gio.Shader_simple_frag) - if err != nil { - t.Fatal(err) - } - defer vsh.Release() - defer fsh.Release() - fbo := newFBO(t, b, sz) - p, err := b.NewPipeline(driver.PipelineDesc{ - VertexShader: vsh, - FragmentShader: fsh, - PixelFormat: driver.TextureFormatSRGBA, - Topology: driver.TopologyTriangles, - }) - if err != nil { - t.Fatal(err) - } - defer p.Release() - d := driver.LoadDesc{ - ClearColor: f32color.LinearFromSRGB(clearCol), - Action: driver.LoadActionClear, - } - b.BeginRenderPass(fbo, d) - b.Viewport(0, 0, sz.X, sz.Y) - b.BindPipeline(p) - b.DrawArrays(0, 3) - b.EndRenderPass() - img := screenshot(t, b, fbo, sz) - if got := img.RGBAAt(0, 0); got != clearColExpect { - t.Errorf("got color %v, expected %v", got, clearColExpect) - } - // Just off the center to catch inverted triangles. - cx, cy := 300, 400 - shaderCol := f32color.RGBA{R: .25, G: .55, B: .75, A: 1.0} - if got, exp := img.RGBAAt(cx, cy), shaderCol.SRGB(); got != f32color.NRGBAToRGBA(exp) { - t.Errorf("got color %v, expected %v", got, f32color.NRGBAToRGBA(exp)) - } -} - func TestInputShader(t *testing.T) { b := newDriver(t) sz := image.Point{X: 800, Y: 600} diff --git a/gpu/internal/opengl/opengl.go b/gpu/internal/opengl/opengl.go index 51bc1e73..832512bf 100644 --- a/gpu/internal/opengl/opengl.go +++ b/gpu/internal/opengl/opengl.go @@ -888,18 +888,10 @@ func (b *Backend) NewFragmentShader(src shader.Sources) (driver.FragmentShader, } func (b *Backend) glslFor(src shader.Sources) string { - if b.glver[0] < 3 { + if b.gles { return src.GLSL100ES - } - // OpenGL (ES) 3.0. - switch { - case b.gles: - return src.GLSL300ES - case b.glver[0] >= 4 || b.glver[1] >= 2: - // OpenGL 3.2 Core only accepts glsl 1.50 or newer. + } else { return src.GLSL150 - default: - return src.GLSL130 } }