Tutorial 3. Massive Pinball

with Ryan Bury

3.1 Building the Container

If you are stuck on a step, try hovering over the text and reading the tool-tip.

03-001 makingFloor1

03-002 makingFloor2

Take the default cube and resize it to make a floor as I’ve shown in these pictures.

Now you have a floor! We need to build walls so the balls don’t fall off.

03-003 makingWalls1

03-004 makingWalls2

I create the walls similarly to how I create the floor. Resize the object how you desire to create walls that sit on the side of the floor.

Next duplicate that first wall and move it along the x-axis to position the wall on the other side of the floor.

Tip: Pressing ‘shift’+’d’ will duplicate an item, making a completely separate object. ‘alt’+’d’ will instance an item making an object that shares almost all data with the item it was copied from. Instancing is useful for extremely large and complex scenes to make the scene have a more managable amount of data (This could be a big data technique).

Now, we need to make the ramp larger for demonstration purposes.

03-005 copyingContainer1

03-005 copyingContainer2

I duplicate the container we’ve created then move it along the y-axis.

I repeat that process to create a total of 3 containers.

Lastly, I translate and rotate the separate containers around to form a ramp just as in the picture.

03-005.5 rotatingMultipleObjects

If you’re having trouble rotating multiple objects as a unit make sure your objects are set to rotate about the median point as shown in the above picture. Also try toggling the Manipulate center points button highlighted in yellow.

03-006 finishingContainer

To finish I duplicated one of the sides we created early and moved it to block the bottom and top of the ramp.

Yours may look a bit different than mine and that is okay, it should still work the same as long as it is similar; maybe you’ll get an even better result.

 

Before adding the obstacles, we should add the physics to our container so we don’t forget about it later.

03-007 addingPassivePhysics1

03-008 addingPassivePhysics2

We do this the same way we did in the previous tutorial.

Select the desired objects, locate the Physics panel (highlighted in green) on the left, and click Add Passive (highlighted in yellow).

After this, all the objects making up your container should be outlined in green.

You can test that this is working by creating a ball, adding physics to it and roll it down the slope like in the following image.

03-009 ballRolling

3.2 Building the Obstacles

03-010 addingObstacles1

For the lower layer I chose to add cubes to slow down the balls when they reach the bottom.

Don’t forget to add Passive Physics as you go so that you don’t have to do it all at the end.

How I did this was I created one cube object, added physics to it, then duplicated that object numerous times and rearranged it in a random fashion.

03-011 addingObstacles2

The middle layer is similar to the last except I chose to add cylinders that wouldn’t slow down the balls quite as much.

I followed the same process as with the cubes except I tilted my camera so I was looking down on the cylinders. This helps so that when pressing ‘g’ to grab the cylinders and move them, they stay in the same z-position relative to the plane.

Play around with the controls and you’ll find something that works for you.

03-012 addingObstacles3

The highest layer I followed almost exactly the same process as the middle layer except with cones.

I did this because when we let the balls roll down the slope, the cones will send some balls flying into the air and create a cool effect.

3.3 Creating the Balls

03-013 addingBalls1

Start by adding one ball and sizing it down to whatever size you want.

The initial scale of my ball is highlighted in yellow.

03-014 addingBalls2

Duplicate the spheres and create a line as long as you’d like.

03-015 addingBalls3

Now, select the entire line of balls and duplicate it until you’ve created a plane of spheres.

03-016 addingBalls4

To finish the creation of the balls, duplicate the plane, moving it along the z-axis, to create a cuboid of spheres.

03-017 addingBalls5

I wasn’t satisfied with the size or amount of my spheres when I had finished so I sized the group down and duplicated it 3 more times to create more. I think it will look better this way. Alternatively, you could scale up the entire ramp and achieve the same results.

Now you’ve finished creating the balls, we need to add physics to them, and make sure the physics of the entire scene will create a pleasing demonstration.

03-018 addingPhysics1

To add the physics to the balls is simple. Just select all of the balls and click Add Active (highlighted in yellow) in the physics panel on the left of the screen. After this, all the objects should be highlighted in green rather than orange.

You should have already applied passive physics to your container and obstacles; if you haven’t, do that now. Now, we adjust the physics settings of these objects.

03-019 addingPhysics2

I selected all of the objects in the container and set the bounciness to 1.0 and the friction to 0.2. These settings are located in the properties under the physics tab. If you’re having trouble locating the settings, re-read the Bouncing Ball Tutorial.

Changing these setting only changes the settings of the active object which has a slightly lighter colored dot in the center. You must click Copy from Active in the Physics panel of the 3D viewport in order to apply these settings to all of the objects.

03-020 addingPhysics3

For the balls I changed bounciness to 0.5 and friction to 0.5. After changing these you must use Copy from Active again.

3.4 Lighting the Scene

When it comes to lighting the scene you have many choices but most can be distilled to either plain or artistic. I will show you both.

03-021 plainLights

To start we need to have a main light source. I’ve chosen a Sun light source and angled it slightly towards the scene.

To supplement this I add a Hemispherical light source with half power and a slight blueish tint just at the base of the ramp. This makes it easier to see the objects clearly.

The supplementary light is not necessary but it does make a difference when rendering the scene. I will show you an example of how this will look.

03-022 plainLightsRender

We can also give the lights a more artistic feel to give the demonstration some more life if you desire that.

03-023 artsyLights

Creating artistic lights takes much more creativity. I am not the most creative person so this is what I came up with; feel free to explore with the other light choices and change their attributes to your liking.

I have 5 Spot Lights of various colors including white, red, and blue (To change colors look at the highlighted area) to focus on the center of action in the middle of the ramp. I also added a quite weak Sun source to allow the rest of the scene to at least be seen.

The result is more artsy than the previous and is decent looking. I’ve done this only to show you a small amount of the possibilities.

03-024 artsyLightsRender

3.5 Rendering

To render this demonstration is quite simple because it is very similar to the Bouncing Ball Tutorial.

To see the desired rendering settings refer to that tutorial again.

When rendering this scene, because it is more complex, I would use Materials to add some color to the demonstration and make it even more interesting, so I will briefly describe how to do that.

03-025 addingMaterial

Select an object and under the Materials menu in the Properties panel select the New button.

After this you are free to change the color, which is labeled Diffuse, the Shading, and many other properties. You can make the objects reflective too, which is what I do with my final render.

03-026 linkingMaterials

To then copy that material to each other object you want to apply it to you can select each object seperately and select your already created material or you can link the materials.

This is done by selecting all the desired objects, making sure the active object is the one with the material, then press ‘ctrl’+’l’ and click Material in the pop-up menu. Now they should all have the same material.


So, here is my final result.

03-027 result(resize)