emoose / OutRun2006Tweaks

Turning and spinning and spinning and turning, woah!
MIT License
356 stars 0 forks source link

[Bug]: DrawDistanceIncrease issue reports #97

Open emoose opened 3 months ago

emoose commented 3 months ago

The new DrawDistanceIncrease tweak lets us bump up the draw distance a lot, helping with reducing pop-ins and some of the weird flashing models that show up, changing views like these:

OR2006C2C_VuocFl2SKR OR2006C2C_RTbAOTpkd2

Into these:

OR2006C2C_QGtn97DyrS OR2006C2C_ILmmaYvIiI

Sadly with the way the games scenes are setup pushing the distance too far can cause some LOD models to appear much earlier than they should, eg. in most levels where you can get a peek at the earlier section of a track they'd usually use a LOD version of the track to show it, so if we've extended the draw distance up to that spot the LOD version might get drawn in place of the actual model...

If you notice any issues when using DrawDistanceIncrease please report them here (w/ a screenshot & the level name), sometimes these can be very obvious like a ugly LOD mass appearing in the middle of the track, and sometimes it can be very subtle such as railings/bushes disappearing...

Hoping to add some kind of filter list so we could skip drawing those LOD models when we're extending the distance out, might take some work though, but hopefully if we can get all the LODs added to it we should be able to push things up to 1024+ without issues. (if anyone wants to test with distance at 1024 and report the issues here it'd help a lot)


The draw distance can be changed during gameplay if you want to try comparing some spots, this will require Cheat Engine & extracting both dinput8.dll + dinput8.pdb into game folder, then you should be able to add dinput8.Settings::DrawDistanceIncrease to cheat engine (4 bytes) and change it from there (DrawDistance has to be set above 0 in the INI for this to work though)

italospain commented 3 months ago

Hi emoose

did you know if you drive time attack and you select only 1 Stage there is no popin like in online arcade (xbox) even without your mod,

Tenome commented 3 months ago

Ah, I was just taking screenshots and was fighting the pop-in. Wish I checked this sooner lol. Thanks, I'll play on 1024 and see if I notice anything. Does this also apply to sprites that are oriented towards the road that disappear when viewed at other angles? The Notre Dame's spire on Metropolis, for example.

Tenome commented 3 months ago

Hi emoose

did you know if you drive time attack and you select only 1 Stage there is no popin like in online arcade (xbox) even without your mod,

This doesn't seem to be 100% consistent. You can easily test this by going to Castle Walls and then driving very slowly around the first couple of corners. You'll see the walls in the next area pop in.

Tenome commented 3 months ago

At Casino Town, at the underpass transition, the wall (bottom of building above it?) pops in when you get close. Increase and Behind are both set to 32.

https://streamable.com/p807pd

16

https://streamable.com/alqb8g

Doesn't occur at 0.

Sonic-TV commented 3 months ago

image transition to legend pops in when you gets close, Increase is set to 16 and 24 and it provides same results.

Tenome commented 2 months ago

I noticed that the vertical cables on the Golden Gate bridge require an unusually high drawdistance number to not pop-in (at least 90). Even at the max recommended, 32, the cables will be completely invisible until you're a few feet away from them.

Of course, setting draw distance to 90 introduces other problems as expected, but it's weird that this one area is so resistant to it.

Tenome commented 2 months ago

DrawDistanceIncrease = 16, the banners at the end of Tulip have noticeable, sudden pop-in even if you're almost right under it. Another object for the exclusion list?

https://streamable.com/c3cypo

Tenome commented 2 months ago

DrawDistanceIncrease = 4, the clouds on highlands have a bit of pop-in.

https://streamable.com/nz407y

DrawDistanceIncrease = 8, seems to only have very slight almost imperceptible pop-in.

https://streamable.com/j83d2v

Tenome commented 2 months ago

Canyon has some noticeable pop-in with rocks and foliage in this one spot. DrawDistanceIncrease = 8. Btw Streamable videos only last for 90 days on a free account, so if you plan on working on this later and want these videos for reference, I'd save them.

https://streamable.com/bb0cy8

Tenome commented 1 month ago

Back draw distance set to 64, so I guess that's around the upper limit before things start breaking. This only occurred on Metropolis that I've noticed so far.

10420522560658604032_20241004222222_1

10420522560658604032_20241004222233_1

Tenome commented 1 month ago

The buildings straight ahead of me have bad pop-in on Palm Beach. Forward Distance set to 32.

10420522560658604032_20241005171637_1

Tenome commented 3 weeks ago

@emoose Have you had any luck with adding textures to the exclusion list? I think the stage transitions are the most important, since those pop up at even very low draw distance values. Legend, one of the forest stages (think it was Big Forest), the tunnel in Metro, etc.

adrianflk commented 1 week ago

Hi. Is anyone experiencing, or has experienced, performance issues (microstuttering, occasional stronger stutters) with DrawDistanceIncrease enabled? Even at relatively low values such as DrawDistanceIncrease = 6, or DrawDistanceIncrease = 4?

I did more than an hour of testing, racing through the same routes with the same cars multiple times, to make sure it wasn't something else on my end or some other setting, however with DrawDistanceIncrease = 0 these performance issues never happen. Definitely seems to be the culprit. My OutRun2006Tweaks.ini is pretty much vanilla otherwise (only other change I had made was changing ReflectionResolution = 2048 to 1024, since 1024 looks good enough for me and it reduced GPU usage from an average of 15% to 9%).

Some stages are obviously more prone to these performance issues than others. From my testing, Palm Beach, Deep Lake, Desert, Sunny Beach, Bay Area, appear to be the worst.

Later I tried changing SingleCoreAffinity = true to false. This improved things a lot and gets rid of most stuttering when DrawDistanceIncrease is enabled (despite the warnings about crashing/freezing issues in the .ini, it didn't cause any stability issues on my system). There were still a few occasional microstutters, but they become rarer. Later I changed FramerateUnlockExperimental = true to false, and this also seemed to reduce stutters a bit further (not an issue for me since I'm playing at 60 fps). With these two changes I got rid of almost all stuttering.

Keep in mind, none of these changes are necessary for a stutter free gameplay with DrawDistanceIncrease = 0 though. Is this setting supposed to be so performance heavy? (I'm very sensitive to microstuttering issues so it might be possible some people don't even notice it).

My specs are Core i7 10700K + 64 GB DDR4 + RTX 2060 Super, on Windows 10. Not top of the shelf hardware but should be able to run things well.

Zoukambada commented 2 days ago

Every time I go from Milky Way to SkyCrapers before it turns into SkyCrapers, these Trees block my vision. image To fix this, I changed "DrawDistanceIncrease = 4" to "DrawDistanceIncrease = 1" and it seems to fix this issue.