EmuNewz Network

Full Version: Dissidia: Final Fantasy Playable Demo - NPUH90029
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
This demo game was tested with revision 5b6966e. There are several graphics issues while running the demo on the emulator. When using the file libatrac3plus.prx, the character voices are not being played and display the following in the log (debug log setting of hle.sceAtrac3plus was added while conducting the test):
22:35:46 ERROR   atrac3 - ffst_thread - Sound Unit id != 0x28

When using the following graphics settings, the textures are not being displayed properly (1st Screenshot):
[X] Use vertex cache
[X] Use shaders
[X] Enable saving GE screen to textures instead of memory
[X] Enable dynamic shader generation (only relevant when using shaders, recommended for AMD/ATI)
The game requires an additional setting in order to display the correct textures (2nd Screenshot):
[X] Disable optimized VertexInfo reading (may improve compatibility)

Although the character models display correctly for most cases using the five settings above, there are instances where textures can appear protruding towards the center point (4th Screenshot). If the user only enables the option "Use vertex cache", the issue doesn't appear (5th Screenshot).

There are also instances where certain textures (ex: Warrior of Light's Cape, Sephiroth's Hair) never appear on-screen until after the end of a battle when the character is stationary and speaking after a victory or defeat. The 6th Screenshot uses the five settings above and shows the example of the cape not being visible from the character's back. On the 7th Screenshot, the issue is still there while only using the option "Use vertex cache".

While the log spams the following text, enabling the option "Enable the shader implementation for the "Color Mask" (more accurate but slower)" causes most of the HUD to be invisible and the character models are surrounded by dark shadows (3rd Screenshot):
22:35:42  WARN       ge - GUI - Unimplemented Green color mask 0x7F

There are instances during gameplay where the following message may appear in the log:
22:36:35  WARN hle.sceGe_user - ffst_thread - hleGeListEnQueue can't enqueue duplicate list address 0x09C43580, stack 0x00000000

Ever since r3369 (9951ac1), there have been NOP issues in some games. For games in the Dissidia series, the issue will most likely appear after the end of a battle when the character is stationary and speaking after a victory or defeat. When the issue occurs, the screen will flash multiple times and the character animation will appear jerky. The game will crash in most instances when the issue appears and the user will have to close the emulator afterwards.

I tried to modify line 3485 in src/jpcsp/graphics/VideoEngine.java to a higher value such as 10000, but the issue still occurs in the game:
if (listCount > 2 && nopCount > 5000) {
It seems that most games will have no issues if the limit was raised to a much higher number such as 50000. Otherwise, the code may need to be improved in order to avoid this issue.
The check on the maximum number of NOPs has been disabled in 73583ad (Jan 31, 2018).
Also, some display issues seem to be related to OpenGL driver bugs. Could you please retest after updating your OpenGL driver?

Thank you!
Reference URL's