我正在嘗試從 https://github.com/veandco/go-sdl2 導入 sdl2 包。我按照Windows readme.md 上顯示的所有步驟進行操作。安裝 mingw64 并在 cmd 上執行:go get -v github.com/veandco/go-sdl2/sdl它工作正常,但是當我試圖做:go run .\sdl2.go我得到這個錯誤:sdl2.go:4:2: no required module provides package github.com/veandco/go-sdl2/sdl: working directory is not part of a module在我的另一臺計算機中工作完美,但是當我克隆此存儲庫并將軟件包安裝到另一臺筆記本電腦上時,我遇到了很多問題。為了獲得有關該案例的更多信息,我將我的測試源放在這里以獲取更多信息:package mainimport ( "github.com/veandco/go-sdl2/sdl" "fmt")const winWidth, winHeight int = 800, 600type color struct { r, g, b byte}func setPixel(x, y int, c color, pixels []byte) { index := (y * winWidth + x) * 4 if index < len(pixels)-4 && index >= 0 { pixels[index] = c.r pixels[index+1] = c.g pixels[index+2] = c.b }}func main() { winWidth := 800 winHeight := 600 window,err := sdl.CreateWindow("Testing SDL2", sdl.WINDOWPOS_UNDEFINED, sdl.WINDOWPOS_UNDEFINED, int32(winWidth) ,int32(winHeight), sdl.WINDOW_SHOWN) if err != nil { fmt.Println(err) return } defer window.Destroy() renderer, err := sdl.CreateRenderer(window, -1, sdl.RENDERER_ACCELERATED) if err != nil { fmt.Println(err) return } defer renderer.Destroy() tex, err := renderer.CreateTexture(sdl.PIXELFORMAT_ABGR8888, sdl.TEXTUREACCESS_STREAMING, int32(winWidth), int32(winHeight)) if err != nil { fmt.Println(err) return } defer tex.Destroy() pixels := make([]byte, winWidth*winHeight*4) for y := 0; y < winHeight; y++ { for x := 0; x < winWidth; x++ { setPixel(x,y, color{byte(x % 255),byte(y % 255), 0}, pixels) } } tex.Update(nil,pixels,winWidth*4) renderer.Copy(tex,nil,nil) renderer.Present() sdl.Delay(2000)}
無需模塊即可提供軟件包 SDL2
慕工程0101907
2022-08-09 20:26:09