Updated: June 16, 2012
Here we have, what is called, a clash of titans. On one hand, you have an excellent 3D drawing software. On the other, you get a superb little geek game. Now, on the third hand, you get what we call popular demand, clearly expressed by artistically blessed people, who would like to see their SketchUp models exported into the game. How do these two work together? Well, not without some difficulty.
I have already shown you how to export Google SketchUp models to Blender, Kerkythea and POV-Ray. The next step is to show how it can be done with Minecraft. I must admit I will not be doing any Nikola Tesla magic here, just compiling great work already done by some smart people. But the tutorial should be simple and elegant and useful. And then, there's plenty more reading further below. Works for Windows and Linux!
How can this be done
Like I said, not without some difficulty. To export Google SketchUp models, you will need the professional edition of the program or at least the eight-hour trial. You will also require a command line tool call binvox that will transform the Wavefront OBJ files to voxelized versions of 3D meshes used in Minecraft. Sounds geeky and frightening and probably is.
Export Google SketchUp model
This is your first step. You may also want to consult my 3D conversion article for additional ways of converting the model without buying the full SketchUp program. You might attempt to export your model as Collada and then use one of the online services or standalone converters to get the model exported to OBJ format. Babel3D seems like the best option.
Here, we need to diverge into two separate sets of instructions, one for Linux users and one for Windows users. Linux users will have it much easier, as they are more accustomed to using the command line. However, it's also rather fairly easy in Windows too. We will begin with Linux. Then, we will dedicate a section to Windows users.
Your one stop shop is here - Patrick Min's page. More specifically, you need binvox, viewvox and meshconv. The Linux versions of these three tools are available at Patrick Min's Princeton University homepage.
meshconv can be used to convert to and from several popular formats, including Wavefront OBJ. binvox is used to create voxelized meshes. viewvox allows you to see the final results. My experience shows that these programs work ok, but they do sometimes crash. However, you will get the job done.
Here's sample usage:
./binvox -c -d 1024 <obj file>
What we do here is convert the OBJ file to the default format, which is binvox, with a grid size of 1024 voxels. You can specify additional formats, change the minimal source cube size with the -down flag, crop parts of the model, and more.
Be careful when specifying the -d value, as you should have sufficient RAM, plus you should expect a lot of disk IO activity while working with binvox, which could cause some performance degradation.
Finally, once the model is exported, open it in viewvox. Now, you may lose color and textures, plus your model may appear rather crude. To get better results, you may want to scale your model up significantly. In my example, it shows a sofa-like object, which you have seen just a few weeks back, and it's one of the first of my wife's models to undergo spa treatment in Kerkythea. The model is not centered on the grid, as there are other objects there, but that's less important at the moment.
In theory, you're almost done. The last step is to import the model into the game, but if you've reached this stage, then all is well.
The following forum thread elaborates on all the steps required to get this done. It's meant for Windows users, so if you're on Linux, you will find it fairly easy to follow, plus you have this tutorial.
For Windows user, you just need a different subset of tools, compiled for Windows. They are available for download at yonder page (notice, direct link). Unpack the archive and you will get all the tools you need. From here on, the instructions are identical to the Linux command line usage.
As promised, some fine links:
binvox package for Linux users
VOX package for Windows users (direct link)Minecraft binvox wiki page
Another excellent tutorial on converting models
And some more:
Dedoimedo's tutorial on Kerkythea thingie
Dedoimedo's article on POV-Ray
Blender fun on Dedoimedo
There you go. I would not say this is the most mainstream topic, but given Minecraft's popularity, it should come handy. Plus, as a fellow artist, I have a moral obligation to help my peers out there bring their fruits of imagination to ripening. All in all, Minecraft looks like a handy game, and I should probably buy and review it. And most likely get dangerously addicted.
The conversion from SketchUp to Minecraft is not a simple deal, primarily because you need the full professional version or hope for a successful ad-hoc solution. Then, there are several intermediate steps that require third-party tools which may or may not work for you. The most dreadful part for the majority of users will be the command-line use, but once past that stage, your game fun will surely soar. That's all.
I want to thank Ezra and Yannis for their suggestions.
And to Ezra's question, I'm still thinking about my castles.