Difference between revisions of "Sims 3:0x0358B08A"

From SimsWiki
Jump to: navigation, search
Line 22: Line 22:
 
DWORD - TGI Entry Count
 
DWORD - TGI Entry Count
 
T,G,I64
 
T,G,I64
 +
</pre>
  
  
 +
Entries
  
 +
<pre>
 +
DWORD FacialRegion
 +
DWORD Bool Can Have both GeomEntry and BoneEntry? (Presumes at least a GeomEntry)
 +
DWORD Bool Has GeomEntry? (If Canhave is 0, use this. Always 1 when present though)
 +
4 BYTES AgeGender flags
 +
FLOAT Amount
 +
DWORD GeomEntry Index (0 based) (Not used if DWORD 2 is 1)
 +
DWORD Bool HasBoneIndex? (if the last long was 0, this long exists)
 +
4 BYTES AgeGender2 flags (Bone)
 +
FLOAT Amount2 (Bone)
 +
DWORD BoneIndex (1 Based) (If this is used, GeomEntry Index not used)
  
  
My naive assessment of the types and Entries
+
Enum FacialRegion
 
+
        Body = 0x400,
1c - no index long
+
        Brow = 0x100,
3c - first entry no index long
+
        Ears = 0x10,
ac - always has a zero based index long
+
        Eyelashes = 0x800,
bc - double set. second set always has a 1 based index long
+
        Eyes = 1,
 
+
        Face = 0x40,
and the entries
+
        Head = 0x80,
 +
        Jaw = 0x200,
 +
        Mouth = 4,
 +
        Nose = 2,
 +
        TranslateEyes = 0x20,
 +
        TranslateMouth = 8
  
4 BYTES
 
4 BYTES (entry has an index long) (check if there's a val of 0 for this dword, if so, expect another dword before weird data, and index long after first float)
 
4 BYTES (1) (if expected, as said above)
 
4 BYTES (weird data)
 
FLOAT
 
4 BYTES (index long, if it exists, otherwise this is 0)
 
4 BYTES (if the last long was 0, this long exists. If this word isn't 0, then a second set exists)
 
4 BYTES (another weird data)
 
FLOAT
 
4 BYTES (index long)
 
 
</pre>
 
</pre>
 +
-Karybdis

Revision as of 22:06, 9 June 2009

Face Parts

(Also applies to Clothing Parts (0x062C8204))

I've not worked out the entry format exactly, but it's more a matter of checking to make sure data style doesn't change across files. I need independent confirmation that this works please!

DWORD - Version
DWORD - Offset of the TGI index from here (File+8)
DWORD - Size of Indexing block (+12 from first 12 bytes here)
BYTE - Length of the Part Name in two byte pieces
NAME - Part Name (*2 bytes per character, null byte first)
DWORD

-The 067caa11 file (Blend Geometry)
T,G,I64

DWORD - Entry Count
-Repeat Entries 

(Entry size dependent on third DWORD (size). (1C/2C/3C/AC - 24 bytes, BC - 36 Bytes. See Sample Data!))

DWORD - TGI Entry Count
	T,G,I64


Entries

DWORD FacialRegion
DWORD Bool Can Have both GeomEntry and BoneEntry? (Presumes at least a GeomEntry)
DWORD Bool Has GeomEntry? (If Canhave is 0, use this. Always 1 when present though)
4 BYTES AgeGender flags
FLOAT Amount
DWORD GeomEntry Index (0 based) (Not used if DWORD 2 is 1)
DWORD Bool HasBoneIndex? (if the last long was 0, this long exists)
4 BYTES AgeGender2 flags (Bone)
FLOAT Amount2 (Bone)
DWORD BoneIndex (1 Based) (If this is used, GeomEntry Index not used)


Enum FacialRegion
        Body = 0x400,
        Brow = 0x100,
        Ears = 0x10,
        Eyelashes = 0x800,
        Eyes = 1,
        Face = 0x40,
        Head = 0x80,
        Jaw = 0x200,
        Mouth = 4,
        Nose = 2,
        TranslateEyes = 0x20,
        TranslateMouth = 8

-Karybdis

Personal tools
Namespaces

Variants
Actions
Navigation
game select
Toolbox