Qhimm.com Forums

Miscellaneous Forums => Scripting and Reverse Engineering => Topic started by: Qhimm on 2004-11-26 21:47:02

Title: FF8 3D battle models update
Post by: Qhimm on 2004-11-26 21:47:02
Thanks to the FF8 battle model viewer that floated up a while ago, I was able to make some important progress on the decoding of FF8 models. I have made my own battle model viewer which improves on the original viewer in a couple of ways, most importantly the elimination of visual artifacts and correct display of transparency and additive blending.

Also, inspired by mirex' Biturn, I've tried to implement ASE exporting to the viewer, which is really the point of this topic. Now it's 7:42 in the morning here (and I'm not up early), so I'll limit the explanations to that these images are 3DSMAX renders done a few minutes ago.

(http://www.qhimm.com/ifrit_gray.png)

(http://www.qhimm.com/ifrit_color.png)

I shall now sleep.
Title: FF8 3D battle models update
Post by: Radiosity on 2004-11-26 22:56:32
3dmax renders? Holy sweet potatoes :D That looks so much nicer than in the game (hardly surprising mind you). Are you going to be releasing this tool?
Title: FF8 3D battle models update
Post by: Jedimark on 2004-11-27 10:46:24
Them models looks very impressive.
Title: FF8 3D battle models update
Post by: mirex on 2004-11-27 10:58:49
Thanks to cooperation with Qhimm on FF8, Biturn will be able to load FF8 battle models too. Right now its only able to load FF8 field models.
Title: FF8 3D battle models update
Post by: Qhimm on 2004-11-29 02:57:54
Which reminds me mirex, did you manage to export bone information to ASE?
Title: FF8 3D battle models update
Post by: James Pond on 2004-11-29 07:49:01
Damn Ifrit looks nice....so much smoother.

Good job Qhimm ^_^
Title: FF8 3D battle models update
Post by: mirex on 2004-11-29 10:55:43
Qhimm:  Ehhh... iirc i did (export to ASE only, not bone loading from ASE)
Title: FF8 3D battle models update
Post by: Qhimm on 2004-11-29 12:15:49
Right, I'll need to have a talk with you about that... I haven't found any solid info on how to do anything in ASE except geometry and materials.

UPDATE: Some new renders.

(http://www.qhimm.com/odin_glass.png)

(http://www.qhimm.com/ultimecia_color2.png)
Title: FF8 3D battle models update
Post by: Meditation on 2004-11-29 13:09:15
That's amazing!Good job,Qhimm!
One day we could modify FF8 by ourself.
Exporting,improving,and then importing the models back into the original game data,we could get another edition  of FF8 with high definition.
Luckly, I see the good future of such work.
I will always on your back, if Square Enix, Inc. would do some frustrating on you.
Title: FF8 3D battle models update
Post by: Alhexx on 2004-11-29 14:16:25
Holy cow!

Nice job!
It seems like I have to show some results, too, to be able to compete with you...

 - Alhexx
Title: FF8 3D battle models update
Post by: mirex on 2004-11-29 14:49:54
wow, rendering can do nice things to 3d models
Title: FF8 3D battle models update
Post by: Cyberman on 2004-11-29 15:51:18
Quote from: mirex
wow, rendering can do nice things to 3d models


Tell me about it!  It does help that you can use bilinear filtering on the textures and the models are not 'permanently' lit so some depth is managable.  The models IN FF8 look kind of washed out a bit because of that.  Hmmm I suppose if one could extract the walk meshes, one could have a bit of fun with the 'scenary' or at least make some of it.

Qhimm:
I like the miniature.. but don't you think a glass Odin is a collectors item?

Glad someone has made progress.

Cyb
Title: FF8 3D battle models update
Post by: Almighty_gir on 2004-11-30 13:56:43
really great work qhumm....but ehm...your renders could be a bit better :P

make sure you have a grey/white background and that the "floor" plane is also a nutral colour. try using omni's instead of a spotlight. or, if you dont mind waiting about 10 minutes for a render, put a skylight above the model, and turn cast shadows on (it might take longer than 10 mins, depends how busy the scene is and your graphics card etc..)
Title: FF8 3D battle models update
Post by: alloy on 2004-11-30 15:39:50
in 3dsmax change the filtering to Catmull-rom. The defaul area filter is cheap and it showld be burned in a butcket or somethin. Catmul rom will make the rendering way sharper thant what is it now.
Title: FF8 3D battle models update
Post by: Qhimm on 2004-11-30 17:00:24
Quote from: Almighty_gir
really great work qhumm....but ehm...your renders could be a bit better :P

make sure you have a grey/white background and that the "floor" plane is also a nutral colour. try using omni's instead of a spotlight. or, if you dont mind waiting about 10 minutes for a render, put a skylight above the model, and turn cast shadows on (it might take longer than 10 mins, depends how busy the scene is and your graphics card etc..)

Heh, I have limited materials to work with seeing as I can't modify the model materials without actually redoing them (I use multitexturing in my ASE exporter). The exception is Odin and Ifrit 1, where I completely replace the materials.

The background is black since I wanted to highlight the central object of attention, i.e. the model. Also it has the nice feature of hiding where the floor pane ends. The floor itself is lambertian white, with the models being illuminated by three omni lights set up around them, with fine-tuned attenuation distances to provide a good spectrum of colors in the model and in the shadows. The lights, floor and model are then rendered using mental ray with global illumination.

The simpler renders take 2-3 minutes on my computer, while the more advanced (glass Odin) took 15-20 minutes. Also, graphics cards don't affect offline renderers. ;)

Quote from: alloy
in 3dsmax change the filtering to Catmull-rom. The defaul area filter is cheap and it showld be burned in a butcket or somethin. Catmul rom will make the rendering way sharper thant what is it now.

I was not aware of this filtering technique... though could you define "sharper"?

EDIT: Ah, explains why I never saw it. Mental ray does not have any implementation of Catmull-rom, possibly due to different methods used in rendering. Catmull-rom produces sharper imagery by edge enhancement, apparently. Could be argued that it's a destructive filter then, since it shows things that aren't really there. :) Still, the images do look like they've been through an improved version of Photoshop's "Sharpen"...
Title: FF8 3D battle models update
Post by: James Pond on 2004-11-30 21:28:48
I think he means more crisp.

If you look at the edges on ultimaceia, it does look rather soft and makes it hard to define a definate edge.
Title: FF8 3D battle models update
Post by: Almighty_gir on 2004-11-30 22:11:00
oooh wait a minute.... ase isnt a max native format is it? and you should still be able to adjust things within it, try for example, turning ifrits texture to grayscale, adjust the conrast a lil to make it more contrasting. then use that as a bump map.

as for the black background, place a white plane going through the floor, at a slight angle. this will iliminate the edge being seen.

sorry, it looked like a spotlight on edea.

edit: i mean ultimecia....forgive me, ive been on the bottle with a friend tonight :P
Title: FF8 3D battle models update
Post by: alloy on 2004-12-01 03:00:00
Quote from: James Pond
I think he means more crisp.


Yup thats what i meant. Area filter leaves a fuzzy blurry look to the rendered scenes. Catmull-rom was meant to address that flaw. Oh i think they have another name for the filter in mental ray. I think the last one in the list has the same qualities of camull-rom.
Title: FF8 3D battle models update
Post by: Qhimm on 2004-12-01 03:57:58
Quote from: Almighty_gir
oooh wait a minute.... ase isnt a max native format is it? and you should still be able to adjust things within it, try for example, turning ifrits texture to grayscale, adjust the conrast a lil to make it more contrasting. then use that as a bump map.

Heh, if you look at the non-textured Ifrit model you can actually see the bump map, which was created in exactly that way (or rather, letting max do the grayscale conversion and contrast enhancements from the same image source). ;)

Quote from: alloy
Oh i think they have another name for the filter in mental ray. I think the last one in the list has the same qualities of camull-rom.

Thanks for the tip!
Title: FF8 3D battle models update
Post by: Almighty_gir on 2004-12-01 07:31:00
in that case i eagerly await your improvements on this exporter. sorry for my useless and alcohol induced arguments :D

any way i can help?
Title: FF8 3D battle models update
Post by: Alhexx on 2004-12-01 10:10:56
Heh, I' looking forward to see the first renders of Shiva and Siren  :love:

 - Alhexx
Title: FF8 3D battle models update
Post by: Qhimm on 2004-12-01 10:20:30
Quote from: Alhexx
Heh, I' looking forward to see the first renders of Shiva and Siren  :love:

Heh you're in for a bit of bad luck then, since I've only been able to decode battle enemy models... i.e. only people and monsters you encounter in battle. So no Shiva or Siren, at least not yet. :P
Title: FF8 3D battle models update
Post by: Alhexx on 2004-12-01 10:38:44
Duh... well, I think I remember that when testing around with that old FF8 monster viewer...
GFs have other model formats then... looks like I have to do some hacking on my own then - or wait until some of you do ;)

I'm going to start working on FF-X and FF-X-2 next year, maybe I'll get some useful info there...

 - Alhexx

 - edit -
Erm, just an off-topic question:
Qhimm: You're currently in Tokyo?!?
Title: FF8 3D battle models update
Post by: mirex on 2004-12-01 11:18:47
Quote from: Qhimm
Alhexx wrote:
Heh, I' looking forward to see the first renders of Shiva and Siren  

Heh you're in for a bit of bad luck then, since I've only been able to decode battle enemy models... i.e. only people and monsters you encounter in battle. So no Shiva or Siren, at least not yet.

So what kind of creatures are these, where do you encounter them ? Are they summon models ? How many types of models are there ? I know only about 2 kinds, battle ones and field ones (which can be exported too |).

Er sorry that I don't know Shiva and Siren, but I have played FF8 only for 5 minutes :erm:
Title: FF8 3D battle models update
Post by: Radiosity on 2004-12-01 11:32:21
They're both GF summons. Shiva is initial equip after visiting the computer console (or outside the gates of Garden if you don't do that), along with Quezacotl. Siren is acquired shortly after that on your SeeD exam.
Title: FF8 3D battle models update
Post by: Qhimm on 2004-12-01 11:55:05
Technically, all models I've shown so far are battle enemy models, i.e. people your party at one point or another can fight. Apart from these, there are magic CGs, which stores the models, effects and animations used in magic and summons (Ifrit, Shiva, Siren, Quezacotl, etc.). And finally there are two kinds of field models, common ones (the player characters and some commonly seen people) and local ones (models stored only at the scene they appear). The reason I've been able to extract Ifrit and Odin is because you encounter them as enemies during the game. They are also stored as magic sequences, although I don't know the format (or even the location) of those.
Title: FF8 3D battle models update
Post by: Almighty_gir on 2004-12-01 12:19:16
if i knew how to code i would offer to help, but unfortunately all i can offer is my expansive (although sometimes idiotic and anal retentive) knowledge of 3dsmax and softimage XSI...

