SergeantJack opened this issue on Mar 11, 2024 ยท 13 posts
SergeantJack posted Mon, 11 March 2024 at 3:55 PM
Hi, I have a human model that I extracted from an online source. When extracted, it comes through with separate head and body textures. This particular character should have black or dark brown hair, shown at #1 in this attached photo. The hair portions of this texture aren't colored right; #2 shows the bulk of the hair, and #3 shows the wispy hair strands that should give it some good detail. Instead of dark brown or black, the hair is coming through as blue/green/grey, and the strands are showing as yellow. This is something that the in-game engine from which this model originated has some kind of procedure to display properly. I haven't been able to replicate that, so now I'm just trying to figure out how to modify the colors of the multi-colored blob so that they align with his intended hair color. I'm guessing I'm going to need to paint over it in some way, but I'm open to any suggestions.
By the way, this is the original texture file, with layers, in case that provides better information:
hborre posted Mon, 11 March 2024 at 5:54 PM
That #2 image appears to be a normal map; it gives the illusion of height, depth, and detail to the hair.
randym77 posted Tue, 12 March 2024 at 2:02 AM
Poser can use normal maps, can't it? Just have to connect it to the right node.
DingDong2024 posted Tue, 12 March 2024 at 4:51 AM
1: Convert to TGA to separate the Layers
2: Extract Alpha
3: Save Individual layers for your needs
4: Make sure the Hair has a unique material region
Alpha Map
Material Map
SergeantJack posted Tue, 12 March 2024 at 9:51 AM
The character already comes with normal maps:
I also already know how to get the alpha/trans texture from the layers in the original texture file. What I don't have is the normal hair coloring. I'm trying to learn an efficient way to modify that original texture so that it aligns with the intended hair color.
hborre posted Tue, 12 March 2024 at 10:55 AM
Is there a separate material zone for the hair?
shvrdavid posted Tue, 12 March 2024 at 12:00 PM
The area that was assumed to be a normals in the diffuse map is more than likely the tangent map for the hair shader in the game engine, probably unreal engine. You already have the hair normals in the normals map, so there is basically nothing else it could be. The yellow part of the hair is probably a trans map, and the red, green, and blue part, is the tangent map. The color of the hair would be defined as a base color chip.
All of the maps are probably DirectX based maps and the green channels will need flipped for OpenGl in Poser, for the normals and tangent maps to work properly.
Some things are easy to explain, other things are not........ <- Store -> <-Freebies->
SergeantJack posted Tue, 12 March 2024 at 5:11 PM
@hborre: When I load the figure into Blender for pre-processing, I have to set material zones for every part, including the hair.
@shvrdavid: This sounds interesting. The game is a Unity game, not Unreal. Can you help me understand what you wrote about tangent maps? I've never heard of them, but if it helps me resolve this problem, that's more than a year of trying, finally done.
shvrdavid posted Wed, 13 March 2024 at 12:02 AM
A tangent map can be used on hair to change the angle of the diffuse and or the specular reflection on the surface of the normal. Basically allowing you to use a reflection or specular light as a reflection that doesn't actually line up with the normal of the surface.
Normals maps are computed all at once in world space. Tangent maps are computed based on the normals direction of each polygon, in tangent space.
If your hair doesn't look like it has lots of triangles in it, you probably don't need it in Poser.
It it looks like this you need to use the tangent map.
Some things are easy to explain, other things are not........ <- Store -> <-Freebies->
SergeantJack posted Wed, 13 March 2024 at 3:16 PM
Can you help me understand how to use this information to make the hair colors look like they should? What's missing here is the correct base hair color. I've got the normals and the alpha figured out already.
shvrdavid posted Thu, 14 March 2024 at 10:39 AM
Post the shader you have for it now.
Some things are easy to explain, other things are not........ <- Store -> <-Freebies->
SergeantJack posted Thu, 14 March 2024 at 10:54 AM
All I have is the original texture file and its conversion into JPG, as well as the normal texture, which I posted at the beginning of this thread. I haven't made any progress on it at all.Post the shader you have for it now.
shvrdavid posted Fri, 15 March 2024 at 2:25 PM
Like someone else said, your either going to have to make the appropriate texture files for use in Poser, or go the shader route to convert them to what Poser understands. Which way you go depends on which render engine you are going to use. You could go the shader only route, but that can be very complex to get to match a game engine in Firefly. Cycles nodes do know how to extract the trans layer from the TGA with a cycles image node. Cycles can also do multiple types of gradients at the same time, (world and tangent)
In Poser I would start by using the yellow area of the face texture as just the transparency for the hair, and go from there. Based on your description you used it for diffuse in Poser, and the game engine probably just used that as the transparency, and tangent on part of the hair. With either a hair shader or a color chip for the color of the hair.
Some things are easy to explain, other things are not........ <- Store -> <-Freebies->