Can I scan a LEGO structure and generate a Minecraft world?
I don't know of any way in particular. One potential problem with doing this would the the relative differences in height to width to length ratios. All of the blocks in Minecraft are cubes, whereas a 1x1 LEGO brick is taller than it is wide and long. A direct translation of brick to block would end up with a structure that is too short in Minecraft.
Try this: http://www.orderofevents.com/MineCraft/KinectInfo.htm
I know of no existing tool. But for a surface scan your best bet would be to use a Microsoft Kinect with some framework like openFrameworks.
Projects involving this solution already exist for 3d printing, so why not making one for Minecraft.
You could try to get some developers on it. You could ask Mojang to create the tool.
Here is a devilish little plan for doing a crazy stunt in Minecraft. I see 2 ways of preparing useful geometries for Minecraft
1. Scanning I would not try to scan in a LEGO model. Colors and block positioning would most likely be lost. The worst problem one would face is the detection of inside surfaces, concave shapes. In other words, scanning the inside of a LEGO house would be quite problematic. So for me it`s a no-no.
2. CAD I would rather try to create the LEGO model using a visualization software. Let me suggest Autodesk 3ds Max software or Autodesk Maya software for achieving this. You can find free bricks and models meshes right here. Additional information on lego visualization can be found on the Okino's website.
Why am I suggesting these products?
- because of their API and scripting abilities. 3ds Max and Maya have a C++ API (Max even has .net bindings which open up to any CLI language (Iron Python)). 3ds Max has Maxscript, Maya has MEL which are as easy to use as script languages can get.
- because they have a one month trial period, which is surely enough for throwing out a minecraft stunt.
-
Lego visualization is something already done using these products. see here
So, provided you follow these steps and are in one or the other software with your model, you will need to translate the geometry into minecraft unit. This is where API and scripting becomes handy. It should be a fun little algorithmic challenge.
- compute the volume bounding box.
- Iterate for each minecraft unit in the volume (1x1 cube, whatever the scale chosen) .Figure out if there is something solid in there worth representing by a minecraft unit (I'd go for 50% occupancy). Figure out to most important color or compute the average
- Serialize the newly computed minecraft geometry in a minecraft compatible geometry file
- Smile. you've achieved quite a challenge even if some (including my wife) would consider it pointless
Note : The software solution above naturally solve the scaling incompatibility between LEGO and minecraft units. Enjoy.