but like i said, call on me if you feel the need.
Title: FF8 3D battle models update
Post by: Cyberman on 2004-12-01 15:38:33
Quote from: mirex
So what kind of creatures are these, where do you encounter them ? Are they summon models ? How many types of models are there ? I know only about 2 kinds, battle ones and field ones (which can be exported too |).

Er sorry that I don't know Shiva and Siren, but I have played FF8 only for 5 minutes :erm:

Shiva is one of your first Guardian force summons.
Shiva is the frost queen and chills the oponent.
Obviously female (LOL).
Siren is another female Guardian force summon you gain at the communication tower in Dollet.
Siren is exactly how she sounds, she has a silencing attack and mild physical attack the animation includes a nice sea scene though!

Though I am surprised Alhexx hasn't been asking about FF10's Shiva ;)

So these models are stored in animation sequences in FF8? That would make sense.  I can look for them in the PSX disks by seeing if there textures are on the disk.  I've noticed Ultimecia's textures are on Disk1 in the PSX version.  Weird huh?

My Guess is they are stored in a proprietary animation format however.

The other problems include other scene objects in the animation sequence.  (IE Siren's rock and the ocean she's in) Hmmm lots of .. things to filter through in this case.

Qhimm how do the battle models differ from the 'in game' models? And they must have a way of importing battle models into scenes in the basic engine.  For example the scenes when you  return to guardan.  Hmmm more to think about.

