Disable 1/3 Smart Smoothing

I think it says a lot about a company’s software team when the community starts to write code to fix holes in the system. I’m pretty pessimistic on their future now. :frowning:

1 Like

Hey, I have a great relationship with Pimax, they gave me a device free of charge, and I’ve been having a lot of fun writing code for it. It’s been a great learning opportunity for me (even though I already work in that industry, it’s presented a lot of fun and interesting challenges to me).

Please choose your words kindly when you make this type of statements because 1) they don’t reflect the reality (the things behind the scene that you don’t see), 2) they make me look poorly-intentioned, 3) nothing positive comes out of it.

Motion smoothing/reprojection is a divisive topic for literary every vendor. It’s a technology that I’ve concluded is impossible to implement in a way that will make everyone happy. It’s also a technology where users do an extremely poor job at managing their expectations and communicating their grievances in words that engineers can actually translate into actionable changes.

Having debugged some motion reprojection issues in WMR and some motion smoothing issues in my PimaxXR project: 9 times out of 10 I cannot understand and/or reproduce what the user tells me is happening. Every single issue is “soooo obvious” for the user, but believe me being on the other side, nothing is obvious.

This is why I asked earlier: what should happen if you can’t maintain 1/2? I understand there is an issue of 1/3 kicking in too early, and this is more likely the issue that needs to be addressed here. Adding more settings isn’t always the best way to solve issues: it creates more configurations to maintain (this is why all my motion smoothing related settings are hidden in a secret menu) and it confuses most users (typically the users who wouldn’t ever care for this setting). At this point the best people can do is collect specific scenarios where the wrong behavior is happening. The other thread started doing this, and it’s much more useful read there!

7 Likes

I appreciate your thoughtful response. Its excellent they sent you a device and are encouraging you to write your own code. It’s great that they are allowing the community the ability to write things that are for the betterment of everyone. My previous comments certainly did not mean to pull you and your experience into my own. However, I have to disagree based on the premise of my post. I reported the 1/3 smart smoothing issue back in 271 when it first started. Pimax’s project management team, despite seeing post after post on many different forums about it has elected not to address the issue.

What should happen is if there is a clear issue with the system, it should be fixed within a reasonable amount of time. In this specific case, you are providing (what I’m guessing is free) work to create the only viable workaround to a functional issue they created in their system and have failed to address. This is NOT an appropriate use of community-based development and honestly not fair to you. The smart smoothing feature is so core to their high end headset working, it could be considered barely usable without it depending on the games you play. The fact is that their HMD far outpaces the foundational hardware to drive it to its limits and smart smoothing and compulsive smooth is the only viable options to make it work. With the oncoming release of the crystal and 12k, this will be even more of an issue.

What should happen if a device can’t maintain 1/2? Like you, I think there is likely no perfect answer, but what is probably best, in particular in the niche market of high-end power users is to give a choice. Allow me to disable 1/3 smart smoothing. It’s not like there are 400 options in PiTool that all don’t make sense. This one is clearly a big deal to a lot of people and has gone completely unaddressed for what, 10 or 11 PiTool releases?

I actually agree with you on the user-reported issues. I work in a company that does end-user support and you are 100% right on your 9 out of 10 times there’s not enough information for anything actionable. In the case of 1/3 smart smoothing, this isn’t the case. In fact, I’ve reported it at least 4 times between support, reddit, and openMR. Support left me with no answer other than to go back to 270. Reddit, the thread was dropped by PimaxQuorra. This might be my second post here with the last going no where. I’m actually really excited to see the response this got and I’m excited to try out your PimaxXR system.

Please don’t take any of my annoyance with Pimax as a person hit against you or what you are doing. In fact, you are definitely helping them in more ways than they are likely to be thanking you for. I appreciate your work as well. I think if life were fair though, you wouldn’t have had to spend time writing code to fix an issue that Pimax should have fixed itself.

Thanks again!

3 Likes

looks like this in 283
image

not sure how it looked in 27x, from the dialog it implies as if you choose 1/2 it would use this and nothing else

1 Like

Well i will say this, 283 is the first version that the firmware other than 298 engineering test works for 90hz on my headset!

Yeah it’s just renaming of the compulsive smoothing I think.

I do hope the Pimax devs are still pursuing this and my bump in their tickets was polite.

I have not fully tested .283 or the pimax Client for the timing issues listed above and would like to this week for fun, but rather I assumed that because there was no changes to the GUI in Pitool that it wasn’t resolved overall.

I do think Pimax cares, I understand that there’s a cycle and a ton of testing that needs done and motion smoothing has it’s limits and it’s a knife-edge to get it just right.

I wish nothing more than that it is not ignored. Pimax has a ton of development I’m sure that must take priority such as tying in with Tobii and such. I really just would like to see them grow their development team, and retain the talent they have.

I appreciate Pimax’s efforts, but I also wish to ensure that this medium-level issue is not ignored.

Did you turn on Smart Smoothing and 1/2 at the same time?
image

I can’t tell you how much this has made things better for me. Thank you so much for letting me know about PimaxXR and thanks @mbucchia for doing the hard work to make it happen.

Yep the above doesn’t work to disable the 1:3 smart smoothing, unless something else changed in the last two versions of Pitool I currently stuck with .280. (there are two bugs with the newer versions - one is that the GUI doesn’t scale to the desktop scaling properly (I use 150%); the second is a glitch mentioned by @mbucchia that the menus get handled differently). They keep suggesting the above in the ticket as well. It misses the fact that if your frame rate is less than that of the 1/2HMD refresh rate, we want it to simply skip frames instead of go into 1:3 mode. It stays there too long and looks far worse. More importantly, Pitool currently seems to measure the timing wrong such that it induces the 1:3 mode way to early as frame rate decreases.

I can attest to it going to 1/3 mode even when you are no where close to 1/2 frames. I’ve run through benchmark to verify the frame rate never gets below 55fps (45fps is 1/2 for me) and yet still, it will suddenly drop to 30fps. Its not just bad its really badly misinterpreting low fps.

1 Like

Even on the 4090 this ‘feature’ kicks in way too early. I can now play many titles at 90hz, never dipping below 90fps. Turn on so-called ‘smart smoothing’ (just for testing) and it will drop all the way to 30, repeatedly, instead of staying at 45. It’s absolutely insane that Pimax has left this ‘feature’ in their software.

1 Like

I’m often on the pimax’s side, and I have read the comments from people who know what they’re talking about (like mbucchia), but I still can’t figure out why there is not a simple option to just choose only 1/2 and disable the 1/3, at least until they fix the chaotic behaviour of the algorithm.

@SpencerGrant Exactly. I hate it when the fps fluctuates anyway, so in the event I’m playing a title that would ever need to switch into 90/45 mode I would just limit it to 45 anyway and have the Smart Smoothing on all the time in that title. There were plenty of ways to limit the fps of titles before Pimax added it to PiTool directly. Ultimately I just want it to work the way it did, which was reasonably well. It’s so awful now.

1 Like

Can confirm. It´s sad. Just tried Project Cars 2 again and when SmartSmoothing kicks in it´s really a pain with 1/3 instead of 1/2. Was event trying to use 90hz instead of 75hz on my 8KX. In this way it´s really unusable.

@hammerhead_gal @PimaxQuorra Can you please check internally why the default setting can not be like with Meta, Valve Index or even Microsoft MR? With Headsets of these software stacks everything works much better with reagards to Smart Smoothing, ASW or Motion Reprojection.

As much as I really like my 8KX but this is driving me nuts.

I came to a point where I just want to use the headset and not work myself through more and more Tutorials. And even need to do this all over again when build a new PC.

Thanks for your support in advance. :slight_smile:

4 Likes

It’s about time the community makes a serious effort to bring this to light.

Please Pimax: don’t release another PiTool without a fix to motion smoothing and timings.

We understand there are cycles, testing, iterations, - please make this a primary effort for the base software. The demands of the new ecosystem are of course high priority as well - but your existing customers are asking that motion smoothing be fixed first. Otherwise we have to go all the way back to Pitool .270 to get smart smoothing working properly! Pitool .263 to get Oculus games working (at full GPU utilization)!

Please take my ticket #29542, which is now nearly 6 months old, as a genuine interest in making Pimax software as wonderful as the hardware!

Thank you to the community for any additional thoughts you may have to assist Pimax in hunting down the root cause - especially if you’re a programmer and have any ability to help. If a friend has a choice between buying a Crystal and a Varjo at this time, I would recommend Varjo as they are finally implementing motion smoothing (I hear).

An option to disable smart smoothing 1:3 is what’s needed, but the frame timings that are sent to the Motion Smoothing also have to be corrected. It’s a two-fold problem. See PimaxXR, which is open-source, to see what’s been done. It really works, but naturally it only works for games run in OpenXR - a SteamVR fix has even been proposed, but would be a work-around for what can be done more directly - and correctly - by PiTool.

Thanks Pimax!
You’re great!
Your community is great!
Your hardware is great!

You software is almost great!

4 Likes

It looks as if Motion Smoothing is only programmed correctly in 90hz mode.
Such that it shunts to 1:3 mode at <45FPS instead of when <37.5FPS as it should in 75hz mode.

So perhaps it’s limited to an error in calculation of 1:3 motion smoothing only in 75hz mode.
Please refer to my most recent post in the original thread here - @Heliosurge is this something that can be merged with the topic Pitool has Sub-Optimal Timing: Motion Smoothing (Originally Titled: Something changed with Pitool on version .271 and forward)

1 Like

Hello,

We have submitted this request to our Pitool team.
This should be their primary goal while developing the new patch.

3 Likes

Thanks. Looking forward for a fast solution :slight_smile:

Upon further testing it wasn’t the threshold that was incorrect. Man this is complicated. Rather it may relate to something more complicated.

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