|
||||||||||||
|
|
|||||||
| Register | FAQ | Forum Rules | Members List | Calendar | Mark Forums Read |
![]() |
|
|
LinkBack | Thread Tools | Display Modes |
|
|
#28 (permalink) |
|
Game-Artist.net Admin
|
no replies here, come on guys?
I like the model, and the normal map. As far as i can tell, they work great. There's 1 thing i don't like about it, and that's the damage you sculped. IMO, it looks to rough and well defined. For stuff like that I'd make the normals from my diffuse map. (it'll give you allot more freedom when working on a texture) The face texture looks solid overall, however his forehead looks very bright, compared to other parts of his face. I'd tune that color so that it matches the color on his neck. Hmmm, and maybe tone that tatoo a bit down. (it's a shame you hardly see it on the model btw )keep it up ![]()
__________________
![]() Jeroenmaton.net - Scetchbook Thread - 3dsMax Viewport Shader - Ten Texturing Tips - Supports good crits - |
|
|
|
|
|
#30 (permalink) |
|
New Artist
![]() 26
- 0
|
I have a big problem with my normal maps on my 3D Model in XNA.
A part of the normalmaps are facing the right direction, some maps are facing in the oposite direction. But i don´t know why? Code:
//Vertexshader mit Tangent-Space Berechnung mit Rückgabewert output
VS_OUTPUT VSNormals(VS_INPUT input)
{
VS_OUTPUT output;
float4x4 skinTransform = 0;
skinTransform += Bones[input.BoneIndices.x] * input.BoneWeights.x;
skinTransform += Bones[input.BoneIndices.y] * input.BoneWeights.y;
skinTransform += Bones[input.BoneIndices.z] * input.BoneWeights.z;
skinTransform += Bones[input.BoneIndices.w] * input.BoneWeights.w;
float4 pos = mul(input.Position, skinTransform);
pos = mul(pos,View);
pos = mul(pos,Projection);
float3x3 tgtSpace;
tgtSpace[0] = mul(input.Tangent, skinTransform);
tgtSpace[1] = mul(cross(input.Tangent, input.Normal),skinTransform);
tgtSpace[2] = mul(input.Normal, skinTransform);
float3 tgtLightDir1 = mul(tgtSpace, lightDir1);
float3 tgtLightDir2 = mul(tgtSpace, lightDir2);
output.Position = pos;
output.TexCoord = input.TexCoord;
output.Data1 = normalize(tgtLightDir1);
output.Data2 = normalize(tgtLightDir2);
return output;
}
//Basis Normalmap - Shader
float4 PSNormals(VS_OUTPUT input) : COLOR0
{
float4 outColor = float4(1,1,1,1);
float3 normal = tex2D(N_Sampler, input.TexCoord) ;
float diffuse = saturate(dot(normal, input.Data1)) +
saturate(dot(normal, input.Data2));
return outColor * diffuse;
}
when i change the direction in the pixelshader These are my normalmaps. ![]() |
|
|
|
![]() |
| Bookmarks | |||
Digg
|
del.icio.us
|
StumbleUpon
|
Google
|
| Thread Tools | |
| Display Modes | |