fixed some bugs from the float32->float64 conversion

This commit is contained in:
Thomas Friedel 2018-03-21 15:51:07 +01:00
parent e138d853c6
commit dfba64a1fd
3 changed files with 5 additions and 5 deletions

View file

@ -532,7 +532,7 @@ func (cv *Canvas) FillRect(x, y, w, h float64) {
p3 := cv.tf(vec{x + w, y}) p3 := cv.tf(vec{x + w, y})
gli.BindBuffer(gl_ARRAY_BUFFER, buf) gli.BindBuffer(gl_ARRAY_BUFFER, buf)
data := [8]float64{p0[0], p0[1], p1[0], p1[1], p2[0], p2[1], p3[0], p3[1]} data := [8]float32{float32(p0[0]), float32(p0[1]), float32(p1[0]), float32(p1[1]), float32(p2[0]), float32(p2[1]), float32(p3[0]), float32(p3[1])}
gli.BufferData(gl_ARRAY_BUFFER, len(data)*4, unsafe.Pointer(&data[0]), gl_STREAM_DRAW) gli.BufferData(gl_ARRAY_BUFFER, len(data)*4, unsafe.Pointer(&data[0]), gl_STREAM_DRAW)
vertex := cv.useShader(&cv.state.fill) vertex := cv.useShader(&cv.state.fill)

View file

@ -224,8 +224,8 @@ func (cv *Canvas) DrawImage(image interface{}, coords ...float64) {
p3 := cv.tf(vec{dx + dw, dy}) p3 := cv.tf(vec{dx + dw, dy})
gli.BindBuffer(gl_ARRAY_BUFFER, buf) gli.BindBuffer(gl_ARRAY_BUFFER, buf)
data := [16]float64{p0[0], p0[1], p1[0], p1[1], p2[0], p2[1], p3[0], p3[1], data := [16]float32{float32(p0[0]), float32(p0[1]), float32(p1[0]), float32(p1[1]), float32(p2[0]), float32(p2[1]), float32(p3[0]), float32(p3[1]),
sx, sy, sx, sy + sh, sx + sw, sy + sh, sx + sw, sy} float32(sx), float32(sy), float32(sx), float32(sy + sh), float32(sx + sw), float32(sy + sh), float32(sx + sw), float32(sy)}
gli.BufferData(gl_ARRAY_BUFFER, len(data)*4, unsafe.Pointer(&data[0]), gl_STREAM_DRAW) gli.BufferData(gl_ARRAY_BUFFER, len(data)*4, unsafe.Pointer(&data[0]), gl_STREAM_DRAW)
gli.ActiveTexture(gl_TEXTURE0) gli.ActiveTexture(gl_TEXTURE0)

View file

@ -103,8 +103,8 @@ func (cv *Canvas) FillText(str string, x, y float64) {
p3 := cv.tf(vec{float64(bounds.Max.X) + x, float64(bounds.Min.Y) + y}) p3 := cv.tf(vec{float64(bounds.Max.X) + x, float64(bounds.Min.Y) + y})
tw := float64(bounds.Dx()) / alphaTexSize tw := float64(bounds.Dx()) / alphaTexSize
th := float64(bounds.Dy()) / alphaTexSize th := float64(bounds.Dy()) / alphaTexSize
data := [16]float64{p0[0], p0[1], p1[0], p1[1], p2[0], p2[1], p3[0], p3[1], data := [16]float32{float32(p0[0]), float32(p0[1]), float32(p1[0]), float32(p1[1]), float32(p2[0]), float32(p2[1]), float32(p3[0]), float32(p3[1]),
0, 1, 0, 1 - th, tw, 1 - th, tw, 1} 0, 1, 0, float32(1 - th), float32(tw), float32(1 - th), float32(tw), 1}
gli.BufferData(gl_ARRAY_BUFFER, len(data)*4, unsafe.Pointer(&data[0]), gl_STREAM_DRAW) gli.BufferData(gl_ARRAY_BUFFER, len(data)*4, unsafe.Pointer(&data[0]), gl_STREAM_DRAW)
gli.VertexAttribPointer(vertex, 2, gl_FLOAT, false, 0, nil) gli.VertexAttribPointer(vertex, 2, gl_FLOAT, false, 0, nil)