Best way to optimize textures for 10 characters

Started by
13 comments, last by ph33r 18 years, 9 months ago
This is what I was thinking for a 2k-3k polygon character model. Character --------- 512x512 Texture Map(color map) 512x512 Diffuse Map 512x512 Specular Map 512x512 Normal Map Now I figure I can put all 4 of those textures into one 1024x1024 texture atlas. That would mean I would have to do four samples in the pixel shader per character. It seems something like this would kill performance. I'm wondering what you guys think would be most optimal for a character in a game? Is 512x512 dds lod texture too much, are four texture too much? If it is then what type of textures would work the best? Any other suggestions for how I could arrange this. BTW - target platform, Radeon 9800 pro(vs_2_0/ps_2_0)
Advertisement
Quote:Original post by ph33r
Now I figure I can put all 4 of those textures into one 1024x1024 texture atlas. That would mean I would have to do four samples in the pixel shader per character. It seems something like this would kill performance.

You'll have to do four samples anyway, no matter if you put all 4 textures in one big atlas or keep them in separate texture stages.
Hmm, why do you have separate color map and diffuse map?
Quote:Original post by centipede
Hmm, why do you have separate color map and diffuse map?


I figured the artist could specify if they want some area's more diffuse then others. So they could paint in the chest area of low diffuse and paint in the hair a higher diffuse.

The color map(maybe I'm confusing terminology) is the actualy texture itself, the picture of what the character looks like.

Quote:Original post by ph33r
I figured the artist could specify if they want some area's more diffuse then others. So they could paint in the chest area of low diffuse and paint in the hair a higher diffuse.

The color map(maybe I'm confusing terminology) is the actualy texture itself, the picture of what the character looks like.

Ahh, now I think I understand... [smile] I suggest putting your diffuse map in color map's alpha channel, for example. If it only defines how strong the diffuse should be, one channel is enough. You could do the same with specular map and normal map, too.

Ok so

Character
---------
512x512 Texture Map | Alpha contains Diffuse Map
512x512 Normal Map | Alpha contains Specular Map


Now, I have two textures per character(and ten different types of characters) how should I arrange it so I could get most optimal performance? I could have an atlas that would hold two characters each now. Would reducing the texture size be beneficial, or is 512x512 the defacto standard?

I'm just looking for the optimal way to group up textures
I think it would be easiest to put one character type's both textures in one 1024x512 texture atlas.
The diffuse map and the color map are typically the same thing. It's known as the albedo texture, and each channel tells how much incoming light is reflected from the surface.

By color map, do you mean emissive? Like light is coming from the surface even in the absence of an external light source?

If so, one trick is to use just an alpha channel for where emissive goes, and use a single color constant to have one emissive color per object. Like for instance, if you have a dude with evil glowing red eyes, his constant would be red.
Actually by color map I mean the texture for the character, that is the texture that shows his face, jacket, pants etc. My OGL always refered to this texture as a color map so thats where I got the term from.
Then what do you define as the "diffuse map"? Think of it this way: There's a green box. Is the color map green, or is the diffuse map green?
I would define the diffuse map as the intensity of diffuse component at different parts of the character. Just like a gloss map defines how much specular intensity is at certain parts.

This topic is closed to new replies.

Advertisement