NavBar

Showing posts with label minecraft. Show all posts
Showing posts with label minecraft. Show all posts

Saturday, September 24, 2011

Surgery and Cathedrals

I had oral surgery last week (soft tissue graft so my molars won't fall out), which meant a lot of sitting at home with a lot of extra time on my hands while the drugs messed with my brain. Of course, I did what any other reasonable person riding a Vicodin high would do: I built a cathedral in Minecraft.

Now, I did use a very nice program called MCEdit to take care of most of the repetitive work, so it's not like I mined, crafted, and built this entire thing by hand. I did a ton of planning on graph paper, especially how to handle the various curves. All of the detail-work and parts-building was done in Minecraft proper (using the nice "new" creative mode), but I then used MCEdit to copy/paste/shift the bits around. I'm still not finished, but I figured I have enough so far to pique some interest.

There's also a catacombs level which leads to a large cavern that I'm not sure what I will do yet. I don't have any screenshots of those yet. Not that it would matter, since the catacombs are so dark that you can only see about 5 blocks in any direction, thanks to the darkening effects of being placed just over the void.
 
A view from the nearby NPC village
An external view of the sanctuary
Pretty lights at night!
Before I finished the sanctuary wall...
Main hall at night

Dome at night
A view from the pews
The sanctuary at night



Perfect view of the sunset

Sneak Peek

I've been working on a large-ish side project in my free time over the past few weeks. Here's a little preview.


Thursday, January 27, 2011

Obsessions

It feels good to be coding again. Minecraft quickly turned into an addiction, which I have curbed by turning it into a project. I'm writing a Python script that converts Minecraft's world save data into Maya scenes.

When I was looking for Minecraft wallpaper for my desktop, I discovered an image where someone had taken Minecraft's level data and exported it to a different game engine, then used the game engine to export an OBJ to Blender. The final render looks like this:



I was blown away, but I quickly discovered that their method was quite specific to their software and, more importantly, Mac-only.

My script is still in the rough stages, but much of the basic functionality is there. It can open the .DAT files in which Minecraft stores its world chunks, strip out the section about what kind of blocks make up the chunk, then use that data to re-create the chunk inside of Maya. The end result looks like this:


It's an ugly pile of dirt, but it's a start. The blurry stuff on the top is water, and the various colored blocks are the different materials that make up the chunk. In the end, the script should create a set of geometry like this, as well as a proxy model, save to a file, then reference all the completed chunks into a central map scene.

I also have a list of features I'd like to add:
1) A shell mode where blocks that cannot be seen will not be created. Each chunk is 16 blocks wide, 16 blocks deep, and 128 blocks tall. That comes out to 32768 blocks per chunk...
2) A way to generate better water geometry. In the end, this may just have to be put in manually using planes.
3) UV layout and assignment to use the in-game textures.
4) Automatic lighting creation and placement for things like torches, lava, glowstone, etc.

I'm having a lot of fun with this. It's the biggest technical challenge I've had to tackle, and it's been a rewarding experience.