Post Reply 
Thread Rating:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Legend of heroes prophecy of moonlight witch problem
07-17-2021, 11:59 PM
Post: #8
RE: Legend of heroes prophecy of moonlight witch problem
You can use this to create a frame dump within PPSSPP:

This will create a file you, or others, can open that will re-render the scene. No game code is included, just the instructions (and textures/vertices) used in the scene. I consider is a "3D screenshot."

If this also triggers the issue, it's probably the easiest way to debug it since it will consistently trigger the exact same drawing behavior on every frame.

The second Ocean screenshot you gave seems to be "Poorest of the poor, yourself!". This screen typically has 1125 primitives per frame, and it looks like everything went well up through 1083/1125 of those primitives. The very next draw (the background of the dialog box) seems to have static in your screenshot.

This particular draw has:
* Alpha (in shader), stencil (outside shader), and depth (outside shader) testing
* Alpha test > 0 (implemented as discard if < 0.002 or sometimes optimized into blending, very common in PSP games)
* Stencil test ALWAYS 0x01 (depth and stencil pass: REPLACE stencil, otherwise KEEP existing zero, on impossible stencil fail ZERO)
* Depth test >= (but incoming depth is max value, so this should always pass)
* Standard alpha blending (blend func separate, very common in PSP games)
* Texturing from 32x16 texture (clamp S/T, 8-bit RGBA, nearest/nearest filtering)
* Color doubling (in shader)
* No 3D transform (this means a simpler shader, typically, commonly used for UI)
* No indexing, just direct verts in a triangle fan (might be optimized to another primitive type though for combining draws.)

Nothing about this draw looks unusual, these are pretty standard things you should see in many games, except the color doubling (which is seen most often in PS2 ports.)

Drawing the dialog box is all the game does until the end of the frame.

The text is interesting. That's the 1122 primitive. The texture that's bound has alpha transparency, so it's already the letters drawn in white, but it takes specific letters from the texture as a "letter palette" to draw the sentence. It's using standard blending here as well.

In both these draws, we'd be using dual source blending (SRC1) and separate blend funcs: RGB would use SRC_ALPHA and ONE_MINUS_SRC_ALPHA, but A will be ONE + ZERO (or possibly 1 / 255 for the first depending on if dual source is enabled.)

A lot of games should trigger dual source blending, but maybe that's related.

How does Star Ocean 1 look?

Find all posts by this user
Quote this message in a reply
Post Reply 

Messages In This Thread
RE: Legend of heroes prophecy of moonlight witch problem - [Unknown] - 07-17-2021 11:59 PM

Forum Jump: