We're looking for a program that will take in a 3d model (3ds file) and apply a set of boxes over it to create a blocked version of it.
To envision what it would do (this isn't how it has to solve the problem, but is easier to visualize this way): it would create an array of boxes that are sized to fit around the model and then go through and remove all the blocks that don't touch the mesh. When it's done, then, only the boxes that overlap the mesh somewhere would be kept.
The program needs to support different sized cubes, and different numbers of cubes for the larger array of cubes, so higher or lower "resolution" of cubes can be achieved.
## Deliverables
As a visual aid to what we're wanting to create, look a the bmp included. It includes a partially completed model so you can see a "before" and "after" on it.
As an input to the program we want to be able to specify:
3ds model file
Initial cube dimentions
Model height (in cubes heights)
Output filename/location (also in 3ds format)
The cube dimentions are somewhat relative since we want the model (or cubes, whichever is easier for you) to be sized so that there are a specified number of cubes high for the model - the width and depth of the cube array would then be determined based on the size and proportions of the model.
For example, using the Buddha model file (included), we may want to:
Use 1x1x0.3 sized cubes (LxWxH) and have it be 150 "cubes" high
In that case, the resulting 3ds file should output a model with those size cubes mapped to overlap the mesh (the original model's polygons do not need to be in the resulting file unless that's easier), measuring 150 cubes high.
Included are two 3ds sample test files, both the Buddha, used in the before/after image, which has a higher polygon count and larger file size, and a barstool - chosen just for it's much lower polygon count and filesize.