Experimental Zmodeler 2 .wft filter from Oleg
Based on models uploaded in this topic and discussion from the last post there...
Ask GooD-NTS or Alexander Blade... I am only a person who is looking for progress, compare information from differen forums and post it here))
You want to keep everything in a secret like other information about GTAIV formats? Please, not...
Model format is hacking by CrashBandicoot and listener (I just only translated their speech to english)
i'll re-iterate a bit. All my discussion is based on w_bat_wdr.rsc
HeaderLength, offset into file where raw vertex data begins.
DataLength, total amount of data to read in, including any padding (0xCD) and face indices.
The vertex structure should be as follows:
0 float position x
4 float position y
8 float position z
12 float normal x
16 float normal y
20 float normal z
24 dword color (RGBA)
28 float texcoord u
32 float texcoord v
size of 1 vertex = 36 bytes
size of vertex array = 0x1ef0
0x1ef0 / 36 = 220 verts (vertex count isn't listed in file anywhere? i can't find it..)
dword unknown (material indices?)
offset 0x3000, face indices?
face index array is 0x5A0 bytes long (also 16-bit face indices, see Directx dox)
padding until 0x3FFF
Notes on vertex structures: Earlier in the file, 0xBC0 for the bat, there a list of shaders that will be used for the materials on the geometry. The vertices should have the data that the shaders expect, and different shaders will expect different data. Peds have boneweights, and some geometry has tangents, or multiple uv coordinates. Be sure to sure to cross check the shaders listed in the model, with common\shaders\db, and the vertex declarations in common\shaders\dcl.
Edit: The *.dcl files have been changed with R* patches (220.127.116.11 for sure, 18.104.22.168 is untested) and no longer contain full vertex declarations
Anyone using that data needs to grab the files from a 22.214.171.124 install.