Parallel Projections no longer fixing all titles

Parallel Projections is no longer completely fixing titles. Up until fairly recently it had worked 100% for me. However, there are newer titles that are not being completely fixed by turning PP on. As far as I can tell these are all Unreal Engine titles:
Hubris
Tracery of Fate
Kayak Mirage VR
I expect this will have to be fixed at the PiTool end of things, as I most devs probably don’t want to spend their time fixing issues that effect such a tiny number of users.

1 Like

Did you try older pitool versions?

@DJSlanr I have not tried older versions. I’ve found the Pimax ecosystem to be so fragile that I’m extremely wary of breaking it. Using older drivers isn’t any kind of a long-term solution in most cases anyway. Yes, it would be great if we could just pick a version of software that worked best for us and then use it for years or decades, but that’s just an unreality in the computing world. Any windows update or driver update might break older software, so staying at least reasonably current is generally a necessity.
So ultimately, IMO, it’s not really an issue of whether or not this problem exists in older PiTools or not, it’s still up to Pimax to fix it.
I will admit though, if I could use version on PiTool prior to the 1/3 smoothing rate implementation I would do so and just hope for the best. Unfortunately the very oldest version of PiTool that detects my HMD properly is also the very first revision that implemented that darn ‘feature.’

well it might interest you that the developer of PimaxXR has taken to task of making it so that we can nullify the 1:3 motion smoothing and has had success making a tweak that allows us to do that with any version of Pitool. It is expected that it will be a fixture of PimaxXR .3.2 which is yet to be released. You probably can get a copy of the tool which is a only slightly cumbersome to install via his discord located here Discord

Yes, I’ve got the current working version installed. No real experience with it to date other than a bit of testing, but sure hope it matures into something that works universally. (I don’t use PimaxXR, as I’ve had issues like Index controllers not working properly or just basic title incompatibility. So my OpenXR implementation is still the default STEAM VR.)

Unless you report issues to me, they’re not going to get fixed. AFAIK, all OpenXR games out there should be working with PimaxXR, and if not I would like to know about which ones do not work. Index Controllers initial release had issues, but should be working fine now, and next release has even more fixes.

1 Like

@mbucchia I’ve been keeping an eye on your project and will definitely keep it in mind to try again in the near future. Just trying to wait it out until things are in a generally completed state. I’ve got so much custom stuff going on with my game rig that even with a sector-clone of my boot drive I’m very cautious, as it’s always possible for something to slip past my notice until months later (and after I’ve already performed another sector-clone.) Pimax HMD, FFB racing SIM equipment, 2 different 3D displays, vorpX for older titles, and tons of tweaking for older titles as well; mods, texture packs, complete makeovers, custom ini tweaks, etc. Having things blow up on me (as one time happened with PiTool updates) and having to start from a clean Windows install can mean weeks and weeks (and weeks) of work to put things back in order. Totally my fault for customizing so much, I realize, but adding anything to my system when it’s in a good working state is a risk I’m often wary of taking. I’m not using the current vorpX betas, for example, even though I’m super excited about the new features, simply because I’m afraid of breaking everything I’ve done. I’ll probably wait for Ralf to release the non-beta version before installing. So my hesitancy to test OpenXR extensively is just my general wariness of tweaking a very fragile ecosystem. OpenXR doesn’t do anything to help the issues we are starting to see with PP not fixing everything, does it? That’s purely at the Pimax driver level, is it not?

The issues causing titles to not support canting properly is mostly because of poor design/poor documentation of OpenVR, and also poor developer education/understanding. For developers using OpenXR it’s nearly impossible to mess up rendering with canted displays because it’s a significantly better API. So things like “double vision” you should never see that again for apps developed with OpenXR. Unfortunately other issues like shadow rendering, environmental effects etc, often are the results of optimizations (like approximation of head gaze as “parallel for each eye”, to reduce the number of render passes) and these are harder to eliminate without making your application slower and impossible to correct via PP.

