pcsx2
pcsx2 copied to clipboard
[BUG]: The Cat in the Hat – a few minor graphical bugs
###Update: It looks like Bug 3 was actually a problem with Software mipmapping. Hardware mode correctly emulates the intended behavior. Moreover, Software mipmapping causes blurry background textures, e.g. a large sock in Wishy Washy.
Describe the Bug
Bug 1: What should be solid grass textures have conspicuous tears in them on the level Venus Cat Trap. This is present in all hardware renderers, but it's more pronounced if you upscale it.
Bug 2: What should be dithering on grass is instead a solid, flickering texture. In the screenshot below, look at the very upper right patch of grass and look for yellow-ish pixels in software mode. That's the dithering.
Bug 3: This one actually seems like it should be the other way around. Water droplets in certain areas (namely ones that cross white fog) create these black streaks across the screen in software mode but fail to do so in hardware mode.
Bug 4: ~~Sun doesn't show up in the background of Musical Madness.~~ Issue fixed; tested on the latest 1.7.4118.
~~Bug 5: Heat shimmer doesn't render in the furnace on Boiler Bonanza.~~ Not technically a bug; this is fixed by enabling Auto Flush.
Reproduction Steps
Bugs 1 and 2: Enter Venus Cat Trap. Get to where the Cat is in the screenshots (it's right at the beginning) and move around a bit until you hit the right spot with the hardware renderer active. It's easier to see with upscaling, but it's still present at native resolution.
Bug 3: This is most pronounced near the end of Venus Cat Trap near the goldfish statues (see below).
Bug 4: ~~Go where I am near the end of the Musical Madness stage with hardware renderer active. That, or go to the first area of the level Freezer Burn.~~ Issue fixed; tested on 1.7.4118.
~~Bug 5: Look at the in-level furnace on hardware renderer and without Auto Flush enabled.~~ Not technically a bug; this is fixed by enabling Auto Flush.
Expected Behavior
Bug 1: The grass texture should be solid.
Bug 2: The grass in the upper right corner should have some sort of dithering effect. Instead, the texture flickers every couple seconds.
Bug 3: Certain water droplets should create ugly, black lines over white fog.
Bug 4: The Sun should show up and have a glare as well. This same glitch occurs in the level Freezer Burn. The glare can be re-added by using the 'Preload Frame Data' hack, but the Sun itself remains absent.
~~Bug 5: There should be a wavy heat shimmer effect.~~ Not technically a bug; this is fixed by enabling Auto Flush.
PCSX2 Revision
1.7.2351
Operating System
Windows 10 (64bit)
CPU
Ryzen 1700
GPU
GTX 1070
GS Settings
Default settings. Tried on all hardware renderers.
Emulation Settings
- MTVU enabled
GS Window Screenshots
Bug 1:
##Software mode
##Hardware mode (native)
##Hardware mode (4x native)
Bug 2:
##Software mode
##Hardware mode
Bug 3:
##Software mode
##Hardware mode (upscaled, but still present in native)
Bug 4:
##Software mode
##Hardware mode
###Bug 5: (Note: not technically a bug; this is fixed by enabling Auto Flush.) The differences are pretty small when viewed in an image; it's in motion where it becomes most apparent something's wrong.
##Software Mode
##Hardware mode
Logs & Dumps
Bug 1 and 2: gs_20220209115349.gs.zip
Both bugs were present in the area where these GS dumps were made, so it should contain information for both.
Bug 3: gs_20220209134000.gs.zip
Bug 4: gs_20220209140832.gs.zip
Bug 5: gs_20220209191559.gs.zip (Note: not technically a bug; this is fixed by enabling Auto Flush.)
how to make gs dump
You can use Shift + F8 for a single-frame dump or Ctrl + Shift + F8 for multiple frames, but you should be fine with Shift + F8 in most cases.
Can this be re tested on latest dev, unable to reproduce issues 1,2,3. For issue 4 Preload Frame Data hack helps a bit so it should be added in gamedb.
Can this be re tested on latest dev, unable to reproduce issues 1,2,3. For issue 4 Preload Frame Data hack helps a bit so it should be added in gamedb.
I'm going to be retesting soon, so hopefully some of these will have worked themselves out or already be in the gameDB.
Hopefully you don't need the preload hack anymore, it should be automatic if it's actually needed.
The game does indeed now render the Sun correctly on that level! I wonder if that issue with the heat shimmer is fixed automatically as well! If it is, then not only is this game 100% definitively better on default hardware settings than it is on software, but in fact there shouldn't exist any perceptible issues on hardware mode, and the game could be categorized as Perfect on hardware renderer. I seriously scoured this entire game from top to bottom last year looking for issues (I probably switched between hardware and software mode a minimum 100 times in every level and in the hub), and these five were all I could find. The first three seem to actually be issues with software rendering, the fourth one is fixed, and then we'll see about the fifth one!
Bad news: the heat shimmer works correctly now, which would've made this game literally flawless on hardware mode. However, #6784 (release 3176) introduces a graphical regression.
Bad news: the heat shimmer works correctly now, which would've made this game literally flawless on hardware mode. However, #6784 (release 3176) introduces a graphical regression.
You can set blending to Full in the meantime.
@TheTechnician27 any other remaining issues here?
@lightningterror Yes, I've found that (for example, see bug 1) software's mipmapping dramatically decreases the quality of textures in this game compared to hardware renderer (default settings). I was able to show this last year, and I could get back to that level and show it again once I have some spare time. It's visible in other levels too, but there's one part where it's so undeniably obvious that it's the best place for a screenshot.
If the quality of textures is decreased in SW, then mipmapping should be set in the GameDB to match SW behavior (hardware accuracy).
@MrCK1 I went ahead and checked, and the issue is still there. Here is a single-frame GS dump showing the issue for context (look specifically at the sock in the back left). Dr. Seuss' The Cat in the Hat_SLUS-20797_20230806172342.zip
mipmapping basic matches SW
im gonna bet SW matches real hardware
This is how it looks on real hardware, looks pretty identical to me.
Thanks for confirming, @refractionpcsx2. I'll cross out Bug 1 and Bug 2. I wonder if this is a LoD thing, since I've noticed HW mode often has a very slightly higher LoD than SW, maybe owing to some sort of floating point issue where the camera is just slightly closer in HW(?). For Bug 3, I'll go ahead and get a GS dump so I can hopefully close out this issue. Otherwise, having tested it pretty extensively on and off over the last couple years, I can say with a good deal of confidence that the game is emulated essentially perfectly (barring that HW LoD/mipmapping thing).
It's possible it's a mipmap bug in software, as it isn't without problems, but yeah I would need a GS dump which does show this to confirm it.
Happy coincidence @refractionpcsx2: I'm no longer seeing this issue, and in fact the rain on SW looks fuller than HW Dr. Seuss' The Cat in the Hat_SLUS-20797_202308070.zip (in a good way) and no longer creates those weird black lines seen in the screenshot. I'll leave a few single-frame GS dumps to show this. At the very least, I'm convinced SW mode runs this game 100% perfectly now, and HW mode is so close to perfect that it may as well be (the only issues I can see are: a select few textures are slightly better on HW mode, and the rain might be slightly different, but I might be seeing it wrong).
@TheTechnician27 i/you can add mipmapp though the gamedb for HW mode to fix some/all of the remining HW issues
@Mrlinkwii Once that happens and I scour it for one more playthrough, do you think the game could be put on the list of perfect compatability? The game is: very short (taking maybe 6 hours to 100% complete and way less otherwise), very linear (2.5D with fixed camera angles), and pretty well-known to me, so if visual bugs exist, I should have no problem finding them through generous usage of the F9 key throughout my playthrough.
Also, man, I know it's done for the sake of accuracy which is more important for an emulator at the end of the day, but that severely decreased LoD for SW is going to be painful. For instance, the wall in the background here becomes a blurry mess on SW compared to HW. Oh well, though; I can always change it back manually in my own settings.
@TheTechnician27 any compat is done though the forums , your free to make a compat report on the forum and it will be updated then in the gamedb/website
Interestingly, I just noticed a specific case where the SW renderer does considerably better with long-distance texture rendering compared to HW.
If you take a look at the house farthest in the background (near the hat in the hand), the siding is much cleaner with SW mode than HW.
@refractionpcsx2 I think the SW renderer and HW renderer might actually be rendering the background polygons at slightly different distances (ironically, though, I think HW is simultaneously rendering them farther and in greater detail). If you look at the top left sign with the striped hat (as well as the "GAS" sign), you can see the polygons clipping differently depending on which renderer is used.
the last two dumps look identical in hw and sw with mipmaps full + trilinear (which is what SW uses) the slight differences in geometry is just the difference in how the GPU renders polys