Sorry for the lack of updates. I've been busy with my other side projects the past week.
Either way, here's the next part: UV Mapping your parts
Once you've created your parts, it's time to uvmap them.
Follow whatever pipeline you are comfortable with.
For this I'm using Headus UVLayout. I take all my parts and unfold them.
I then take them back into Max and check to make sure there isn't any distortion.
At this point, I take some time to go and model a couple more heads and body parts.
Now it's time to pack your uvs. Packing your uvs
Before we begin packing our uvs, let's take a step back and think about how we want to lay them out.
One thing most game artists don't know (especially character artists) is that every 32-bit texture is actually 4 grayscale textures.
This means that with a single 512x512 you have the same amount of pixels as a 1024x1024 if you choose to texture your character only using grayscale. This is, of course, if your game's shader system allows you to use individual channels. I'm using Terminal Reality's Infernal Engine, and it lets you do just that.
For my model, I decided that I need full RGB for certain pieces of the model, but not all of it. So this means that I'm going to use the RGB channel to color those areas and the other areas will be mapped through the alpha channel.
My first step is to separate the geometry into the two groups and pack each group into it's own space.
Each group should now have it's own set of uvs.
**Protip -
As I was packing the uvs, if it turned out I needed to scale the uv islands, I would collapse the stack, select both groups, and scale ALL the islands across both groups to keep the pixel density consistent across the entire model.
Once you have packed all yoru pieces, you're ready to move to the next step. Preparing the Textures
We all have our own pipelines, but I thought I would give you guys a peek into mine. I won't break apart my pipeline as that can be saved for another time.
Here are some snapshots:
Baking lighting onto all the parts.
Taking all the parts and piecing together your unique characters.
Up next is texturing.
Then squashing and stretching the characters to all have unique proportions.
I'm texturing using my own style. I developed my style as a way to make my 3d models look like my illustrations. It is very illustrative. I do a majority of it with the polygon lasso tool and a couple taps of the airbrush.
The above screens have no lighting in max.
Up next is playing with masks to color the uniforms.
Also. Have to build a base for the group to stand on.
I will also be building mock screenshots for 'menu selection' to show the characters within the context of the 'game'.
Right now most of it looks very grey. Did you do that on purpose so that in unreal or whatever, you just play with materials to add colour or what?
Also, a little crit. Im personally not a fan of the shorts. Well, actually that's not true. I like the shorts, but I feel you need another variation thrown in there as well. They are all the same. Every other section of the body has variations, and it shows nicely when lined up. But when lined up, the shorts are clearly reused on EVERY model. Im sure it has something to do with the poly limits, but I feel that that is your room for improvement.
This thread is a great learning resource! Really like what you pulled off.
One thing though: In your colored Texture you are using a lot of one-colored objects (each island has a very dominant color). Wouldn't it have been more efficient to use Vertex Colors for these parts as well, allowing you to use 4 individual textures (each channel one) and therefore double the Texel-Density?
edit: OT but could you show the rig for this crowd?
The first example is a single character that is meant to be viewed at about 75 feet or more away from the camera.
This is considered a single character as it has a single rig that animates all the characters. The rig is less than 32 bones and would animate all the outstretched arms and random heads and bodies to create the illusion of a crowd stirring about. The polycount falls within a single character's budget (12,254 tris). and it uses a single 256x128 texture.
Right now most of it looks very grey. Did you do that on purpose so that in unreal or whatever, you just play with materials to add colour or what?
you are correct. A mask image will be used to apply color to the uniforms.
Also, a little crit. Im personally not a fan of the shorts. Well, actually that's not true. I like the shorts, but I feel you need another variation thrown in there as well. They are all the same. Every other section of the body has variations, and it shows nicely when lined up. But when lined up, the shorts are clearly reused on EVERY model. Im sure it has something to do with the poly limits, but I feel that that is your room for improvement.
You're right too. I was going to give one of the robots pants, but then decided against it. So right now the two captains have the pants.
All these guys are modular, so in the end, I can add pants to whoever I want depending on the final pose.
One thing though: In your colored Texture you are using a lot of one-colored objects (each island has a very dominant color). Wouldn't it have been more efficient to use Vertex Colors for these parts as well, allowing you to use 4 individual textures (each channel one) and therefore double the Texel-Density?
You're right. I'll go back in there and add more color to the shadows.
There were a couple parts that were going to be colored through the shader (like the skeleton bones), but in the end I didn't have enough room in the alpha for their uvs, so I put them into the rgb.
I couldn't help but notice each of your players have a different number.
Is there some shader magic here ?
Nope, just different uv coordinates. If I had a programmer with me and this was an actual game, the uv coordinates for the numbers would be the same and I would use a font for the number. For this competition though, I just had to fake it.
Thanks for all the feedback guys! Hopefully I'll have time to make this as awesome as I can.
Its not so much the pants that I meant. Im talking about the top half of the legs. every character has those spikes around its legs, which make them all appear to be shorts? its the upper half that i think needs variation.
cant wait to see this finished though. You've done an amazing job so far.
Its not so much the pants that I meant. Im talking about the top half of the legs. every character has those spikes around its legs, which make them all appear to be shorts? its the upper half that i think needs variation.
cant wait to see this finished though. You've done an amazing job so far.
oh hmm. Yeah. not sure what to do about that at this point. The most that can be done is variation in the spikes.
One of the limitations when it comes to making a crowd system is not being able to fully customize each character as you want to. It's all about compromise.
I think the screenshot might have something to do with the repetitive feeling of the thigh spikes. When I rotate the model around to the front, its not so noticeable. I'm hoping when they're all posed and grouped together, it will just feel 'right' and bring them together as a team.
Skanker: Great info. I was planning a similar submission (never got started due to real life), but I hadn't thought of using separate UV layouts in the same space for the channels. That's excelent.
I absolutely loved your approach to this, building multiple characters off interchangeable parts. I'm really glad you posted your work process as much as you did, it was really insightful.
Replies
@_@
Everything has a basic unwrap from HeadusUV.
Next I'm going to go in there and begin mirroring textures and sharing uvs across geometry.
Either way, here's the next part:
UV Mapping your parts
Once you've created your parts, it's time to uvmap them.
Follow whatever pipeline you are comfortable with.
For this I'm using Headus UVLayout. I take all my parts and unfold them.
I then take them back into Max and check to make sure there isn't any distortion.
At this point, I take some time to go and model a couple more heads and body parts.
Now it's time to pack your uvs.
Packing your uvs
Before we begin packing our uvs, let's take a step back and think about how we want to lay them out.
One thing most game artists don't know (especially character artists) is that every 32-bit texture is actually 4 grayscale textures.
This means that with a single 512x512 you have the same amount of pixels as a 1024x1024 if you choose to texture your character only using grayscale. This is, of course, if your game's shader system allows you to use individual channels. I'm using Terminal Reality's Infernal Engine, and it lets you do just that.
For my model, I decided that I need full RGB for certain pieces of the model, but not all of it. So this means that I'm going to use the RGB channel to color those areas and the other areas will be mapped through the alpha channel.
My first step is to separate the geometry into the two groups and pack each group into it's own space.
Each group should now have it's own set of uvs.
**Protip -
As I was packing the uvs, if it turned out I needed to scale the uv islands, I would collapse the stack, select both groups, and scale ALL the islands across both groups to keep the pixel density consistent across the entire model.
Once you have packed all yoru pieces, you're ready to move to the next step.
Preparing the Textures
We all have our own pipelines, but I thought I would give you guys a peek into mine. I won't break apart my pipeline as that can be saved for another time.
Here are some snapshots:
Baking lighting onto all the parts.
Taking all the parts and piecing together your unique characters.
Up next is texturing.
Then squashing and stretching the characters to all have unique proportions.
See you guys next time.
On your light rig do you have consistent intensity across all lights or do you vary them towards the bottom of the dome as fills?
Awesome stuff! Very happy that you're sharing your knowledge with all of us losers.
i never really thought of using the multiple uv channels combined with separating the RGB - A.
texture wip sneak peek:
I'm glad you are still using Headus UV Layout.
I also hope Austin is treating you well.
Will def have to do a write up about your process after this... Let's talk
1x head
1x arm
1x wheel leg
Should have all the texture done tonight after I eat.
Then it's all shader work left.
I'm finishing earlier than I expected.
Finished texturing all 9 characters.
RGB and Alpha:
I'm texturing using my own style. I developed my style as a way to make my 3d models look like my illustrations. It is very illustrative. I do a majority of it with the polygon lasso tool and a couple taps of the airbrush.
The above screens have no lighting in max.
Up next is playing with masks to color the uniforms.
Also. Have to build a base for the group to stand on.
I will also be building mock screenshots for 'menu selection' to show the characters within the context of the 'game'.
Right now most of it looks very grey. Did you do that on purpose so that in unreal or whatever, you just play with materials to add colour or what?
Also, a little crit. Im personally not a fan of the shorts. Well, actually that's not true. I like the shorts, but I feel you need another variation thrown in there as well. They are all the same. Every other section of the body has variations, and it shows nicely when lined up. But when lined up, the shorts are clearly reused on EVERY model. Im sure it has something to do with the poly limits, but I feel that that is your room for improvement.
One thing though: In your colored Texture you are using a lot of one-colored objects (each island has a very dominant color). Wouldn't it have been more efficient to use Vertex Colors for these parts as well, allowing you to use 4 individual textures (each channel one) and therefore double the Texel-Density?
edit: OT but could you show the rig for this crowd?
Agreed. Man Jesse, this is pretty sexy. The breakdowns have been extremely helpful.
Is there some shader magic here ?
You're right too. I was going to give one of the robots pants, but then decided against it. So right now the two captains have the pants.
All these guys are modular, so in the end, I can add pants to whoever I want depending on the final pose.
You're right. I'll go back in there and add more color to the shadows.
There were a couple parts that were going to be colored through the shader (like the skeleton bones), but in the end I didn't have enough room in the alpha for their uvs, so I put them into the rgb.
If I get time to. The rig for that is in Maya, and I don't have access to that right now.
Nope, just different uv coordinates. If I had a programmer with me and this was an actual game, the uv coordinates for the numbers would be the same and I would use a font for the number. For this competition though, I just had to fake it.
Thanks for all the feedback guys! Hopefully I'll have time to make this as awesome as I can.
cant wait to see this finished though. You've done an amazing job so far.
oh hmm. Yeah. not sure what to do about that at this point. The most that can be done is variation in the spikes.
One of the limitations when it comes to making a crowd system is not being able to fully customize each character as you want to. It's all about compromise.
I think the screenshot might have something to do with the repetitive feeling of the thigh spikes. When I rotate the model around to the front, its not so noticeable. I'm hoping when they're all posed and grouped together, it will just feel 'right' and bring them together as a team.
more images coming soon.
Thank you very much for sharing such useful information with the rest of us, I really appreciate it!
>.<
This needs to happen! Get on it EA.