Hmmm, you're right that's import only indeed. It was mentioned in the issue, so I've thought it should be supported. Here's a 4 years old issue about kv6 export, still unsolved and still open...Julius {l Wrote}:.kv6 works in Goxel? That would at least allow making new weapons and player-models I think. Edit: it can import .kv6 fine, but not export it.
It looks like there's import/export support for kvx in Goxel, whatever that format might be. It's implemented in the same file as kv6 so I suppose it is kv6' successor? Anyway, also has magic bytes and a header with dimensions, so should be perfect for the job. (But again, I don't know if Goxel's kvx support is buggy or not, I haven't used it myself, I've just read the source code)Julius {l Wrote}:Might be worth investigating what other map formats are used in AoS/OP. Maybe this odd format is only used for the procedurally generated hightmap maps?
I think the example C code in the AoS spec is simpler to use and easier to adapt to Goxel. But good luck with either anyway! Honestly I don't think guillaumechereau will merge any of that, considering he is giving the silent treatment to you for 5 years now...Julius {l Wrote}:Hmm, did you see this: https://github.com/xtreme8000/libvxl/
Maybe, but AFAIK libvxl saves arbitrary sized volumes (see libvxl_create gets the bounding box differences as arguments). If OpenSpades takes AoS compatibility seriously, and expects dimensions to be 512x512x64, just like Terravox does, that could be a problem.Julius {l Wrote}:The Goxel fork of the BetterSpades developer with .vxl support will work I guess.
pos[0] = 256 - x;
pos[1] = y - 256;
pos[2] = 31 - z;
I might be able to help with that (assuming xtreme8000 won't put that on hold for 4-5 years like guillaumechereau does).Julius {l Wrote}:Maybe they will also add .kv6 export. I made a feature request for it.
For the latter, are you sure it's abandoned and not just finished? TBH vxl is an old format, which hasn't changed over the years the slightest bit, and if Terravox is considered feature-full and bug-free, then I see no reason why it should need to receive any new commits.Julius {l Wrote}:Terravox is just a high map terrain editor. It can be used as part of the mapping pipeline, but you can not make real detained maps with it. Also, 7 year old abandoned code-base does not instill much confidence
Hard to argue about that :-)Julius {l Wrote}:and the Java GUI is by far not as nice as Goxel
Well, I've tried.Julius {l Wrote}:Do you think it is worth trying to fix the exisiting .vxl support in Goxel?
Definitely, the only issue is, as I've said the libvxl saved vxl isn't compatible with the AoS version of vxl.Julius {l Wrote}:I assume the libxvl integration would be more advanced/better anyways?
Let's hope so! Even if I get a flawless fix, it's no good if he doesn't merge it.Julius {l Wrote}:Thanks for looking into this, hopefully this motivates the main developer to fix it.
You're welcome. About my PR, I don't think so, I've signed what he has requested. I honestly don't know why he is refusing, my PR just adds one more source file to the repo, it changes nothing, breaks nothing and has no conflicts.Julius {l Wrote}:btw: it seems like Goxel requires dual-licening of contributions because their mobile version is closed-source. Maybe that is why your pull requests are not accepted?
As I've said, BetterSpades (and libvxl) does more than original AoS, can handle any size. This means vxl are saved with arbitrary dimensions, but also means original AoS vxl files with fixed dimensions will be loaded no probs too, so it is backward compatible.Julius {l Wrote}:I have a bit of a hard time believing that the BetterSpades developer is making something that only works on BetterSpades, given that it is supposed to be backwards compatible with AoS. But who knows, it is not impossible. It is on my back-log of things to test with OpenSpades, but right now I was busy looking into the player models and weapon replacements which are higher priority.
Yeah, that's why I think it would worth adding kvx loading in OpenSpades. (As a bonus, there would be no need for kv6 either, as models can use kvx too. You only have to convert the existing assets once (.kv6/.vxl loading and .kvx saving works in Goxel), and all future development could use Goxel and a single format afterwards)Julius {l Wrote}:Obviously if someone was really motivated in fixing up Terravox to allow map-model import and real sculpting of terrain, that would be maybe the perfect solution. Making .kvx map-models should already work in both Goxel and Voxelshop.
That's a pity, it looked good at first.Julius {l Wrote}:Edit: I'll look into Voxie, but it also seems to be abandoned and not really that functional UI wise to to use as a map-editor (similar to Voxelshop).
Almost :-) Terravox uses fixed dimensions, so you can only use right dimensions with it. With libvxl, it's not just it shouldn't exceed, it cannot be smaller either. The dimensions must be 512 x 512 x 64 exactly to make it compatible.Julius {l Wrote}:So generating a terrain in Terravox with the right dimensions and then further mapping in the libvxl Goxel version should work then as long as you don't exceed the original size?
//load_map
for (y=0; y < 512; ++y) {
for (x=0; x < 512; ++x) {
//write_map
for (j=0; j < 512; ++j) {
for (i=0; i < 512; ++i) {
//vxl::load
for (int y = 0; y < 512; ++y) {
for (int x = 0; x < 512; ++x) {
QScopedPointer<Terrain> terrain(new Terrain(QSize(512, 512)));
bool libvxl_create(struct libvxl_map* map, size_t w, size_t h, size_t d,
const void* data, size_t len) {
//libvxl_write
for(uint32_t y = 0; y < map->height; y++)
for(uint32_t x = 0; x < map->width; x++)
I see. But it's not just about maps; there's the issue of missing kv6 export, the buggy vxl export as well as the outrageous performance of Goxel. Anyway, what I'm thinking is a small voxel editor base, which would be expandable with Lua plugins. You could simply write tools to autogenerate different height-maps for example with Lua scripting if you want to use the editor for maps. Would you be interested in something like that?Julius {l Wrote}:I think there are quite some Voxel editors, but no or few that lend themselves to voxel map editing as most voxel games are generating maps procedurally with a focus on altering the maps in game directly. OpenSpades is really the exception here as it follows a more traditional map making paradigm and the tools for autogenerating maps are underdeveloped for it as well.
mesh_set_at(image->active_layer->mesh, &it,
(int[3]) {map_size / 2 - 1 - x,
y - map_size / 2,
map_depth / 2 - 1 - z},
(uint8_t[4]) {BLUE(color), GREEN(color),
RED(color), 0xFF});
Wow, "open to contributions"? You weren't kidding! That repo is already more than 150 commits ahead of guillaumechereau's repo! (And 0 behind.)Julius {l Wrote}:Looks like the person who forked Goxel is quite open to contributions. They already backported the libvxl stuff:
https://github.com/pegvin/goxel2
Yeah, I agree! The new maintainer is nothing like @guillaumechereau, he is very easy to work with! And @pegvin also has a clear vision what has to be fixed (performance mostly, and the lack of thumbnails), and having a clear goal is very important for any project.Julius {l Wrote}:Nice! I think this Goxel2 will be the way forward
Sadly no. Your link leads to the veloren's manual, which has a "reference models" link true, but it is a google drive link which returns 404. And even if it were working, I still have to know how the correctly rendered model looks like. That's why I was asking.Julius {l Wrote}:The link I shared on that issue has an example Veloren character .vox file.
No hurry.Julius {l Wrote}:I am sadly currently low on time to look into it in detail.
Users browsing this forum: No registered users and 1 guest