Rounded Dice
One of the more commonly requested features I get for Mach Dice is to have actual rounded six-sided dice. I’d given it some thought but since six-sided dice are only one of the many dice sizes available, it wasn’t high on the priority list. But Boom Dice is an actual game that only uses six sided dice so I wanted to give it a shot.
So what all does it take to implement rounded six-sided dice in Open GL? Well, Open GL doesn’t come with a CG modeler or anything like that. You have to type in all the vertices by hand unless you have some 3rd party tool that lets you import models from a 3D package like Maya. Since I don’t have either, it meant going about it the old fashioned way — figuring things out with pencil and paper.
First of all, you have to draw your model. In my case, it’s a cube with extra vertices at the corners and edges that will later be pushed in to look “rounder”. Second, you’ll have to number all the vertices. Finally, you’ll have to connect them all together in a bunch of lists to create polygons. Oh, you’ll also have to deal with texture coordinates, normals, and figure out their actual positions in 3D. All that stuff isn’t too bad when you’re dealing with simple shapes like cubes or spheres. But you can sort of see why my apps don’t have animated 3D characters in them…
March 30th, 2009 at 8:28 am
That seems like a lot of work for rounded dice. Now that you have put in the work though, does it make you want to go back and update the dice on Mach Dice?
March 30th, 2009 at 4:48 pm
It’s something that I’ve thought about, but the rounded dice take up significantly more memory and computational power. So I have to consider just how I’ll put it in.
March 30th, 2009 at 6:17 pm
Well that’s a big consideration. I know you already have a heavy memory load when the program changes background images. Maybe rounded dice just weren’t meant to be for the Mach Dicer…They look awesome on the boom dice though.