Cyb
Title: FF8 3D battle models update
Post by: Ged on 2004-12-01 21:13:26
Quote from: Cyberman
I've noticed Ultimecia's textures are on Disk1 in the PSX version.  Weird huh?


I'm pretty sure that the battle data is kept the same throughout all the disks. Btw. using Gameshark I managed to get a lot of enemies in my team, many of which you didn't encounter on this disk (i.e Ultimecia, Griever, Fujin, Raijin etc.)
Title: FF8 3D battle models update
Post by: Qhimm on 2004-12-02 06:14:58
Quote from: Cyberman
So these models are stored in animation sequences in FF8? That would make sense.  I can look for them in the PSX disks by seeing if there textures are on the disk.  I've noticed Ultimecia's textures are on Disk1 in the PSX version.  Weird huh?

My Guess is they are stored in a proprietary animation format however.

The other problems include other scene objects in the animation sequence.  (IE Siren's rock and the ocean she's in) Hmmm lots of .. things to filter through in this case.

Qhimm how do the battle models differ from the 'in game' models? And they must have a way of importing battle models into scenes in the basic engine.  For example the scenes when you  return to guardan.  Hmmm more to think about.

From the top:
Yes, all magic and GF summoning sequences (along with all normal attacks as well, I imagine) are stored somewhere as animation sequences. Since a lot of these sequences are interactive (direction of the attack, pressing a button to abort the GF sequences etc.), it is safe to assume that the actual sequences, or the "script" of these sequences, are hard-coded into FF8.exe, with additional resources like textures, models, etc. are spread out in the datafiles a bit at random. The layout of the battle and magic archives support this theory, since there's an obvious lack of structure; the files that are stored look more like a resource pool with random files containing textures, models and sound (and no index or naming convention to determine what each file contains). As I said, most likely these files are referenced from the actual definitions of the sequences, which are probably hard-coded to a good extent (it would make my life easier if I was the developer, so it makes sense).

