Open GoogleCodeExporter opened 8 years ago
Firstly, I'm pretty sure the shadow/lighting problems in the second screenshot
are a
bug. They mimic closely another bug we just had reported to us in a separate
game.
And yea, once the bug is fixed, the ship *should* render correctly in either
mode
(denormals on or off), since it rendered correctly in the Official build (which
runs
always with Denormals Are Zero hack enabled).
The first problem however, probably isn't a problem. It might be resolved in
the
future through general optimizations, but I wouldn't get my hopes up too high.
I'll
explain:
Quoted:
>> The X2 EE speedhack does absolutely nothing.
This indicates that the slowness is a VU operation, since sync hacks do not
affect
the operational speed of the VUs. And the VU0 in particular can be used for
many
things besides 3D geometry, so the lack of complexity of the geometry doesn't
necessarily mean that there is a problem. In this particular case, there's an
excellent chance that the game is using the VU to calculate the AI/pathing of
the
balls. Other games have also exhibited similar slowdowns during certain AI
activities. Eventually we might get the VUs running faster, but for now
they're on
the back burner due to complexity and the ugliness of existing code (it's
completely
unmaintainable right now).
Quoted:
>> This pretty much improves the framerate to normal, but instead causes
crippling
(but smooth) slowdown in game.
This is a function of many games which is designed to do frame limiting on the
PS2
during complicated scenes. The X3 sync hack makes the game "think" that each
frame
is taking a lot longer to render, because the sync hack works by increasing the
cycle
counts of the cpu instructions (the speedup works by allowing the emulator to
run
fewer instructions to reach counters updates, DMA/IRQ triggers, etc. since
those are
all scheduled via CPU cycles, and the value gets incremented faster). So the
counter
the game uses to measure the framerate happens too soon, and it thinks it can't
finish the frame in time, and just slows itself down to compensate.
Since the game slows itself down, it runs 1/2th as many VU opts per frame,
which is
why your emulation framerate increases under the X3 speedhack (but, of course,
the
actual game's framerate is lower).
Original comment by Jake.Stine
on 17 Dec 2008 at 5:24
Thanks for taking a look at this and taking the time to reply, that was a very
interesting read.
Original comment by Siland...@gmail.com
on 17 Dec 2008 at 7:06
Original issue reported on code.google.com by
Siland...@gmail.com
on 12 Dec 2008 at 9:14Attachments: