gpu: remove Backend.Resize and fully specify format in Backend.NewTexture

Re-create textures instead to better match direct3d.

Signed-off-by: Elias Naur <mail@eliasnaur.com>
This commit is contained in:
Elias Naur
2020-02-20 22:11:07 +01:00
parent 4e3bfd5b1b
commit a4ee72ed28
4 changed files with 18 additions and 14 deletions
+4 -2
View File
@@ -195,7 +195,6 @@ func (s *fboSet) resize(ctx Backend, sizes []image.Point) {
for i := len(s.fbos); i < len(sizes); i++ {
s.fbos = append(s.fbos, stencilFBO{
fbo: ctx.NewFramebuffer(),
tex: ctx.NewTexture(FilterNearest, FilterNearest),
})
}
// Resize fbos.
@@ -207,8 +206,11 @@ func (s *fboSet) resize(ctx Backend, sizes []image.Point) {
waste := float32(sz.X*sz.Y) / float32(f.size.X*f.size.Y)
resize = resize || waste > 1.2
if resize {
if f.tex != nil {
f.tex.Release()
}
f.size = sz
f.tex.Resize(TextureFormatFloat, sz.X, sz.Y)
f.tex = ctx.NewTexture(TextureFormatFloat, sz.X, sz.Y, FilterNearest, FilterNearest)
f.fbo.BindTexture(f.tex)
}
}