P3D File Format - ODOLV40 Obsolete – Talk
No edit summary |
No edit summary |
||
Line 35: | Line 35: | ||
[http://i198.photobucket.com/albums/aa15/sbeetham/img2.jpg Anim Sequencing?] | [http://i198.photobucket.com/albums/aa15/sbeetham/img2.jpg Anim Sequencing?] | ||
Also, I think the first LOD in the file structure is always the 'Memory LOD' - Well at least it looks like it in m16a4.p3d, G36.p3d and us_soldier_sniper.p3d. | |||
--[[User:Sy|Sy]] 17:15, 16 June 2007 (CEST) | --[[User:Sy|Sy]] 17:15, 16 June 2007 (CEST) | ||
---- | ---- |
Revision as of 16:22, 16 June 2007
I'm seeing a lot of varying structures dependant on model type.
//Legend
//byte = 1 char = 8 bits
//ulong = unsigned long, 4 bytes
//ushort = unsigned short 2 bytes
//asciiz = variable length zero terminated string.
//float = 4 bytes (single precision)
struct ODOLv40
}
char Signature[4]; //"ODOL"
ulong Version; //28hex, 40dec
ulong LodCount;
float Resolutions[LodCount];
byte Unknown[VariableLength]; //Length varies between models, end of Resolutions array to begining of Skeleton.
struct Skeleton //Note: A Skeleton may not exist
{
asciiz SkeletonType; //eg. Weapon, OFP2_ManSkeleton
byte Unknown;
ulong BoneCount;
struct BoneGroup
{
bool isBoneGroup; //Note: The 1st. bone is implied to be a 'group' but has no leading byte
asciiz BoneName;
};
};
byte Unknown;
ulong Something01; //Always? xh16000000, 22 - Exists in 3 odolv40's i've checked
byte Unknown[VariableLength]; //Length from 'Something01' to begining of anims.
asciiz Animation;
};
in the M16a4.p3d after animation 'magazine_hide\0' and 'reloadMagazine\0' there is...
Also, I think the first LOD in the file structure is always the 'Memory LOD' - Well at least it looks like it in m16a4.p3d, G36.p3d and us_soldier_sniper.p3d.
--Sy 17:15, 16 June 2007 (CEST)