Pretty much all formats used in FF8 are proprietary (except the TIM textures). The easiest way I found to decode them (and the data of most Square games from that period) is to think from the perspective of the PSX hardware. Things are bound to be stored in a way that is efficient for a PlayStation to process. As an example of this, all the 3D models I've seen so far that use blending effects uses exclusively the additive and subtractive modes of the PSX (actually, I've only seen unmultiplied additive -- halkun knows which mode I've talking about). Why? Because when rendering polygons with additive blending only, sort order does not matter.

I haven't examined the PSX version of FF8, but in the PC version formats for the same type of data varies greatly depending which module uses them (battle, field, etc.). It's possible this was also the case originally in the PSX version, but in the porting some formats were "converted" into a bastard PC version format, probably to compensate for some useful feature of the PSX system that isn't on a PC. As a result, lots of files consist of parts of structured PSX-like data wrapped into some kind of container format that looks like a hack-job. The archives (.fi/.fl/.fs) are one example, the .mch files another (at least, I doubt they looked like that on PSX).

As a result, once you've decoded one format of FF8PC, you still don't have many clues to the other formats. Battle models, field models and common field models each have their own formats and/or container formats. Battle models are stored directly as self-contained files, field models are stored in archives (chara.one) containing both local model definitions and animations used in the scene, and common field models resemble ripped-out model data from one of the field model archives. The last kind also don't contain any animation from what I've seen, rather any animations used by common field models are stored together with the local field models as special animations-for-geometry-defined-elsewhere data.

As for mixing-between-modules: it is very limited. The only mixing I know of is the main characters themselves, which could use the same model data in battle and in the field -- it's equally likely they're duplicated in different formats and I haven't found them yet though. This is also why Ifrit and Odin are stored as enemy models, even though they're also stored elsewhere as magic models. The data just isn't reused that often, if at all.
Title: FF8 3D battle models update
Post by: mirex on 2004-12-02 07:14:57
Quote from: Almighty_gir
if i knew how to code i would offer to help, but unfortunately all i can offer is my expansive (although sometimes idiotic and anal retentive) knowledge of 3dsmax and softimage XSI...
Yea you could help me by telling me possibilities of XSI ... can it have vertex/point colours ? I mean if you model a triangle face, can the each of triangle's corner have different colour ?
Also, do you know if there are any format importers/exporters for MAX or XSI, that could handle these vertex colours ?
Title: FF8 3D battle models update
Post by: Almighty_gir on 2004-12-02 07:24:48
well, at the moment all my modeling is done in max and animations in XSI. so i cant answer the first question right now. as far as im aware, there is no "safe" import/export system between the two softwares, max usually crashes, and XSI screams blue murder... i have to go the long way round by exporting to things like .md3, its fairly annoying....

