Minecraft Blender Tutorial

This is a tutorial on how to get normal minecraft graphics in Blender scenes. I used this for my Nether Portal Animation.

Contents:

Step 1: Finding textures
Step 2: Putting it onto a Blender cube
Step 3: Making different Minecraft blocks
Step 4: Creating a Scene
Step 5: Animation

An example of what you can create:


Step 1: Finding textures

First we need to find minecraft's textures. For this I used Google images. I searched "minecraft default textures". I found the appropriate textures straight away. I used the "260blg2.jpg" file. But there is a problem. The grass in Minecraft can be different colours and the texture file has the grass as a black and white image so that Minecraft can change the colour of it as it pleases. What I did was use Paint.net to colour the texture green so that we can use in in Blender. I have put the image here so you can download it by clicking this link.
Minecraft Textures



Step 2: Putting it onto a Blender cube

Now we are going to open up Blender 2.5. If you don't already have it then you can get it
here.

Now that Blender is open, we are going to keep the default cube. It will be our first minecraft cube. Go to the panel on the right and click on the "Texture" tab. There is already a default texture that doesn't do anything. Go ahead and change the type from "None" to "Image or Movie". In the Image settings under the type setting, click the "Open" button and select the image you downloaded.

If we render the scene now (by pressing F12), we will see a few problems.

Firstly, one of the sides of the cube is pure black. When we make a scene out of minecraft blocks later, we can fix that up properly, but just for testing things before that it would be good to be able to see all sides of the cube. The reason the side is black is because there is no light reaching it. The only light source is the default light spot. To fix this problem, go to the "World" tab and enable "Environment Lighting".

Now our cube is lit up nicely.

The second problem is that on the sides of the cube, the texture is just a single line that has been stretched along the entire side of the cube. The other problem is that the entire texture sheet is put on the cube while we only want one of the small textures of the sheet on the cube. Both these problems can be solved the same way. We have to change the way the texture is mapped to the cube.

First we go back to the texture tab. If nothing appears then the texture is referring to the world tab because that is where we were last. Click the "Material" tab first, which is the one just before the texture tab. Now the texture tab should refer to the material. The material is what defines what the object (the cube) is drawn as. Now in the texture tab, go to the "Mapping" settings. Change the Coordinates from "Generated" to "UV". UV is the coordinates that we will define ourselves. We can set each side of the cube to a specific place on the texture sheet.



To set UV coordinates, we first have to switch back to the 3D view. This is the default view but we left it when we rendered the image. If you didn't render an image then you can skip this part. To get back to the 3D view, you can press escape [Esc] or you can change the setting at the left of the bar at the bottom of the render window, as seen in the image to the left.

Now that you are back at the 3D view, you have to change to edit mode. Make sure the cube is selected first by right clicking it. The cube should already be selected unless you have accidently deselected it somehow. Now change to edit mode by pressing "Tab" or selecting it through the setting on the bar at the bottom of the 3D window. The cube should now have each edge highlighted.

After you change to edit mode, change the window back to the "UV/Image Editor" mode. Now we can edit the UV coordinates. First change the image from the render result to the Minecraft texture sheet with the image icon next to the name of the current image. This is seen in the image below.

Now you should see a transparent square over the entire texture sheet. Now press "A" when hovering over it. The square should turn orange, showing that it is selected. This square is actually 6 squares on top of each other and pressing "A" selects all of them at once. These squares are the sides of the cube and the texture the squares are hovering over is what is going to be drawn on each side of the cube. So we have to make these squares smaller and to fit over single Minecraft textures. With the squares selected, we can scale them down by pressing "S" and then typing in a number to determine a new size. "1" will make the square the same size. "2" makes it four times as large (2 times current length and width) and ".5" makes it a quarter as large (half the current length and width). The width of a texture is 1/16 the width of the entire texture sheet so to make the squares the right size, after pressing "S" we press ".0625".

Your oranges square should look like this:


Our next task is to move the orange square over the texture of the block we want our cube to be. For this tutorial, our first block will be smooth stone. To move the orange square, press "G" and move your mouse cursor. Then left click to finish moving it. You will notice that the square isn't snapping to any of the textures and we need the squares to be exactly over what we want. To solve this, we have to move the the square as close to being over the smooth stone texture as we can by hand which will then allow us to snap them into the right place. First zoom in with a mouse wheel and then you can move the view around by dragging with the middle mouse button. After you get the square in place, press "Shift"+"S". This will bring up a small box. Click "Selected to Pixels". This will snap each vertex (corner) of the square to the closest pixel. If it goes onto the wrong pixels, just try moving it back and the snapping again.

If you don't have a mouse wheel or you do but it isn't a button that you can press, then you can go into the "User Preferences" settings through the "File" menu up the top. Click the "Input" tab and then and the left side you can select "Emulate 3 Button Mouse". Then you can hold down "Alt" while dragging with the left mouse button to drag the view around. As for zooming, you can use "+" and "-" on the numpad.

