Formats/SSXTricky:PBD Level File: Difference between revisions

no edit summary
No edit summary
No edit summary
 
eDataFormatType format;
 
uint32 NumPlayerStarts; //Not Used
uint32 NumPatches;
uint32 NumInstances;
uint32 NumPrefabs;
uint32 NumParticleModels;
uint32 NumTextures; //Not Used
uint32 NumCameras;
uint32 LightMapSize; //Not Used
 
uint32 PlayerStartOffset; //Not Used
uint32 PatchOffset;
uint32 InstanceOffset;
 
=== Patch Data ===
<syntaxhighlight lang="c++" line="1">
public struct Patch
{
Vector4 LightMapPoint;
 
Vector4 R4C4UVPoint1;
Vector4 R4C3UVPoint2;
Vector4 R4C2UVPoint3;
Vector4 R4C1UVPoint4;
 
Vector4 UVPoint1R4C4;
Vector4 UVPoint2R4C3;
Vector4 UVPoint3R4C2;
Vector4 UVPoint4R4C1;
Vector4 R3C4;
Vector4 R3C3;
Vector4 R3C2;
Vector4 R3C1;
Vector4 R2C4;
Vector4 R2C3;
Vector4 R2C2;
Vector4 R2C1;
Vector4 R1C4;
Vector4 R1C3;
Vector4 R1C2;
Vector4 R1C1;
 
Vector3 LowestXYZ;
Vector4 R4C4;
Vector3 HighestXYZ;
Vector4 R4C3;
Vector4 R4C2;
Vector4 R4C1;
Vector4 R3C4;
Vector4 R3C3;
Vector4 R3C2;
Vector4 R3C1;
Vector4 R2C4;
Vector4 R2C3;
Vector4 R2C2;
Vector4 R2C1;
Vector4 R1C4;
Vector4 R1C3;
Vector4 R1C2;
Vector4 R1C1;
 
Vector4 Point1;
Vector3 LowestXYZ;
Vector4 Point2;
Vector3 HighestXYZ;
Vector4 Point3;
Vector4 Point4;
 
uint32 PatchStyle;
Vector4 Point1;
uint16 Unknown1;
Vector4 Point2;
uint16 PatchVisablity;
Vector4 Point3;
uint16 TextureAssigment;
Vector4 Point4;
uint16 LightmapID;
 
//Always the same
uint32 PatchStyle;
uint32 Unknown1Unknown2;
uint32 Unknown3;
uint16 TextureAssigment;
uint32 Unknown4;
uint16 LightmapID;
uint32 Unknown2;
uint32 Unknown3;
uint32 Unknown4;
}
</syntaxhighlight>
Vector4 Point2;
Vector4 ControlPoint;
Vector4 ScalingPointAnimationFloats; //Not really sure abouthow thatthey are used
uint32 PreviousSegment;
uint32 NextSegment;
float PreviousSegmentsDistance;
uint32 Unknown1;
}
</syntaxhighlight>
 
=== Materials and Material Blocks ===
<syntaxhighlight lang="c++" line="1">
public struct TrickyMaterial
{
public int TextureID;
public int UnknownInt2;
public int UnknownInt3;
 
public float UnknownFloat1;
public float UnknownFloat2;
public float UnknownFloat3;
public float UnknownFloat4;
 
public int UnknownInt8;
 
public float UnknownFloat5;
public float UnknownFloat6;
public float UnknownFloat7;
public float UnknownFloat8;
 
public int UnknownInt13;
public int UnknownInt14;
public int UnknownInt15;
public int UnknownInt16;
public int UnknownInt17;
public int UnknownInt18;
 
public int TextureFlipbookID;
public int UnknownInt20;
 
}
 
public struct MaterialBlock
{
public int BlockCount;
public int[] MaterialIDS;
}
</syntaxhighlight>