Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Material Source (Start of every material data)
- Note: Everything here has been documented from stage files first. Characters, Items, and Trophies will be added slowly over time.
- Credit to GFD for finding other types of material data.
- Credit to SMG for 2 extra bytes for material type "4th byte"
- Material Type:
- 4 = ???
- 9 = Character/Trophy Material
- A = Stage Material
- B = Effect Material
- E = Environment Material
- Lighting Channel(??):
- 0 = no colors
- 1 = Register Color
- 2 = Vertex Color/Alpha + False Color (not affected by light_set_param)
- 3 = Vertex Color + Register Alpha
- 4 = Vertex Color/Alpha + True Color
- 5 = ??
- 6 = ??
- 7 = ??
- 8 = ??
- A = ??
- B = ??
- C = fresnelColor Alpha - MaterialSource = Register;AlphaSource = Register
- D = ??
- Second Byte:
- 00 = ???/no fog
- 01 = ???/Light_Set Fog
- 02 = ???/???
- 08 = ??
- 10 = glow??
- 11 = ??
- 12 = Fresnel Shading/Lighting
- 20 = ??
- 21 = Rim Map light shading/fresnel Lighting
- 22 = ??
- 41 = Material Fog + Light_set
- 44 = ??
- 61 = colorGain+Offset/fresnel Lighting
- 80 = ??
- 81 = ??
- 9D = ??
- A0 = ??
- A1 = ??
- C0 = Color Animation (Links to MTA via Hash and finalColorGain)
- C9 = finalColorGain + Fog (Links to MTA via Hash and finalColorGain)
- D3 = ??
- E1 = ??
- Third Byte:
- 00 = ??
- 10 = No Animation
- 11 = Texture Animation
- 12 = Texture Animation + RotatePivotUV
- 19 = ??
- 33 = ??
- 50 = Two-UV Layer
- 51 = Two-UV Layer + MTA Animation
- 54 = ??
- 55 = Two-UV Layer + Masking
- 56 = Two-UV Layer + ??
- 59 = Two-UV Layer + Transparency
- 5C = ??
- 7B = ??
- 90 = V.Color Transparency
- 91 = Three-UV Layer + MTA Animation
- 96 = Three-UV Layer + ??
- 99 = Three-UV Layer + Transparency
- Fourth Byte (Material Effects):
- Note: 09/49 can act as AO map or 2 Diffuse blended together.
- 00 = No show
- 01 = Diffuse + No Shadows
- 03 = Diffuse + Normal Map + No Shadows
- 05 = Diffuse + Cubemap + No Shadows
- 07 = Diffuse + Cubemap + Normal Map + No Shadows
- 09 = Diffuse + AO Mapping + No Shadows
- 0D = Diffuse + Cubemap + AO Mapping + No Shadows
- 11 = Diffuse + ??? + No Shadows
- 21 = Diffuse + DummyMap + Shadow
- 40 = Shadows Only
- 41 = Diffuse + Shadows
- 43 = Diffuse + Normal Map + Shadows
- 45 = Diffuse + Cubemap + Shadows
- 47 = Diffuse + Cubemap + Normal Map + Shadows
- 49 = Diffuse + AO Map + Shadows
- 4D = Diffuse + Cubemap + AO Mapping + Shadows
- 61 = Diffuse + DummyRim + Shadow
- 63 = Diffuse + Normal Map + DummyRim + Shadows
- 65 = Diffuse + Diffuse + Eye Ramp + DummyRim + Shadow
- 67 = Diffuse + Normal Map + Skin Ramp + DummyRim + Shadows
- 69 = Diffuse + StageMap + DummyRim + Shadow
- 6B = Diffuse + StageMap + Normal Map + DummyRim + Shadow
- 73 = Specular + ShineHighlight + NormalMap + DummyRim + Shadow
- 81 = Glow
- Unknown Data:
- 00 00 00 00
- Transparency Types:
- https://docs.google.com/spreadsheets/d/1OHGQk0SWE-Y8P1gNjuEmFZn0QX2w8PoIVP54miosVRw/edit#gid=0
- Note: the "##" stand for how many textures are in the material
- 00 00 00 ## 00 00 00 00
- 00 00 00 ## 00 00 02 04
- 00 00 00 ## 00 00 02 06
- 00 00 00 ## 00 01 00 00
- 00 00 00 ## 00 02 00 00
- 00 01 00 ## 00 01 00 00
- 00 01 00 ## 00 01 02 04
- 00 01 00 ## 00 01 02 06
- 00 01 00 ## 00 02 00 00
- 00 01 00 ## 00 02 02 04
- 00 01 00 ## 00 03 00 00
- 00 01 00 ## 00 04 00 00
- 00 01 00 ## 00 0a 00 00
- 00 03 00 ## 00 01 00 00
- 00 03 00 ## 00 01 02 04
- 00 03 00 ## 00 02 00 00
- 00 03 00 ## 00 02 02 04
- 00 03 00 ## 00 04 00 00
- 00 04 00 ## 00 00 00 00
- 00 04 00 ## 00 00 02 04
- 00 04 00 ## 00 00 02 06
- 00 05 00 ## 00 01 00 00
- 00 05 00 ## 00 01 02 04
- 00 05 00 ## 00 02 00 00
- 00 05 00 ## 00 02 02 04
- 00 05 00 ## 00 02 02 06
- 00 05 00 ## 00 03 00 00
- 00 05 00 ## 00 03 02 04
- 00 05 00 ## 00 04 00 00
- 00 06 00 ## 00 02 00 00
- 00 07 00 ## 00 01 00 00
- 00 07 00 ## 00 01 02 04
- 00 07 00 ## 00 02 00 00
- 00 0b 00 ## 00 01 00 00
- 00 0b 00 ## 00 01 02 04
- 00 0b 00 ## 00 02 00 00
- 00 0f 00 ## 00 02 00 00
- 00 10 00 ## 00 00 00 00 = Full invisible
- 00 21 00 ## 00 02 00 00
- 00 25 00 ## 00 02 00 00
- 00 32 00 ## 00 02 00 00
- 00 33 00 ## 00 02 00 00
- Byte1 = Padding(?)
- 00
- Blend Mode: SrcFactor + Z-mode type
- 0 = Nothing + CompareBeforeTextureTrue + DepthTestTrue + EnableDepthUpdateFalse
- 1 = SourceAlpha + CompareBeforeTextureFalse + DepthTestTrue + EnableDepthUpdateTrue
- 3 = SourceAlpha + CompareBeforeTextureTrue + DepthTestTrue + EnableDepthUpdateFalse + MultiplyBy1
- 4 = RasterAlpha + CompareBeforeTextureTrue + DepthTestTrue + EnableDepthUpdateFalse
- 5 = SourceAlpha + CompareBeforeTextureTrue + DepthTestTrue (can also be False) + EnableDepthUpdateFalse + MultiplyBy2
- 7 = SourceAlpha + CompareBeforeTextureTrue + DepthTestFalse + EnableDepthUpdateFalse + ObjectDraw
- 32 = SourceAlpha + CompareBeforeTextureTrue + DepthTestFalse + EnableDepthUpdateFalse + MultiplyBy2
- 33 = SourceAlpha + CompareBeforeTextureTrue + DepthTestFalse + EnableDepthUpdateFalse + MultiplyBy1
- Blend Mode: DstFactor(???)
- 00 = Do nothing
- 01 = InverseSourceAlpha
- 02 = One
- 03 = InverseSourceAlpha + SubtractTrue
- 04 = Dummy (faint Transparency, mostly used on stage DUMMY textures to show char shadows on transparent meshes, mesh should have vert alpha's)
- 05 = EffectAlpha(?)
- Alpha Function: Ref1
- 00 = nothing
- 02 = 255 LessOrEqual
- Alpha Function: Ref0
- 00 = nothing
- 04 = 128 GreaterOrEqual
- 06 = 255 GreaterOrEqual
- Unknown Data:
- 00
- Draw Priority:
- Note: Can use any value up to FF
- 00 = Doesnt Matter
- Cullmode:
- 00 = Cull_None
- 01 = ??
- 02 = ??
- 03 = ??
- 04 - Cull_Inside
- Unknown Data:
- note: Helps Cullmode
- 00 = Cull_None
- 01 = ??
- 02 = ??
- 03 = ??
- 04 = ??
- 05 = Cull_Inside
- Unknown Data:
- 00 00 00 00
- Unknown Data:
- Note: Possibly TexGen Flags?
- 00 00 00 00 = no effect
- 3A 83 12 6f = ?? (used for water, possibly watery effect?)
- Z Mode:
- Note: extreme values may result in the object not rendering
- 00 00 00 00 = no effect
- 00 00 00 01 - 7F FF FF FF: depth increase (farther from camera)
- 80 00 00 00 - FF FF FF FF: depth decrease (closer to camera)
- stages:
- 4E 47 FF FF = Kongo Jungle
- Texture ID:
- XX XX XX XX
- Byte1 = Texture Type
- 20 = stages
- 30 = trophies
- 40 = character/fighter
- Byte2 = Character Folder
- 00 = Captain
- Byte3 = Costume ID
- 00 = c00
- 04 = c01
- 08 = c02
- 12 = c03
- 16 = c04
- 20 = c05
- 24 = c06
- 28 = c07
- 32 = c08
- FF = c255
- Byte4 = Texture ID
- can be any value up to FF
- Unknown data:
- 00 00 00 00 00 00
- 1st Layer MapMode:
- 00 00 = TexCoord (stays in place)
- 1D 00 = EnvCamera (moves with camera)
- 1E 00 = Projection
- 1E CD = EnvLight
- 1F 00 = EnvSpec
- Wrap Mode:
- 01 01 = Repeat/Repeat
- 01 02 = Repeat/Mirror
- 01 03 = Repeat/Clamp
- 02 01 = Mirror/Repeat
- 02 02 = Mirror/Mirror
- 02 03 = Mirror/Clamp
- 03 01 = Clamp/Repeat
- 03 02 = Clamp/Mirror
- 03 03 = Clamp/Clamp
- Note: Following stuff isn't 100% verified
- MinFilter:
- 00 = Linear_Mipmap_Linear??
- 01 = Nearest
- 02 = Linear
- 03 = Nearest_Mipmap_Linear
- MagFilter:
- 00 = ???
- 01 = Nearest
- 02 = Linear
- Mip Detail: (Documented by GFD)
- 00: hangs when loading stage
- 01: 1 mip level, anisotropic off
- 02: 1 mip level, anisotropic off (i guess they're identical??)
- 03: 4 mip levels, trilinear off, anisotropic off
- 04: 4 mip levels, trilinear off, anisotropic on
- 05: 4 mip levels, trilinear on, anisotropic off
- 06: 4 mip levels, trilinear on, anisotropic on
- 07: hangs when loading stage
- Unknown data:
- 00 00 = Nothing
- 00 01 = ??
- Unknown data:
- 00 00 00
- End of TextureLayer1-Start of TextureLayer2 if supported; Starts back to TexID, otherwise goes to Material Hash, then padding till next Material Header.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement