Allegro.cc - Online Community

Allegro.cc Forums » Game Design & Concepts » Isometric Voxel editor

This thread is locked; no one can reply to it. rss feed Print
Isometric Voxel editor
Mandrake Root Produc
Member #300
April 2000

Well, after the last post I began working on an isometric voxel editor (see screenshot attatched). I want to add a few more things before I call it complete. It's written in Allegro/C++ and extended to Freya, but it shold be easy to use the voxels made with it.

Basically it saves it as a large .pcx file, which means it saves sort of slowly. The rendering is fast however, and I just want to add in loading, using circle tools/rectangle tools/line draw tools before releasing it. The flood fill works pretty well.

Kanzure
Member #3,669
July 2003
avatar

Awesome. :)
Is this Freya only, or are you planning on releasing this separately? And what about animations? Will anything be possible, such as moving a basic skeleton graphed underneath the voxels?

Mandrake Root Produc
Member #300
April 2000

I was thinking of releasing it seperately as well. The skeleton idea, although cool, I'm not sure how it would work. With the original plan of storing each voxel instead of a slice, it would be easy (glue voxels to skeleton), but this is much more lik regular pixel art- I'm not sure if you can map it to a skeleton. So basically you'll do animations like you do 2d animations- one frame at a time.

Anyway, I'm working out some final touches, but it should be up by Tuesday (as well as the 2.3 release of Freya). I won't have any libraries for exporting/importing/using, that would be up to the end user.

Kanzure
Member #3,669
July 2003
avatar

Quote:

So basically you'll do animations like you do 2d animations- one frame at a time.

You might as well sevre my arm and leg while you're telling me this. That's painful. Isn't there another solution?

I can think of one. Say you have a cube. In the center of one side of the cube you have an arm. The arm can be pivoted more upwards by moving voxels underneath to cover a black void. These voxels would have to be painted into the figure in the first place. When the section is moved, the voxels inside the cube would be pulled forward.

It'd be a "node" scheme.

Mandrake Root Produc
Member #300
April 2000

Quote:

You might as well sevre my arm and leg while you're telling me this. That's painful. Isn't there another solution?

I'm trying to think of one right now, actually.

Quote:

I can think of one. Say you have a cube. In the center of one side of the cube you have an arm. The arm can be pivoted more upwards by moving voxels underneath to cover a black void. These voxels would have to be painted into the figure in the first place. When the section is moved, the voxels inside the cube would be pulled forward.

It'd be a "node" scheme.

Hmm. That might work. Or mapping per-voxel movements....maybe. But it wouldn't be easy to map this to other animations. In other words, let's say you have a voxel image of a tank. And you generate someway of the tank to attack (an animation). If you create a smaller tank, you couldn't use the same exact animation map. (Is this making sense?)

My original idea was to glue voxels to a skeleton, but since this uses bitmaps stacked ontop of one another rather than one voxel at a time, it makes it a little more difficult. But not impossible. Probably won't be in the first release of the voxel editor, but it gives me something to shoot for with the next one.

Kanzure
Member #3,669
July 2003
avatar

<quote>If you create a smaller tank, you couldn't use the same exact animation map. (Is this making sense?)<quote>
None whatsoever. I don't see why you couldn't use the same animation map if it had the same proportions as the bigger tank.

Here's an idea. The modeler creates a model frame of a voxel model. Your engine comes in and fills in the gaps with the voxels. The wireframe can be exported in an image and a texturer can come in before it's rendered. The wireframe can be changed at different points to simulate animation. Different points can be added so that it's more detailed when it needs to be.

This way, models can be drawn and created once, and as your engine advances, the modelers don't have to go back and update.

Mandrake Root Produc
Member #300
April 2000

Quote:

Here's an idea. The modeler creates a model frame of a voxel model. Your engine comes in and fills in the gaps with the voxels. The wireframe can be exported in an image and a texturer can come in before it's rendered. The wireframe can be changed at different points to simulate animation. Different points can be added so that it's more detailed when it needs to be.

This way, models can be drawn and created once, and as your engine advances, the modelers don't have to go back and update.

Not sure exactly how possible this is, but then again I'm quite new to the whole concept of voxels. I'm not rendering each voxel one at a time, but rather as was done here-> http://www.allegro.cc/forums/view/458834, which means that each voxel model is rendered by taking several bitmap slices and stacks them ontop of one another, and then projected. Much how MRI voxels are done. I'm not saying no, I'm just saying that I don't quite get how this would work.

Go to: