Page 1 of 59

The Official Supermodel Work-in-Progress Thread

PostPosted: Sun Dec 25, 2011 11:30 pm
by Bart
Just in time for Christmas, I think I've finally fixed some issues with back-face culling, allowing mirrored tracks to work in Daytona 2 and Scud Race Plus. This also fixes the inverted wheels in Dirt Devils.

Image
Image

I still have more testing to do before making a formal WIP post on the news page. Assuming I've really fixed the problem (and haven't introduced new bugs), the code desperately needs to be optimized. A relatively expensive 3x3 matrix inversion and a few matrix multiplications have to be performed for each model instance in order to determine the forward-facing direction. But still, it's a start! The inverted geometry problem has been bugging me for a long time so to have finally figured out where the problem was is a nice little Christmas present for me.

Merry Christmas to all and to all a good night!

Re: The Official Supermodel Work-in-Progress Thread

PostPosted: Tue Dec 27, 2011 4:35 am
by venomv1986
Good Luck!

Re: The Official Supermodel Work-in-Progress Thread

PostPosted: Tue Dec 27, 2011 7:20 am
by Outrunner
This also fixes the ugly lightsaber and luke's hands in Star Wars Trilogy Arcade.

The lightsabers are still blackish in color tho.

Re: The Official Supermodel Work-in-Progress Thread

PostPosted: Tue Dec 27, 2011 10:23 am
by BadMouth
Sweet. Sounds like you're enjoying working on it, which is always important. :D

Re: The Official Supermodel Work-in-Progress Thread

PostPosted: Tue Dec 27, 2011 12:14 pm
by Bart
Outrunner wrote:This also fixes the ugly lightsaber and luke's hands in Star Wars Trilogy Arcade.


What do you mean? Can you post before/after screenshots? I'm assuming you've tried out the SVN build.

The lightsabers are still blackish in color tho.


I believe this is a rendering order problem. It's not understood how Model 3 sorts polygons, if at all, or whether that information is implicit in the way the scene graph is laid out. MAME solves the problem by sorting every single polygon by Z distance and rendering back-to-front. This will virtually always look correct (and is even better than what the actual Model 3 hardware actually does). Per-polygon sorting is not an option in Supermodel because I accelerate rendering by batching up entire models into vertex buffer objects to be decoded once and rendered each time they are referenced.

When the renderer is rewritten some point in the future, I will look into some sort of rudimentary sorting on a per-model basis, but the bigger reason for redesigning it is to fix the remaining texture formats. We're not yet ready to go there.

Re: The Official Supermodel Work-in-Progress Thread

PostPosted: Tue Dec 27, 2011 1:22 pm
by GambitRogue777
Bart wrote:Just in time for Christmas, I think I've finally fixed some issues with back-face culling, allowing mirrored tracks to work in Daytona 2 and Scud Race Plus. This also fixes the inverted wheels in Dirt Devils.

Image
Image

I still have more testing to do before making a formal WIP post on the news page. Assuming I've really fixed the problem (and haven't introduced new bugs), the code desperately needs to be optimized. A relatively expensive 3x3 matrix inversion and a few matrix multiplications have to be performed for each model instance in order to determine the forward-facing direction. But still, it's a start! The inverted geometry problem has been bugging me for a long time so to have finally figured out where the problem was is a nice little Christmas present for me.

Merry Christmas to all and to all a good night!


Stupid question, but does this fix the severe geometry problems with the malfunctioning games?

Re: The Official Supermodel Work-in-Progress Thread

PostPosted: Tue Dec 27, 2011 1:28 pm
by Bart
Nope, it was a completely unrelated bug. I've been looking at Ocean Hunter's scene graph data this morning but still don't understand what's going on.

Re: The Official Supermodel Work-in-Progress Thread

PostPosted: Tue Dec 27, 2011 5:47 pm
by Jiterdomer
Thanks bart looking forward to the next release, Keep it up!

Re: The Official Supermodel Work-in-Progress Thread

PostPosted: Tue Dec 27, 2011 8:38 pm
by Outrunner
Bart wrote:
Outrunner wrote:This also fixes the ugly lightsaber and luke's hands in Star Wars Trilogy Arcade.


What do you mean? Can you post before/after screenshots? I'm assuming you've tried out the SVN build.


Here you go my friend, screenies up.

P.S: The game is slightly off screen because i usually run the emu in fullscreen and i was too lazy to change the resolution when going windowed :P .

Re: The Official Supermodel Work-in-Progress Thread

PostPosted: Wed Dec 28, 2011 1:21 pm
by GambitRogue777
For Christmas I got an Asus desktop with a GeForce GT 220 and a Core2 Quad. It runs Supermodel with no lag, but Scud Race and Daytona USA 2 are running at about 40 FPS average. I've increased the framerate with the PowerPC frequency on the front-end to 50Hz, but that doesn't seem to help. I run Windows Vista Home Premium 64-bit, for your concerns about OS. Anyways, I'm done complaining about this!

Anyway, are we expecting to see the PowerPC and the IRQ timers clocked properly in the next version of Supermodel? And as well as a full-tuned SCSP core?