ill look more into both questions tho :)
Title: FF8 3D battle models update
Post by: Alhexx on 2004-12-02 10:49:42
mirex: here we go:
Shiva (http://www.final-dragon.de/images/finalfantasy/ff8/gf/screenshots/shiva.jpg) & Siren (http://www.final-dragon.de/images/finalfantasy/ff8/gf/screenshots/siren.jpg)

Cyberman: Yeah, just found Shiva in FF-X 2 days ago... heh, nice  8)


As for that PSX-2-PC conversion: Simple conversions have never been anything good. However, it seems to be clear, that Square has developed the games for PSX first, and them "ported" them to PC...
When I took a closer look at FF7's and FF8's archive structures some time ago, I recognized that FF7 had some kind of structue - just to take a look at the battle.lgp, which I most worked on. FF8, however, seems to be really messed up - thousands of different file formats and no pattern.
Altough I don't know much about PSX formats, expecially how the PSX addresses files and uses them - but for the PC, there would have been better ways to implement and FF engine...

Like I said, I'm gonna take a look at FF-X files soon...
(... and maybe I'll render FF-X Shiva on my own :D)

 - Alhexx

 - edit -
Am I wrong or is my english getting worse?
Title: FF8 3D battle models update
Post by: Cyberman on 2004-12-07 18:18:55
Qhimm:
That makes a great deal of sense.. unfortunately (LOL)

For the PSX there might be an easier way to 'find' things.  By that I mean the IMG file has a few things it MUST fit.
1 All data is stored SECTOR relative.  Even the FMV's are stored this way.  The sectors will be 2304 bytes for FMV data and 2048 bytes for normal data.  This also means that references to this data is likely stored in the FF8 binary. Or in an index at the begining of the Image.  I think I'll add to TV a new util for sector relative scaning when dealing with FF8 and FF9.  I haven't played with that data in many months.  However if I find anything useful out I'll let you know.   I can find all the TIM files on the FF8 discs which is a start.  I can also yank out model files.  I have notice 2 types of textures.  1 set is high resolution and ther other is low res. Now that I think about it, it's likely that one is battle the other is field. (They probably intermix them).  I'll start exporting 'known' information now to an XML file I guess. Maybe I'll get around to making a data viewer type toy for the program too. (Like L Spiro's in memory device).

Alhexx:
I now regret I mentioned it LOL!  Now Alhexx will be trying to extra as many Lulu models as possible! And Yunaleska let me see there were a few other interesting ones.


mirex:
You wouldn't happen to have a detailed description of common model formats would you? :)

Cyb
Title: FF8 3D battle models update
Post by: mirex on 2004-12-08 07:12:41
Quote from: CyberMan
mirex:
You wouldn't happen to have a detailed description of common model formats would you?
I have description of FF8 field models if thats what you have in mind...
"Cracking" FFVIII model data (http://forums.qhimm.com/viewtopic.php?t=2518&start=0&postdays=0&postorder=asc&highlight=ff8+models), page 1, in the middle
Title: FF8 3D battle models update
Post by: Kislinskiy on 2004-12-08 13:12:53
You can directly link to posts. Just click on that small page icon at the top-left corner of a post.
Title: Re: FF8 3D battle models update
Post by: Mickeyg on 2005-04-17 22:16:29
Quote from: Qhimm
Thanks to the FF8 battle model viewer that floated up a while ago, I was able to make some important progress on the decoding of FF8 models. I have made my own battle model viewer which improves on the original viewer in a couple of ways, most importantly the elimination of visual artifacts and correct display of transparency and additive blending.

Also, inspired by mirex' Biturn, I've tried to implement ASE exporting to the viewer, which is really the point of this topic. Now it's 7:42 in the morning here (and I'm not up early), so I'll limit the explanations to that these images are 3DSMAX renders done a few minutes ago.

(http://www.qhimm.com/ifrit_gray.png)

(http://www.qhimm.com/ifrit_color.png)

I shall now sleep.


sorry to bring up such an old post.. but is it possible that you can explain how you got the gf? iwant to extract somemodels from my PC version of FFVIII but i don't know how..

can you give me a zip with needed files? or models.. or something?? is that possible.. thatnks
:D

yer im a total noob here but i like it here ^^
Title: FF8 3D battle models update
Post by: halkun on 2005-04-17 22:34:28
Necomancy == Bad!

Start a new thread with this as a reference.

Read the FAQ please!