veandco / go-sdl2

SDL2 binding for Go
https://godoc.org/github.com/veandco/go-sdl2
BSD 3-Clause "New" or "Revised" License
2.17k stars 219 forks source link

too many arguments to conversion to sdl.Rect #478

Open TheFlowDevelopment opened 3 years ago

TheFlowDevelopment commented 3 years ago

So im writing a program just rendering screen a BMP there is all of my code and Exeptıons as err. i making this like in renderer example.


package main

import "github.com/veandco/go-sdl2/sdl"

func main(){

    if err := sdl.Init(sdl.INIT_EVERYTHING); err != nil {
        panic(err)
    }
    defer sdl.Quit()

    window, err := sdl.CreateWindow("Deneme - V1",
     int32(sdl.WINDOWPOS_UNDEFINED), int32(sdl.WINDOWPOS_UNDEFINED), 
     int32(800), int32(600),
     uint32(sdl.WINDOW_SHOWN))
    if err != nil {
        panic(err)
    }
    defer window.Destroy()

    renderer, err := sdl.CreateRenderer(window, -1, sdl.RENDERER_ACCELERATED)
    if err != nil {
        panic(err)
    }
    defer renderer.Destroy()

    img, err := sdl.LoadBMP("sprites/player.bmp")
    if err != nil{
        panic(err)
    }
    playerTex, err := renderer.CreateTextureFromSurface(img)
    if err != nil{
        panic(err)
    }

    running := true
    for running {

        for event := sdl.PollEvent(); event != nil; event = sdl.PollEvent() {
            switch event.(type) {
            case *sdl.QuitEvent:
                println("Quit")
                running = false
                break
            }
        }

        rec1 := sdl.Rect(0, 0, 105, 105)
        rec2 := sdl.Rect(100, 50, 105, 105)

        renderer.Clear()

        renderer.Copy(playerTex, 
        &rec1, &rec2)

        renderer.Present()

    }
}
# command-line-arguments
./Main.go:48:19: too many arguments to conversion to sdl.Rect: sdl.Rect(0, 0, 105, 105)
./Main.go:49:19: too many arguments to conversion to sdl.Rect: sdl.Rect(100, 50, 105, 105)
veeableful commented 3 years ago

Hi @MendeburMarul, sdl.Rect is a struct so you can create them using sdl.Rect{0, 0, 105, 105} for example. You can replace the parentheses you used with curly braces.