View Full Version : Creating next-gen Asteroids fast?

08-08-2010, 10:03 AM


I've got 20 days (coming up) to create the Asteroids for a game set in Space. Asteroid belts will be the main feature of several levels so it's important that individually they look good but also that I can create enough of them to create a belt that doesn't look too repetitive.

I have access to Max, Maya, Photoshop, Painter and ZBrush so I can use work flow ideas from any of those programs. Although I'm most comfortable using Maya and Photoshop.

My thoughts on a high level work flow are along these lines:

Step 1: Use some sort of automatic process to create a batch of random high poly meshes with contrasting silhouettes and UV them.

Step 2: Use Simplygon to create a game mesh from the procedurally created high poly meshes.

Step3: Get one of the programmers to create some sort of batch process that automatically bakes ambient occlusion and normal maps for the entire batch of asteroids one after the other (so I can leave batches baking over night). Using either Maya, Max or XNormal.

Step4: Manually paint subtle colour variation for each under AO maps in Photoshop.

Step5: Manually position the Asteroids in a belt in Maya and export as a single subtly animated mesh.

I've been considering writing a MEL script to create the high poly asteroids but i'm a beginner at MEL and I have no reason to believe I can do any better than the other peoples scripts i've found which arn't great. Anyone know of a high quality script/plugin or stand alone program I could use for step1? If not how would you quickly create a nice looking high poly Asteroid?

Also, anyone know of games doing asteroid's particularly well?

Thanks for reading! :)


08-13-2010, 07:32 PM
looks easy enough to recreate. I think you are on the right track. Depending on the player perspective of the belt will depend on how much detail is necessary for these to look believable. My advice is to make one or two with an interesting silhouette, then dup them in the engine and use that as a starting point for adjustments and additions. No sense in wasting time creating a perfect asteroid belt if its not going to be seen from every angle and for a long period of time. Too often I see artists waste too much time worrying about the perfect details, (and I am all for detail) when really we as artists are the only ones who notice those finite things. Keep me updated!

08-17-2010, 10:09 PM
1) Just bash out some random rock shapes in zbrush, using the planar tools to get approximate form, then stuff like Trim Dynamic/Standard/Clay to make it more "organic rock". Then do a quick sculpt-with-alpha pass on it, or use Noise, to get the "pores" of the rock. Here's a rough example of a simple Zbrush rock workflow. http://www.youtube.com/watch?v=nX8MmMj4q8Q This shouldn't take more than 10 minutes to bang out a rock.

2) Either rotopo real fast or export a low subdivision, make a seam down the rock for your UV and flatten (or use UV Master in Zbrush, this is a great time to use it on such a simple shape). Throw the high poly and low poly into xNormal, burn out your Normal Maps/AO etc. Rinse and repeat for enough to make it seem random in large numbers.

3) In game, depending on your engine, think about making the asteroid field simply a particle system, where the particles = asteroid meshes. Again depending on the engine, consider applying a random scale/orientation to the particles, thus further randomizing it. Doing it as particles allows for:
- randomization of scale/orientation/spin;
- easy "animation" of a moving asteroid field (just send the particles towards an attractor);
- fine control over how many are spawned, and potentially resource "friendly" where slower computers can get less particles.

The down side may be collision, some engines allow for particle collision and some don't. My 2 cents.

CGTalk Moderation
08-17-2010, 10:09 PM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.