Man, you rock!
Hehe, yaz0r has already done all this and more
btw, Zelda WW (and mario kart dd, and pikmin I think) use the same engine so you might be able to load some of their levels pretty easily now.
yaz0r has (almost) perfected the emulation of the j3d engine (models were working before yaz0rs contribution, no?), while thakis is creating a file/model viewer, Quite DifferentOriginally Posted by ector
Although, the picture in "this post" (along with his Avatar) suggests that yaz0r has also written a model viewer! If this is correct, is it gonna be released as part of Dolphin, separately or...at all?
On a side note, even if something has already been done, it should not prevent someone else from persuing the same goal! There are many GCM viewers/extractors out there, I still wrote my own to see if I could!
This would probably look better with the actual textures
I don't know if I ever will release my J3d stuff, as nitendo is probably owner of the techonology and even used it in the GC bios and recent games as DK jungle beat....
Whoa!!! I think that answers my question!
Is releasing a model viewer against copyright? as long as you don't release any copyrighted material with it, it's no different then releasing an emulator! And the groups that made model viewers/editors for Quake, Half-Life and Doom3 have never had any problems!?!
I'm not an expert on legal matters, so please feel free to correct me!
I just wanted to say that I'm still working on this, even if yaz0r has done this before. I'm currently finishing joint support, something I could never have finished without yaz0r's help (to show you that's not that easy, here's a line from the source: "m = g_matrices[g_drawData.indices[curr.matrixTable[curr.tristrips[i][j].matrixIndex/3]]];" - and in this line two levels of indirection are already precalculated. Try to see 5 levels of indirection just by looking at a hex dump! :-)). Here are two images, one without and one with joint support (it only makes a difference for animated models, though).
After that I'll take a look at materials or animations.
Glad your still working on this, be nice to play with
OS: Vista Home Premium 32bit || CPU: Core 2 Duo E6750 2.66Ghz & Arctic Cooling Freezer 7 Pro || Mainboard: Abit IP35-E Intel P35 || RAM: Corsair TWIN2X2048-6400 2GB Kit DDR2-800 XMS2-6400 || Graphics: XFX 8800GTS 320MB || Audio: Sound Blaster X-Fi Xtreme || Storage: Samsung 320GB HD321KJ Spinpoint T|| Disk Drives: NEC AD-7170A-0B Multiwriter Black 18x DVD±RW || Case: Antec Nine Hundred/Ultimate Gamer || PSU: Corsair 520W HX Series Modular
By now, all geometry loads correctly (at least for all the files I tried...). Below are some images showing how mario evolved over time. In this order:
- Vertices only, but displayed all wrong
- Raw face data, but some faces are missing (I can't code...)
- Raw face data, complete
- Basic scenegraph support
- Support for tristrips that require several matrices
- Same as before, but with "skinned" vertices (more than one bone may influence a vertex) (but this didn't change the appearance) and default values for undefined matrix indices (some matrix indices are stored as 0xffff in the file) (this fixed the appearance).
I decided to do animations before materials (mainly because that's something yaz0r has not yet done ;-) ) and it turned out to be quite easy. The animations are stored in the .bck files. Here's a screenshot of yoshi walking (animations don't look to impressive in screenshots, I know...), all animations that I tried (mario walking, rolling, jumping, some yoshi moves etc) seem to work. Materials next.