M
mirex
Guest
Leviathan is viewer-only. For now. I dont know what will be in future.
In your description you have forZangan only displays the *locations* - not the people in it. So all you could export would be a static set of geometry, for the scenery.
Nevertheless, http://www.dcs.warwick.ac.uk/~csuzs/oldsite/Zangan110.zip for the latest version ... only real change being the plugin support (all the info needed to write a plugin is including, if you still want to do it).
For people, you need Mirex's Leviathan (see General forum for an announcement today about that), or a program I'm working on - see http://www.dcs.warwick.ac.uk/~csuzs/oldsite/dio.png for a screenshot.
My guess is the animation uses the skeleton information for movement, just a guess I've been wrong before and it won't be the first time!However, we don't understand the animation format. We (thanks to Phaeron, I should add) can position the model on its base frame, but not (AFAIK) decode any frames after the first.
You have no description for TVertex. I assume this is TPoint3d in reality?
My guess is the animation uses the skeleton information for movement, just a guess I've been wrong before and it won't be the first time!
Oh... hmmm I am just going to dump the textures after I enumerate them (sigh) by going through each Part and finding the highest and lowest Texture ID. Then reiterate and make copies of the textures convert them to Bitmaps and dump the bitmaps to files (wee). After that comes the fun part of using the image maps that were just defined.Ack! No, it isn't, it's TInterleavedVertex ... serves me right for calling the same thing different names. Each vertex in the list has multiple pieces of information; position, colour, texture coordinates ... so, TInterleavedVertex should be used.
Well, the animation almost *has* to work by doing skeleton bone rotations; it's the only decent way to animate a skeleton, and it is how the HRC (field) models do *their* animations. The trick is finding out how they've encoded the frames...
//---------------------------------------------------------------------------typedef union{ struct { float X, Y, Z; } Point; float Data[3];} Point3d;//---------------------------------------------------------------------------typedef struct{ float S, T;} TexCoord;//---------------------------------------------------------------------------typedef struct{ TexCoord TexC; int RGBAColor; Point3d Vertex;} IntVertex;//---------------------------------------------------------------------------typedef struct{ int Tex; int Min, Max; int RSV; int *Indices;} Group;//---------------------------------------------------------------------------typedef struct{ int TexCnt, VertCnt, GroupCnt; int *Texs; IntVertex *Verts; Group *Groups; int *IndCnts;} Part;
Eh, I'd send you a location from the game (I doubt Square'll care about us exchanging 15 files out of the 11,000 in battle.lgp) but my own computer has no net access at the moment. If noone else does, I can do so next week when I return to uni...
As for normals; P files *can* contain them but don't necessarily. HRC models do, I think always. Battle models don't. I'm not sure about the *locations* but I think they don't. Zangan doesn't read them, anyway, although I suppose they *could* be there - I doubt it, though.