From bb1e8f61fda5b20023d606fa9e5f6dd5dd77cf39 Mon Sep 17 00:00:00 2001 From: Tazpn <tazpn@users.sourceforge.net> Date: Sun, 11 Jan 2009 21:03:34 +0000 Subject: [PATCH] niflib: Update texture map index enumeration to reflect newer NIF versions --- src/obj/NiTexturingProperty.cpp | 66 ++++++++++++++++++++++++--------- 1 file changed, 49 insertions(+), 17 deletions(-) diff --git a/src/obj/NiTexturingProperty.cpp b/src/obj/NiTexturingProperty.cpp index 590fff85..5d4a852f 100644 --- a/src/obj/NiTexturingProperty.cpp +++ b/src/obj/NiTexturingProperty.cpp @@ -1528,10 +1528,18 @@ TexDesc NiTexturingProperty::GetTexture( int n ) const { return glowTexture; case BUMP_MAP: return bumpMapTexture; + case NORMAL_MAP: + return normalTexture; + case UNKNOWN2_MAP: + return unknown2Texture; case DECAL_0_MAP: return decal0Texture; case DECAL_1_MAP: return decal1Texture; + case DECAL_2_MAP: + return decal2Texture; + case DECAL_3_MAP: + return decal3Texture; }; //If we get here, an invalid texture was requested. @@ -1573,7 +1581,7 @@ void NiTexturingProperty::SetTextureCount( int new_count ) { ClearTexture(i); } } - textureCount = new_count; + textureCount = new_count; } void NiTexturingProperty::SetShaderTextureCount( int new_count ) { @@ -1615,14 +1623,14 @@ void NiTexturingProperty::SetTexture( int n, TexDesc & new_val ) { hasBumpMapTexture = true; bumpMapTexture = new_val; break; - case NORMAL_MAP: - hasNormalTexture = true; - normalTexture = new_val; - break; - case UNKNOWN2_MAP: - hasUnknown2Texture = true; - unknown2Texture = new_val; - break; + case NORMAL_MAP: + hasNormalTexture = true; + normalTexture = new_val; + break; + case UNKNOWN2_MAP: + hasUnknown2Texture = true; + unknown2Texture = new_val; + break; case DECAL_0_MAP: hasDecal0Texture = true; decal0Texture = new_val; @@ -1631,14 +1639,14 @@ void NiTexturingProperty::SetTexture( int n, TexDesc & new_val ) { hasDecal1Texture = true; decal1Texture = new_val; break; - case DECAL_2_MAP: - hasDecal2Texture = true; - decal2Texture = new_val; - break; - case DECAL_3_MAP: - hasDecal3Texture = true; - decal3Texture = new_val; - break; + case DECAL_2_MAP: + hasDecal2Texture = true; + decal2Texture = new_val; + break; + case DECAL_3_MAP: + hasDecal3Texture = true; + decal3Texture = new_val; + break; }; } @@ -1666,10 +1674,18 @@ bool NiTexturingProperty::HasTexture( int n ) const { return hasGlowTexture; case BUMP_MAP: return hasBumpMapTexture; + case NORMAL_MAP: + return hasNormalTexture; + case UNKNOWN2_MAP: + return hasUnknown2Texture; case DECAL_0_MAP: return hasDecal0Texture; case DECAL_1_MAP: return hasDecal1Texture; + case DECAL_2_MAP: + return hasDecal2Texture; + case DECAL_3_MAP: + return hasDecal3Texture; default: throw runtime_error("You have specified an invalid texture type."); }; @@ -1701,6 +1717,14 @@ void NiTexturingProperty::ClearTexture( int n ) { hasBumpMapTexture = false; bumpMapTexture.source = NULL; break; + case NORMAL_MAP: + hasNormalTexture = false; + normalTexture.source = NULL; + break; + case UNKNOWN2_MAP: + hasUnknown2Texture = false; + unknown2Texture.source = NULL; + break; case DECAL_0_MAP: hasDecal0Texture = false; decal0Texture.source = NULL; @@ -1709,6 +1733,14 @@ void NiTexturingProperty::ClearTexture( int n ) { hasDecal1Texture = false; decal1Texture.source = NULL; break; + case DECAL_2_MAP: + hasDecal2Texture = false; + decal2Texture.source = NULL; + break; + case DECAL_3_MAP: + hasDecal3Texture = false; + decal3Texture.source = NULL; + break; }; } -- GitLab