When you have finished this, go back to the 3D view and hit "F12" to render the image again. There seems to be one last problem. The texture is blurry instead of sharp, like how it is in minecraft. To solve this, go to "Image Sampling" under the Texture tab. Untick "Interpolation". Press F12 to render again. Congratulations, you now have your very own block of smooth stone! Make sure to save your file incase Blender decides to crash.


Step 3: Making different Minecraft blocks

Now that we have our first block, we can easily make more. Go back to the 3D view and change back to Object mode. As we are making more blocks it will be helpful to see which block is which. On the option to the right of the Object Mode setting, change the viewport shading from solid to textured. Great. Now we can tell that our block is smooth stone. Now change the view to the top down view and also make it orthographic. To do this, press "7" and "5" on the numpad.

Now we can duplicated our smooth stone object and then change the UV settings to make it a different block. Duplicate your object by making sure it is selected by right cliking it, and pressing "Shift"+"D" and moving your object to the right so that there is a distance of two squares between them. You can hold "Ctrl" to snap the new cube to the grid, or you can later hit "Shift"+"S" and choose "Selection to Grid". If you make any mistakes, "Ctrl"+"Z" can be used to undo your last actions.

You should now see something like this:


Turn back to edit mode and then go back to the UV/Image Editor. There should be the orange square still on the smooth stone. If you can't see the square, try pressing "A" until you see it. Now move this square over sand the same way we moved it earlier. Use "G" and "Shift"+"S" and "Selected to Pixels" to snap to closest pixels. Now if you go back to the 3D view, you can see that we now have a sand block too.

You can repeat these steps to create other blocks too. Try to make cobblestone and dirt. If you want to move the camera around so that you can see your blocks better in your render, you can select it with right click (when in object mode) and press "G" to move it like the blocks. Then press "0" on the numpad to go to the camera view and press "Shift"+"F" to use the mouse to rotate the camera. Left click to finish rotating the camera. Then press "7" on the numpad to go back to the top down view.

Here is my version:


Now it is time to do something more advanced. So far we have only been doing blocks with the same texture on each side. What if we wanted to do grass, or a crafting bench? We can do those too. Let's get started.

Make sure you are in the 3D view. Duplicate another block to make as grass. Now go into edit mode again.

This time, instead of having all of the cube selected, we are only going to select the top face. On the bar at the bottom of the 3D view, there should be a button for "Face Select Mode" as long as you are in edit mode. The button looks like an orange face on the side of a cube. Click the button and then right click the top face of the cube. It should now have an orange outline. If you need to change the 3D view, here are some ways to navigate it.

  • Hold middle mouse button and drag to rotate the view.
  • Hold middle mouse button and drag while holding shift to pan the view.
  • Use the mouse wheel to scroll.
  • Press "." (Period) on the numpad to center on whatever is currently selected.

    After you have selected the top face, go back to the UV/Image Editor window and go to the Minecraft textures image. You will see the orange outline of a square. This square is just the top face of the cube. Move it over the grass texture at the top left.

    Go back to the 3D view but instead select the four sides of the cube. You will have to right click for the first side and the "Shift" + right click for the 3 remaining sides. You will have to turn the view around using the middle mouse button. After you have the sides selected, go back to the UV/Image editor again. Move the square over the grass's side texture. Uh oh, we have another problem. The texture is on its side. In fact, the same is true for all the other blocks, it's just a lot less noticable with them. If you want, you can fix them up yourself.


    So how do we fix this?

    In the UV/Image editor, with the square selected, press "R". This will let us rotate it. Rotate it 90 degrees anti-clockwise. Do this by moving the mouse and holding "Ctrl" to make it snap to the nearest 5 degrees. Left Click to finish the rotation. Back in the 3D view, the textures are now the right way. But if we look around the other sides, we will find one side is now upside down. To fix this, select that one side by itself, go back to the UV/Image Editor and rotate it 180 degrees.

    You should now have enough experience to do the last step by yourself: give the bottom side of the cube a dirt texture.

    A winner is you.



    Step 4: Creating a Scene

    After you have created all the blocks you need, you can start creating a world out of them. This will mostly consist of duplicating and moving blocks.

    Here are some tips and reminders to help you do this yourself:
  • Make sure you are in "Object mode".
  • Use "7" on the numpad to go to the top-down view.
  • Use "1" on the numpad to go to the front view.
  • Use "3" on the numpad to go to the side view.
  • Use "." on the numpad to center on the selected object.
  • Use "Shift"+"D" to duplicate an object.
  • Use "G" to move an object.
  • Use "Ctrl" while moving an object to snap the movements.
  • Use "Shift" while moving to move the object more slower, for more precision.
  • Use "Shift"+"S" with an object selected and select "Selection to Grid" to snap the object to the grid.
  • Use "X" to delete an object.
  • You can speed things up by selecting, duplicating and moving more than one object at a time. Use "Shift" + right click to select multiple objects.

    Here is what I made after a couple of minutes. I still have my other blocks nearby so that I can duplicate them as I need different blocks.


    After building with your building blocks, you may want to create a sun for better lighting. If you can find your current "Point" light source, which is a black dot with a couple of concentric dashed circles around it, select it by right clicking on it. You can then turn it into a sun with the options under the "Lamp" menu. You can also change the Energy and colour of the lamp, if you want. The Energy determines the brightness, and you won't know if it is too much or not enough until you render your image. After you have your Sun lamp, you will have to rotate it to determine the direction of the sunlight. The location of the lamp doesn't really matter. Use "R" to rotate the lamp from the three different views accessible with "1", "3" and "7". You could also use the "Transform" toolbar on the side of the 3D view to change the rotation. If you can't see the toolbar, try hitting "N".

    You may also want to change the sky from grey to a nice blue. Change to the "World" tab and select the "Blend Sky" and "Real Sky" boxes under the "World" settings. Then set the Horizon and Zenith colours to what you want. Horizons are usually lighter than Zeniths. While here you may also want to adjust your "Environment Lighting" and make it dimmer now that we have a sun illuminating the scene.

    Now there is a sun and a blue sky.



    Step 5: Animation

    Once your scene is set up you can either make still images, or you can do an animation. If you don't want to do animation you can skip this section.

    First, go to the "Render" tab. It is the one on the left that looks like a camera. First you have to decide how long your animation will go for. For this tutorial, there will be 24 frames per second but if you wanted you could change that. Figure out how many seconds your animation will be and multiply that by 24. Enter that in the "End" setting of the "Frame Range" settings in the "Dimensions" settings. On the left of that you can change how big you want the output video to be. Normal YouTube widescreen resolution is 640 for X and 360 for Y. If change the 50% to 100%. The percentages are just for making a smaller resolution for testing so that the render doesn't take so long, but you will also keep your original resolution settings to change back to easily.

    Now we have the frame range set up, we can start the animation.

    At frame 1, move the camera in the starting position that you choose. Right click the camera so that it is highlighted orange. Press "I" and select "LocRot". This will create a keyframe for the location and rotation of the camera. In Blender, animation is done with smooth transitions between the keyframes you set. Move through the animation using the timeline below the 3D view. Move and rotate the camera and create keyframes. If you want you can use the red dot button below the timeline to record the locations and rotations of the camera as you make them, but remember to change the frames that you editing to create new movement. The "Transform" toolbar, accessible with "N", may be helpful here. You should be able to do your entire animation now.

    If you want to edit the location of keyframes or delete keyframes, you can change the view to the "DopeSheet". The stars represent keyframes that you can select with right click and move with "G". If you want to delete them, you can use "X".

    While you are doing your animation, you may want to play it to see how it will appear. You can use the play buttons below the timeline to do this.


    When you have finished your animating, now your computer will have to render each and every frame of the animation, which will probably take hours unless it is really short. But before you do that, we have one more thing to do,

    Go to the "Output" settings in the Render tab. Choose a folder and name for the rendered frames of the animation. Blender will add 4 digits to the end of the name to represent each frame. Also, select a file type for each image, such as JPEG. Some file types will have a quality meter which determines the file size and quality of each image. A higher quality means a higher file size.

    Now, when you are ready to make your computer do a lot of rendering, at the top of the Render tab, press the "Animation" button. Make sure you have your file saved, incase Blender crashes during the animation. If you want to stop rendering while your computer is still making the animation, press Escape. If you stop the rendering half way through or Blender crashes, and you want to start again where you left off without re-doing what you've already done, you can change the Start frame in the "Frame Range" settings to whatever you were up to when you stopped. If you don't know where you were up to, you can check the folder where Blender was saving the images and check the number of the last image.

    After you have all your images rendered, change the 3D view to "Video Sequence Editor". At the first frame, click "Add", found on the bar at the bottom of the Editor window. Then click "Image" and go to the folder with your images. Press "A" to select every frame and click "Add Image Strip". Now you have a strip of images in the Video Sequence Editor. Don't worry if it only has the name of the first image, that is suppose to happen. We are almost finshed.

    Go to the Output settings and give a different filename as this will be the movie. Change the filetype to a movie one. I choose AVI Raw. If you choose a different format then you will have to deal with the Encoding settings which I find to be confusing and not work sometimes. I'm not going to talk about how to use encoding in this tutorial, so if you are having trouble with it then I recommend AVI Raw.

    Now click the Animation button under Render at the top. It should now make your animation and put it in the output directory that you selected. If it has worked, then Congratulations on finishing your animation!

    If something hasn't worked or you have a question, send me an email or a message using the form on my homepage.