One of my favorite parts of game development is prototyping new game ideas. My game engine of choice is Unity. Unity is not only great for “full” games, it’s great for prototypes too. When I build prototypes in Unity, I typically create empty game objects as the parent object for my player, enemies, obstacles, etc. Using Unity’s basic shapes (cubes, spheres, etc.) attached to those objects works great for something simple to see moving around the screen.
Yesterday I started a new prototype third person shooter. Before long, I had little cubes moving around the screen shooting each other. Let’s face it though – simple cubes are pretty boring. To spice it up, I searched online for a 3d cube model with rounded corners.
It surprised me that there weren’t piles of rounded cube models all over the Internet. I found one I could buy for $5. I found a few tutorials on how to make them in Maya and Blender. No 3d models though. All I wanted to do was download a 3d model and drop it in my game. Where are the 3d models!?
I made one. Here it is. This zip contains the 3d model in several different polygon counts.
To get this out in the wild, I’m sharing this under the Creative Commons Attribution-ShareAlike license. For the attribution part of the license, if you release a game (or other work) using the rounded cube please leave a comment sharing the name of your project (a link is great too). No other attribution is required.
For those interested in how I made it, I used Cheetah3d and Balancer Lite. Cheetah is a 3d modeling package for OS X. It’s available on the Mac App Store. Balancer is a simple way to reduce the number of polygons in a model. Less is more, so I hear.
In Cheetah3d, here were my steps:
- Create a cube
- Objects/Make editable
- Use Tools/Polygon/Ring Cut to make the cube look like this:
- Use Tools/Polygon/Catmull-Clark Subdive twice to make the cube look like this:
That created a model with 1728 faces. There’s really no need for that many. You can probably easily pick out at least 36 “squares” in each side of the cube that aren’t needed. Some 3d modeling packages have built-in functions to reduce polygons. Cheetah3d doesn’t. So, I fired up Balancer Lite (free!) and built a couple reduced polygon versions of the rounded cube to test it out.
With a Balancer “tolerance” of 1, the faces drop down to 554. With a tolerance of 3, it turned the model into 320 faces. At 5, the model only had 226 faces.
Once the models were in Unity, I couldn’t tell the difference between the 554 face round cube and the 1728 face one. At 320 and 226 faces, the corners looked a little less round when dynamic lights moved around the scene.
So, go. Make games. Spice up your prototypes with rounded cubes!
EDIT: As pointed out in a comment below, it looks like Balancer adds some errors for texture alignment. Check out the comment & screenshot below for more info.