VSaber
VSaber is a voxel editing tool created by Lewey Geselowitzs. It starts with a block of voxels that you cut away or add. Tools included allow the user to cut using a silhouette bitmap from any direction, an implicit surface generator using ImpView, or to carve an image using a depth map or OFF file.
Marching Cubes
This utility (downloadable from the navigation bar) uses the Marching Cubes algorithm to convert the voxel field into polygons. Specfically it uses a technique developed by Thomas Lewiner et. al called Marching Cubes with Topological Guarantees with source code availiable. The Marching Cubes algorithm was written by E. V. Chernyaev and General Electric apparently owns a patent on the technique via the Lorenson and Cline implementation (U.S. patent #4,710,876). According to Thomas Lewiner: "our technique is a significant improve on the original Marching Cubes, and I am not sure there is a need for a patent license to use it." Therefore, commercial users should be wary.
VSaber to DirectX
Unfortunately, This rendition of Thomas Lewiner's work contains some VSaber Library code. Until Lewey gets a binary .lib file that we can link to without seeing his source, I cannot post the full source. However, the source code to Save Direct X files (without creating a window) is posted (written by me, James Poag).
Now that we have the credits out of the way, to use this program, simply drop a saved file from VSaber or ImpView and it will create a DirectX Mesh in the same directory as the original file (.x extention)
Recommended Pipeline:
Believe it or not, I've been working on getting a model from VSaber into Unreal, textured and everything. I have no licenced software, every tool I use is free for non comercial use:
- VSaber
- Marching Cubes DirectX Output
- DirectX Mesh Viewer (part of DX SDK)
- LithUnwrap UV unwrapping tool by Brad BoltHouse
- Tattoo Texture Editing Program
- Unreal Engine 2.0
Steps:
- Use ImpView or VSaber to create the model.
- Use the utility presented here to Create a DirectX Mesh
- Use the DirectX Mesh Viewer to simplify, clean, weld and add UV coordinates to the mesh.
- Open the mesh with Lithunwrap. Set the material to 'bitmap', unwrap, and save the texture to the filename in the material and save the model with its new uv coords.
- Open the mesh with Tattoo and paint the model. Save all textures and exit.
- Reopen the mesh in Lithunwrap and save the file as a lightwave object.
- Open the Unreal Engine editor and import the static Lightwave Mesh (untested).