VoxelShop (Voxel-Editor)

User avatar
flux
Member
Posts: 26
Joined: Tue Feb 11, 2014 13:32

VoxelShop (Voxel-Editor)

by flux » Post

Hello artsy people!

Over the last years I have written a voxel editor called VoxelShop in my free time. Features are still being added, but there is already a lot you can do!

Image
(click here for more info)

Looking forward to seeing your creations and your feedback! I'm very confident this is something you'll love!

Thank you!
flux

Edit: For updates you can follow me on twitter @whiteflux.
Last edited by flux on Wed Feb 12, 2014 08:12, edited 1 time in total.

User avatar
Pitriss
Member
Posts: 254
Joined: Mon Aug 05, 2013 17:09
GitHub: Pitriss
IRC: pitriss
In-game: pitriss
Location: Czech republic, Bohumin

by Pitriss » Post

i think this topic should be moved to "Minetest-related projects" or "offtopic" because it is not minetest mod.
I reject your reality and substitute my own. (A. Savage, Mythbusters)
I'm not modding and/or playing minetest anymore. All my mods were released under WTFPL. You can fix/modify them yourself. Don't ask me for support. Thanks.

User avatar
hoodedice
Member
Posts: 1374
Joined: Sat Jul 06, 2013 06:33
GitHub: hoodedice
IRC: hoodedice
In-game: hoodedice
Location: world
Contact:

by hoodedice » Post

Pitriss wrote:i think this topic should be moved to "Minetest-related projects" or "offtopic" because it is not minetest mod.
Yes, this belongs in related projects.

@flux: It looks really promising! Great work!
7:42 PM - Bauglio: I think if you go to staples you could steal firmware from a fax machine that would run better than win10 does on any platform
7:42 PM - Bauglio: so fudge the stable build
7:43 PM - Bauglio: get the staple build

User avatar
flux
Member
Posts: 26
Joined: Tue Feb 11, 2014 13:32

by flux » Post

Thanks @ hoodedice!

And sorry about posting in the wrong section, I was confused about which one to post it in.

User avatar
Inocudom
Member
Posts: 3121
Joined: Sat Sep 29, 2012 01:14
IRC: Inocudom
In-game: Inocudom

by Inocudom » Post

If you can find a way for this program to be used for making nodebox models (or if somebody can write the needed plugin,) then this program will be extremely useful for the Minetest community.

Yes, this program does look very promising.

User avatar
flux
Member
Posts: 26
Joined: Tue Feb 11, 2014 13:32

by flux » Post

Thank you!

I'm currently investigating formats and planning to add more (since this is something the program is lacking). If you could point me to a resource that discusses nodebox models that would be very much appreciated!

User avatar
webdesigner97
Member
Posts: 1328
Joined: Mon Jul 30, 2012 19:16
GitHub: webD97
IRC: webdesigner97
In-game: webdesigner97
Location: Cologne, Germany
Contact:

by webdesigner97 » Post

Here, this should help you: Lua API.

Edit: I downloaded it and saw it needs Java :/ Hmmm, I'm thinking about installing Java just to try this out...
Last edited by webdesigner97 on Tue Feb 11, 2014 16:52, edited 1 time in total.

User avatar
rubenwardy
Moderator
Posts: 6972
Joined: Tue Jun 12, 2012 18:11
GitHub: rubenwardy
IRC: rubenwardy
In-game: rubenwardy
Location: Bristol, United Kingdom
Contact:

by rubenwardy » Post

Nice! I like it!
Renewed Tab (my browser add-on) | Donate | Mods | Minetest Modding Book

Hello profile reader

User avatar
flux
Member
Posts: 26
Joined: Tue Feb 11, 2014 13:32

by flux » Post

@webdesigner97 Could you explain a bit what nodes are? I found water, air, liquid, etc, but how do you differentiate between different types of terrain? From what I understand it's basically what is loaded into the engine?

Yeah, it required java. I've chosen Java since I wanted the program to be compatible with all major OS (Linux, Mac, Windows).
I thought Java was pretty much standard on all desktop machines these days. And I was wrong =)

User avatar
webdesigner97
Member
Posts: 1328
Joined: Mon Jul 30, 2012 19:16
GitHub: webD97
IRC: webdesigner97
In-game: webdesigner97
Location: Cologne, Germany
Contact:

by webdesigner97 » Post

Nodes are the cubic blocks in Minetest: solids, liquids and even air. All of them are registered as nodes (not sure for air, though). Nodeboxes are applied to nodes if wanted and define nodes with special shapes, e.g. stairs.

User avatar
rubenwardy
Moderator
Posts: 6972
Joined: Tue Jun 12, 2012 18:11
GitHub: rubenwardy
IRC: rubenwardy
In-game: rubenwardy
Location: Bristol, United Kingdom
Contact:

by rubenwardy » Post

webdesigner97 wrote:Nodes are the cubic blocks in Minetest: solids, liquids and even air. All of them are registered as nodes (not sure for air, though). Nodeboxes are applied to nodes if wanted and define nodes with special shapes, e.g. stairs.
Air is too.

https://github.com/minetest/minetest/bl ... r.lua#L279
Renewed Tab (my browser add-on) | Donate | Mods | Minetest Modding Book

Hello profile reader

User avatar
aldobr
Member
Posts: 316
Joined: Sun Nov 25, 2012 05:46

by aldobr » Post

flux, does it compile using gcj ?

User avatar
flux
Member
Posts: 26
Joined: Tue Feb 11, 2014 13:32

by flux » Post

Uhm, don't know. I think it might have problems with the spring framework that I'm using.

Why do you need to know?

User avatar
hoodedice
Member
Posts: 1374
Joined: Sat Jul 06, 2013 06:33
GitHub: hoodedice
IRC: hoodedice
In-game: hoodedice
Location: world
Contact:

by hoodedice » Post

flux: Does it not work with the openjre that ships with ubuntu by default?
7:42 PM - Bauglio: I think if you go to staples you could steal firmware from a fax machine that would run better than win10 does on any platform
7:42 PM - Bauglio: so fudge the stable build
7:43 PM - Bauglio: get the staple build

User avatar
flux
Member
Posts: 26
Joined: Tue Feb 11, 2014 13:32

by flux » Post

No, have a look at the readme. It says
LINUX ADVICE
============

You need to be using the oracle java version. You can
install it as follows:
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer
Similar to MAC you will need to change the permission
of the start.cmd file before you can execute it.

User avatar
Calinou
Moderator
Posts: 3169
Joined: Mon Aug 01, 2011 14:26
GitHub: Calinou
IRC: Calinou
In-game: Calinou
Location: Troyes, France
Contact:

by Calinou » Post

It would be nice to have a release of the source code under a free license, this way other people could improve it.

User avatar
flux
Member
Posts: 26
Joined: Tue Feb 11, 2014 13:32

by flux » Post

Yeah, releasing the source code was something I was thinking about already. There are some pros and cons though. What I do have is a fail-save already. So if something happens to me the project will go open source.

MrElmux
Member
Posts: 17
Joined: Sun Dec 29, 2013 09:50
Location: North Western Germany

by MrElmux » Post

Nice to have voxel based model editor for a voxel game

User avatar
flux
Member
Posts: 26
Joined: Tue Feb 11, 2014 13:32

by flux » Post

Could someone please provide me with some nodebox sample files and a quick explanation?

User avatar
rubenwardy
Moderator
Posts: 6972
Joined: Tue Jun 12, 2012 18:11
GitHub: rubenwardy
IRC: rubenwardy
In-game: rubenwardy
Location: Bristol, United Kingdom
Contact:

by rubenwardy » Post

A nodebox is a cub(e / oid) that is not rotated. It is defined by two points (eg: top left, bottom right)

Simple example:

Code: Select all

{-0.5,-0.5,-0.5,0.5,0.5,0.5},  -- one box
{-0.5,-0.5,-0.5,0.5,0.5,0.5}, -- another box
{-0.5,-0.5,-0.5,0.5,0.5,0.5} -- another box
Node box coordinates go from -0.5 to 0.5, because the center of a node (block) is 0,0,0

Each row is

Code: Select all

{ x1, y1, z1, x2, y2, z2 }
Where 1 is one corner, and 2 is the other corner, diagonally.

Here is an example of it in practice:

Code: Select all

minetest.register_node("3dforniture:table",{
    description = 'Table',
    tiles = {
        "forniture_wood.png",
        "forniture_wood.png",
        "forniture_wood_s1.png",
        "forniture_wood_s1.png",
        "forniture_wood_s2.png",
        "forniture_wood_s2.png",
    },
    drawtype = "nodebox",
    sunlight_propagates = true,
    paramtype = 'light',
    paramtype2 = "facedir",
    node_box = {
        type = "fixed",
        fixed = {
            {-0.4,-0.5,-0.4, -0.3,0.4,-0.3},
            {0.3,-0.5,-0.4, 0.4,0.4,-0.3},
            {-0.4,-0.5,0.3, -0.3,0.4,0.4},
            {0.3,-0.5,0.3, 0.4,0.4,0.4},
            {-0.5,0.4,-0.5, 0.5,0.5,0.5},
            {-0.4,-0.2,-0.3, -0.3,-0.1,0.3},
            {0.3,-0.2,-0.4, 0.4,-0.1,0.3},
            {-0.3,-0.2,-0.4, 0.4,-0.1,-0.3},
            {-0.3,-0.2,0.3, 0.3,-0.1,0.4},
        },
    },
    groups = {snappy=2,choppy=2,oddly_breakable_by_hand=2}
}) 
Last edited by rubenwardy on Sun Feb 16, 2014 15:15, edited 1 time in total.
Renewed Tab (my browser add-on) | Donate | Mods | Minetest Modding Book

Hello profile reader

User avatar
flux
Member
Posts: 26
Joined: Tue Feb 11, 2014 13:32

by flux » Post

So, if I wanted to convert a voxel object into a nodebox, I'd need to figure out how to separate it into (minimal amount of) boxes and texture them. Would you agree?

User avatar
flux
Member
Posts: 26
Joined: Tue Feb 11, 2014 13:32

by flux » Post

Talked to webdesigner97 and now things are pretty much clear. I need a good algorithm to convert voxel into boxes though. If you are on stackexchange I'd appreciate if you could up-vote:

http://math.stackexchange.com/questions ... ng-problem

Thank you!

twoelk
Member
Posts: 1482
Joined: Fri Apr 19, 2013 16:19
GitHub: twoelk
IRC: twoelk
In-game: twoelk
Location: northern Germany

by twoelk » Post

Sounds good ;-)

I have played with the program called Sproxel some time ago as aldobr had made an export script for it. I made a version of the Minetest-Logo
Spoiler
Image
Each node is represented by a voxel (what a surprise) It gave out code that I used to add a block to the game
Spoiler
Image
So every voxel even those completely surrounded by others became a nodebox. Of course I could have considered this while I was building the thing but my basic idea was to maybe built something in Minetest and to scale that down to a single node with this tool. The writer of the exporting script might have had other usecases in mind but I was experimenting.

You may note that the ingame result is somehow mirrored so I spent most of the time adjusting the textures to fit the model.
This shows another problem. The model includes a cave and if you look inside it you may notice the textures are not correct. Sproxel and the script only rendered one texture file for each side so six in all. Consider the table lamps in the Home-Decor mod among others as an example of the effects that schould be possible with a simple model.

As I mentioned in other threads for other tools, if you do want to add VoxelShop as a tool for Minetest, I would love to see it be abble to communicate with other tools of the same category be it the Node Box Editor, the WieldItemModeleditor - WIM or Sproxel. I simply consider it important for the succes of a tool to be able to share information/files with other tools.

If you are interested some of the resulting files and a somewhat working rudiment of a mod adding the Minetest-Logo may be found in the attached archive.
Attachments
MinetestLogoDisplay.zip
redone spoiler code
(449 KiB) Downloaded 155 times
Last edited by twoelk on Wed Jul 01, 2015 10:43, edited 1 time in total.

User avatar
flux
Member
Posts: 26
Joined: Tue Feb 11, 2014 13:32

by flux » Post

We were actually looking at the second image when we were discussion how the exporter could work.

Regarding the texture inside the cave: From what I understood it is not possible to fix that with the nodebox format, since you can only define six textures (one for each side). If that is not correct, please provide me with an example (you were talking about table lamps in Home-Decor?).

Format compatibility is very high on my priority list for VoxelShop. I've already added an importer for *binvox, *.kvx and *.kv6 over the last few days and many more will come. Which file format would you like to see next?

User avatar
Inocudom
Member
Posts: 3121
Joined: Sat Sep 29, 2012 01:14
IRC: Inocudom
In-game: Inocudom

by Inocudom » Post

twoelk wrote:Sounds good ;-)

I have played with the program called Sproxel some time ago as aldobr had made an export script for it. I made a version of the Minetest-Logo
Spoiler
Each node is represented by a voxel (what a surprise) It gave out code that I used to add a block to the game
Spoiler
So every voxel even those completely surrounded by others became a nodebox. Of course I could have considered this while I was building the thing but my basic idea was to maybe built something in Minetest and to scale that down to a single node with this tool. The writer of the exporting script might have had other usecases in mind but I was experimenting.

You may note that the ingame result is somehow mirrored so I spent most of the time adjusting the textures to fit the model.
This shows another problem. The model includes a cave and if you look inside it you may notice the textures are not correct. Sproxel and the script only rendered one texture file for each side so six in all. Consider the table lamps in the Home-Decor mod among others as an example of the effects that schould be possible with a simple model.

As I mentioned in other threads for other tools, if you do want to add VoxelShop as a tool for Minetest, I would love to see it be abble to communicate with other tools of the same category be it the Node Box Editor, the WieldItemModeleditor - WIM or Sproxel. I simply consider it important for the succes of a tool to be able to share information/files with other tools.

If you are interested some of the resulting files and a somewhat working rudiment of a mod adding the Minetest-Logo may be found in the attached archive.
This is caused by a flaw that nodebox models have. All cubes that make up nodebox models have all of their faces drawn.

Post Reply

Who is online

Users browsing this forum: No registered users and 5 guests