Open paulicka opened 4 years ago
Build only with Godot 3.2. Godot 4 isn't anywhere close to stable or complete, and voxel tools doesn't support it yet.
Thanks, @tinmanjuggernaut...I tried that and it didn't work: godot 3.2 and godot_voxel master. I made sure to update to latest XCode, same errors. (Heh...I went to verify on Windows yet can't even get godot 3.2 to build using scoop libraries...)
I bet you're using clang
? People have reported problems several times when trying to pass uint64_t
or size_t
to Variant
on OSX and Javascript builds, it is quite infuriating https://github.com/Zylann/godot_voxel/issues/170
One dumb fix is to cast to int
I guess, but it's not clean, I wonder what the correct fix should be.
My mistake. I misunderstood. Zylann must have introduced code that clang has a problem with. He or you will have to make the casting explicit to build. Or you can try my older osx binaries at tokisan.com.
@Zylann I'm not sure if I am using clang
...how do I check? I followed the build directions on Compiling for mac OS using 'brew'.
Or perhaps, more importantly, how do I use something else that works? ;-)
@tinmanjuggernaut I was building from source because I tried to run blocky_game/blocky_game.tscn and got Invalid call. Nonexistent function 'get_voxel_index_from_name' in base 'VoxelLibrary'.
Perhaps you could make a new binary? ;-)
Thanks for the quick feedback.
@tinmanjuggernaut in case you do make a new build, it's going to be marked as the 3.2.3
version (currently master
), as I made a changelog to reflect what's in each version https://github.com/Zylann/godot_voxel/blob/master/CHANGELOG.md#master-godot-323 . I'm going to make a branch to tag it in the Git history as well based on the current last commit
@paulicka I don't know^^" OSX uses clang
AFAIK, I wish there was a proper fix than casting all the problematic variant conversions to int
@Zylann I'm not sure if I am using
clang
...how do I check? I followed the build directions on Compiling for mac OS using 'brew'.
Brew is a package manager, not a compiler. Read your build log. It will tell you what compiler its using. Or look in your package manager and see what compilers are installed. Clang/llvm is usually the default.
@tinmanjuggernaut I was building from source because I tried to run blocky_game/blocky_game.tscn and got
Invalid call. Nonexistent function 'get_voxel_index_from_name' in base 'VoxelLibrary'.
Perhaps you could make a new binary? ;-)
You can edit the gdscript to comment out that line. Or use my demos, which work with my build. Seems like a lot of work to avoid a few lines of gdscript in a demo.
Okey dokey...3 lines with some casts to int and it builds (and runs blocky game ;-) for me.
@tinmanjuggernaut Do you want the binary?
(I tried adding env.Append(CPPDEFINES = ['NEED_LONG_INT']) to platform/osx/SCsub but that didn't work, so I'm not sure if a) I'm defining the flag incorrectly, or b) NEED_LONG_INT doesn't solve the problem, and c) I couldn't figure out a way to debug that easily)
@Zylann Should I add an addendum to Issue 170 (since it only mentions javascript), and/or keep this open until it's fixed in master?
@Zylann Should I add an addendum to Issue 170 (since it only mentions javascript), and/or keep this open until it's fixed in master?
Probably. I still haven't got an answer from Godot devs about this...
The README.md and 02_build-voxel-tools.md says to build godot_voxel module with same branch as godot. However, godot master is now 4.0 I believe. I built godot branch 3.2 and ran the executable on some sample projects without problems. All good. I then moved godot_voxel into modules/, renaming to modules/voxel/, and tried to build and get errors:
I tried building from godot master, but that didn't work either.
Any thoughts?