V
Vehek
Guest
Well, I think we (the people from the Chrono Compendium) don't really know what a "quad" is.


Not everything will have a GPU code, only the quadric's and triangles used in the model would use that.ADDENDUM: Also, a question for Halkun or anyone else who understands PlayStation design/architecture: Are PsyQ opcodes for the Playstation GPU actually planted amongst the game data? I'm interpreting Halkun's previous post about quads as saying that I should be able to see the applicable opcode just before the model geometry, TIM textures, etc. Am I understanding this correctly?
If GPU opcode *is* in with the game data, is it also in the SLUS file? If both the SLUS file and the data following the SLUS file on the game CD contain opcode, and that opcode features the same call functions, then perhaps I could view the call functions in the SLUS file in hex, determine their ASCII signature, and then find the call functions further on in the game CD as well, pointing to model data. [/qoute]Well actually it is more likely there is a buffer of where to load the model data. I know the background files contain fixed load points in each file in FF7. It's less likely GPU opcodes will be interspersed in the executable. The code in the executable is more likely to know what to do with it and use it to set up the GTE to transform the data to be sent to the GPU instead.
Halkun has a nice document he wrote "everything you wanted to know about the playstation but were afraid to ask" or something like that. I recommend reading the GPU commands. That is one way you can distinguish between quads and triangles in the data you are looking at.Does that make any sense whatsoever? I've yet to read the PlayStation design documents, but will begin doing so in the near future. Oh, and another question -- what "language" are the PsyQ opcodes written in? MIPS Assembly language?
Remember ALL CODES ARE 32 bits this includes the GPU so be sure to think that when you are looking for GPU codes.
What you have is part of the library for loading stuff into the GPU likely
Cyb
In PSX format not that easy. It is not set all rotation for all bones, but only rotation for defined bones and to defined axis (many bones have only one or two axis for rotation). And, in addition root bone movement. And all this stored not frame by frame, but all rotations for 1 axis of one bone, next next axis, next bone and so on.The other is a "frame" format that simply holds all the angles for the bones in that frame.(used for the field characters)
Headers example 00 00 00 00 64 65 67 75 ....degu04 00 22 01 00 00 00 00 64 65 67 31 04 00 22 01 00 00 00 00 ..".....deg1..".....64 65 67 32 04 00 22 01 00 00 00 00 64 65 67 33 04 00 22 01 deg2..".....deg3..".00 00 00 00 64 65 67 34 04 00 22 01 00 00 00 00 64 65 67 35 ....deg4..".....deg504 00 22 01 00 00 00 00 65 6e 6b 65 04 00 22 08 00 00 00 00 ..".....enke..".....65 6e 6b 31 04 00 22 04 00 00 00 00 67 61 6b 65 04 00 22 01 enk1..".....gake..".00 00 00 00 67 61 6b 31 04 00 22 01 00 00 00 00 67 61 6b 32 ....gak1..".....gak204 00 22 01 00 00 00 00 67 61 6b 33 04 00 22 01 00 00 00 00 ..".....gak3..".....67 61 6b 34 04 00 22 01 00 00 00 00 67 61 6b 35 04 00 22 01 gak4..".....gak5..".00 00 00 00 67 61 6b 36 04 00 22 01 00 00 00 00 67 61 6b 37 ....gak6..".....gak704 00 22 01 00 00 00 00 67 61 6b 38 04 00 22 01 00 00 00 00 ..".....gak8..".....67 73 30 31 04 00 22 01 00 00 00 00 67 73 30 32 04 00 22 01 gs01..".....gs02..".00 00 00 00 67 73 30 33 04 00 22 01 00 00 00 00 67 73 30 34 ....gs03..".....gs0404 00 22 01 00 00 00 00 67 75 30 31 04 00 22 01 00 00 00 00 ..".....gu01..".....67 75 30 32 04 00 22 01 00 00 00 00 67 75 30 33 04 00 22 01 gu02..".....gu03..".00 00 00 00 67 75 30 34 04 00 22 01 00 00 00 00 6a 69 6d 65 ....gu04..".....jime04 00 22 01 00 00 00 00 6a 69 6d 31 04 00 22 01 00 00 00 00 ..".....jim1..".....6a 69 6d 32 04 00 22 01 00 00 00 00 6a 69 6d 33 04 00 22 01 jim2..".....jim3..".00 00 00 00 6a 69 6d 34 04 00 22 01 00 00 00 00 6b 75 6d 6f ....jim4..".....kumo04 00 22 02 00 00 00 00 6b 61 6e 6b 04 00 22 04 ..".....kank..".
This is common sence in bones animation. Each vertex has weight parameter bones (or how much bone movement influence it). You can set vertex linked to two bones at once, so you will see ettect of distortion (when dress move and stretch). This was used in FFIX.Speaking of animation formats, a few days ago I was trying to look at the Vagrant story animation data and watching some animations in-game I noticed they definately aren't skeletal like the TMD seems to be, but more like a list of vertex coordinates for each frame (like the MD2 of quake 2 I think) It's very noticeable on some weird monsters like the slimes and the Dark Eyes with theyr glowing and theyr texture "animations" but also on some humanoid models there are some visible distortions.