PP has nothing really magic to it I think, it just seems to be an advanced form of spatial reprojection implemented in pi_server and OpenXR or not has nothing to do with it. It’s meant to correct the perspective and requires over-rendering near the edges of the views. But if the details baked into the rendered scene are incorrect, there is nothing PP will be able to do.

Also there are huge misconception out there about “OpenComposite is OpenXR”, which also leads to notable misunderstanding. An app using OpenComposite is still using OpenVR, and therefore if not using it correctly (due to the challenges mentioned above, design/documentation/education), the issues with canted display will still be there. OpenComposite is NOT OpenXR.

3 Likes

@mbucchia Not good news then, overall, for any wide FOV HMD since, AFAIK, canted displays is required for that (outside of unrealistic solutions like gigantic lenses big enough to fill a large portion of a person’s FOV without being canted at all - although considering how big eyeglasses have become once again, maybe they could turn that into a fashion statement :joy:). Even the relatively low FOV Index has canted displays and uses some form of PP to correct for that. If this trend continues it won’t be long until HMDs with canted displays are simply unusable, as they can make a scene anywhere from “glaringly wrong” to “an eye-watering pain to look at.” PP has, in the past, definitely corrected for more than just the double vision issue however. Skyrim VR and Dirt Rally 2 are examples of titles that do not suffer from the double visions issue but have other internal rendering issues, most generally with shadows and lighting. Turning PP on does fix those. I suppose it’s possible Pimax has been sneaking game-specific fixes into the PiTool code which activate along with PP and is no longer doing so for recent titles?

interesting :joy:, but probably not.

Yeah, we can’t even get them to fix the 1/3 refresh smoothing disaster themselves, so not much chance they are going out of their way to fix anything else.

Seriously now, how should they interfere with the programming? Even if they wanted to.

1 Like

Software that changes the way games render, including all kinds of 3D scene tweaking to fix rendering issues, has been around for ages and ages. So fixing incorrect rendering outside the game’s own code is definitely possible. All of us who did stereoscopic gaming are familiar with the concept of profiles which include fixes on a per-title basis. A real PITA but a functional reality. Prior products include Tri-Def and Nvidia’s own 3D vision. Current products still perform similar functions. If title compatibility with canted-displays continues to worsen, and no other solution presents itself, then our only real recourse would be if Pimax started building similar profiles so that titles rendered properly.

That might still work for light and shadow, but I can still vividly remember @mbucchia attempts to get the culling in FS under control. It was not completely possible for him and could only be fixed directly in the game. But ok, I don’t know much about programming myself. I’m more the technician.

You are speaking about things that are alterable easily because they either go through the VR API (like PP, which only just alters angles passed to the the game) or though another layer (like DirectX API, think LOD bias for example). These can really easily be hooked up. Things like the MSFS culling issue that dstar mentioned are 100% baked into the code of the game and are self-contained outside of anything that is hookable. The culling issue was likely a single machine code instruction to change, but that instruction belongs to FlightSimulator.exe, and it’s not trivial to programmatically fix it. You have to analyze and reverse-engineer a very complex engine. Especially in a game that is updated all the time. Remember Luke Ross Pitool hex hack? It has to be redone every update (I mean find the new offsets). That’s big overhead. In the case of Pitool that change is quite adjacent to Direct3D API and therefore the methodology is somewhat repeatable from a version to another. In the case of MSFS where the bogus check is buried inside the game logic, this is far from a sustainable solution.

image

2 Likes

Ah, that’s too bad. I had never encountered an un-fixable title until very recently, and I’ve got a reasonably large VR title collection, so by my understanding PP was able to resolve any issues. Hence I thought this was something specific to newer titles. Bad assumption on my part. I guess we will have to hope that Devs start paying attention to the existence of canted displays - although if the Index itself didn’t do that I don’t know what would. There are cases in which the community creates mods (Subnautica) or figures out other work-arounds (Alyx), but that’s creating a lot of fragility - relying on so many independently-developed pieces to fall into place and to have ongoing support as other updates break the implemented fixes.

I loaded up Elite Dangerous yesterday after being away a couple of months or so. i can’t seem to get PP to work anymore. Anyone else have this issue with ED?

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.