So I'm trying to make a game in GoLang using Raylib Go (Go bindings of a C library with the same name).
I'm using a temporary variable to test if I can load a texture (I'm only gonna show the one line, as that's the only thing that makes the program crash):
var _ rl.Texture2D = rl.LoadTexture("./rsrc/textures/logo.png");
Yes, the path "./rsrc/textures/logo.png
" exists (relative to the executable's default directory).
After putting that in, I ran two commands in Command Prompt (Windows 10)
C:\Users\Administrator\Desktop\Projects\Go\games\RuntDeale>go build ./rsrc/code
C:\Users\Administrator\Desktop\Projects\Go\games\RuntDeale>code
After running that last command, no window appeared, and the program had seemed to have ended.
But I got this lovely jumble of text printed to me:
INFO: FILEIO: [./rsrc/textures/logo.png] File loaded successfully
INFO: IMAGE: [./rsrc/textures/logo.png] Data loaded successfully (76x17)
Exception 0xc0000005 0x8 0x0 0x0
PC=0x0
signal arrived during external code execution
github.com/gen2brain/raylib-go/raylib._Cfunc_LoadTexture(0x14d740b1bb0, 0x0, 0x0, 0xc000000000)
_cgo_gotypes.go:4223 +0x54
github.com/gen2brain/raylib-go/raylib.LoadTexture(0x972c59, 0x18, 0x0, 0x0, 0x14d00000000)
C:/Users/Administrator/go/pkg/mod/github.com/gen2brain/raylib-go@v0.0.0-20210227124741-9d258bad6516/raylib/textures.go:69 +0x95
main.main()
C:/Users/Administrator/Desktop/Projects/Go/games/RuntDeale/rsrc/code/main.go:28 +0xa5
rax 0x700000001
rbx 0x2a527ffaf0
rcx 0xde1
rdi 0x11
rsi 0x4c
rbp 0x7
rsp 0x2a527ff978
r8 0x11
r9 0x7
r10 0x0
r11 0x246
r12 0x1
r13 0x978368
r14 0x37
r15 0xffffffffffffffff
rip 0x0
rflags 0x10246
cs 0x33
fs 0x53
gs 0x2b
It says the file loaded successfully, but then it has some kind of error, and doesn't really make any sense.
What does this mean, and how can I fix it?
Thanks!
Cheers!
Top comments (3)
I've never used raylib, but my initial guess is that you're either missing a step, or doing something out-of-order from what the library expects.
It's hard to diagnose your problem based on a single line of code. Can you create a new program that only loads the texture, then post the full source code? That will make it easier to trace through the steps and figure out if you're missing something, doing something wrong, etc.
Raylib is similar to OpenGL (I think it even uses OpenGL BTS).
Here is a minimal example:
And I get a pretty similar result to the last (except
jpg
isn't a supported format, for some reason (not like I usejpg
, but I still care about them)).NOTE: I tried adding
rl.UnloadTexture(tex)
after the window initialization, and I tried putting it after thefor
loop. When I do this, the window does appear this time, but it instantly closes, and provides the same (or similar) error (I didn't look too carefully, since they seem the same).With that said, I can tell it's an issue with
rl.LoadTexture(string)
, and not me, orrl.UnloadTexture(rl.Texture2D)
.