Jump to content
LaunchBox Community Forums

3d box model stutterring rotation


Retrofrogg

Recommended Posts

17 minutes ago, Mock said:

Investigating Launchbox's use of Chromium Embedded Framework (CEF)

Feature is using WPF's built in 3D modeling solutions which (when possible) leverages DirectX. CEF isn't used at all in this process. I'd imagine the issue is from how the mouse interacts with the control on the device and one of the mouse events isn't making it through do to a priority call in the CPU/UI events. Would also explain why using the controller doesn't have the same issue since at that point the WPF input processing is removed from the equation entirely. Unfortunately because of that there may not be a ton we can do. We can't change how WPF operates and potentially culls events.

Link to comment
Share on other sites

I have done tests with out a mouse. As well as different mice on Bluetooth, usb-c and wireless transmitter. Still had the same issue. But on this same setup I have experienced. It can get working, but is very rare as It typical requires having launchbox open longer then normal and maybe is in a platform not used. This is not certain that it is related to that part, as I am unable to reproduce a metode to get it working

Link to comment
Share on other sites

46 minutes ago, Mock said:

I have done tests with out a mouse.

How? What I'm referring to is the actual WPF functionality that processes mouse input. Even a mouse virtualized via RDP or apps calling Win32 still go through that same call stack. Best way to confirm it's not that is attempting to rotate the box with an attached controller. LB Options set to only accept input from that specific controller (not the "All Controllers" option) and then use that controller to rotate the box. If the box doesn't stutter during that test it's likely caused by the input code or some interaction with it.

Link to comment
Share on other sites

Just now, C-Beats said:

How? What I'm referring to is the actual WPF functionality that processes mouse input. Even a mouse virtualized via RDP or apps calling Win32 still go through that same call stack. Best way to confirm it's not that is attempting to rotate the box with an attached controller. LB Options set to only accept input from that specific controller (not the "All Controllers" option) and then use that controller to rotate the box. If the box doesn't stutter during that test it's likely caused by the input code or some interaction with it.

What i mean by not using the mouse, is installing software on android to virtually use the mouse, so its as different as i can be from the normal mouse input. For the WPF part i was looking into the case if it has anything to do with .net core 6 or 3. or the interface was using webgl that could be used when making a gui. i have no idea if this is the case, but wanted to try different thing if this issue only relates to very few cases. i have now direct knowledge of how the 3D rotation is made and what components are in play. i am just a user and have wanted to call up some devs to look into this issue that has been ongoing for so long.

Link to comment
Share on other sites

Over the last few days I've noticed a number of incidents of the problem appearing and disappearing. I've been going through my games for a particular platform, deleting some images and downloading others. I wonder if that has anything to do with it....

Link to comment
Share on other sites

Posted (edited)

There is also been a thread about this on the Bitbucket support pages - apparently the devs have that ticket "on follow". However, we were advised by @UnbrokenSoftwareLLC on YouTube that we would be better to take forward this issue here on the support forums, as our issue is seen as a user problem which may be specific to a build, rather than a "crash report". There has also already been some input from the devs (@C-Beats) above. 

So I thought it would be helpful to try and summarise and clarify where we're at with this:

The problem: jerky or stuttering rotation of the 3D model box in Launchbox. By this I mean that when rotating the box with the mouse (either in the carousel or with the box maximised to fullscreen), the rotation pauses for about around 1 second per every 3 seconds of continual rotation. This problem also happens when panning the box with the mouse (dragging it up and down or side to side when zoomed in). Another problem which may be associated is that when rotating the box horizontally with the mouse, the box tends to rotate in the vertical plane also. It is extremely difficult to restrict the rotation to the horizontal plane only, requiring significant vertical movement of the mouse to compensate - you almost have to move the mouse diagonally. @kobaturtle noted this issue also earlier in this thread. 

I did not find this problem in BigBox - however, in BigBox I rotate the box using the keyboard and so it rotates at a standard rate, rather than free rotation. @kobaturtle did however state that he noticed the same problem in BigBox, though @Mock said BigBox is fine, with mouse or controller (I didn't know you can use a mouse in BigBox). I also noticed that when using the Thirdscreen plugin in Launchbox (which can show the 3D box on a separate screen), manual rotation of the box there using the mouse gives the same issue. This plugin can also have the 3D box rotate automatically in the separate window - this rotation is smooth, though I noticed that when I move a window around on the other monitor, the same problem manifests - the automatic box rotation stutters. I feel like this might be a significant clue as it shows the problem appearing when the box is not directly being interfered with.

A number of users (as per this thread and the Bitbucket thread) are experiencing this problem. There have been discussions and a number of things tried:

1. Mouse or controller issues: the majority of the troubleshooting efforts have focused on issues to do with the mouse. @kobaturtle noted that the problem seemed to be related to the mouse DPI, occuring more often with a faster DPI. He said that the problem happened when using his Razer mouse, though that when using an integrated trackpad on a keyboard, the problem wasn't there. He noted that reducing the polling rate in the Razer app led to smoother rotation; he reported that 125Hz polling was smooth, though that anything higher led to the problem. I changed the Windows "pointer speed" setting but this had no effect. I noted that my Razer mouse was using an average polling rate of 996Hz.

@C-Beats mentioned that higher polling rates could cause issues and also that the proper Razer software has to be installed. I reduced the polling rate in the Razer app to 125Hz - this did seem to affect the problem but only reduced it slightly. @C-Beats felt that the primary problem therefore likely wasn't the polling. @Mock tried using different mice (via bluetooth, USB-C and wireless adapter) as well as a virtual mouse via an Android app - but the problem remained. @C-Beats wondered if the issue might be related to how the mouse interacts with the "control on the device", and if one of the mouse events maybe isn't making it through due to a "priority call in the CPU/UI events". He noted that the 3D rotation feature uses WPF's (Windows Presentation Foundation) built-in 3D modelling, which where possible leverages DirectX. Another thing suggested is that the "use all controllers" Launchbox settings option is unchecked - I have made sure this is the case, and the problem persists. @Mock noted that the problem doesn't occur when using an Xbox controller, or at least that the problem is still there but to a lesser degree. 

2. Another hardware issue: @kobaturtle and I both use a Razer mouse. However, as mentioned above a number of different mice have been tried so the problem doesn't seem specific to Razer. I also tried with a different standard optical wired mouse - the problem was again somewhat lessened, but otherwise remained. I tried an Apple Magic Trackpad - the problem is there, but it occurs around 50-75% less frequently - i.e. maybe every 6 seconds of rotation instead of every 3. I think that all those who have contributed to these threads are also using an Nvidia graphics card (I do, and so does @SymmeTrey, @Mock and @kobaturtle). So could this be a factor? @Mock has tried messing with the NVidia settings. Is Launchbox actually using hardware 3D for the 3D box - or could the problem be that it isn't? 

3. The intermittency of the problem: one reason this problem has been difficult to diagnose is because it is seemingly intermittent. I would say that the problem is present for most of the time, though quite often I can rotate a 3D box and notice that the problem is not there. Others have noted this too. This has at times led me to make erroneous conclusions about the problem, thinking that a certain change has fixed the problem, only for it to come back later. I suppose it is likely that there is something happening to cause the problem each time - but no-one has been able to find anything reproducible. I've noticed this when working within Launchbox - editing games, adding/removing images etc. @Mock has noticed this as well. It seems that the problem can disappear, but that a restart of Launchbox can bring it back. I'm continuing to monitor this carefully, to see if there is anything in particular that makes the problem appear or disappear. 

4. Other things tried: @Mock has spent many hours trying other things (as per a previous post; some beyond my understanding) including a fresh install of Launchbox, trying different versions of Launchbox, trying different monitors, trying different Windows compatibility levels, stopping Windows processes - but to no avail. He also wondered if it might be to do with the Launchbox cache, as he felt the problem was less when Launchbox had just been started (I have not noticed this). Could it be related to Launchbox's automated backups, or memory when caching/backing up? @Mock also tried a new Windows installation (no change), and tried out some online 3D modelling stuff (which worked fine). 

Although I am fairly proficient with Windows, I don't work in IT nor do I have any knowledge of coding or how Windows works under the hood. I don't know how the 3D box is generated or how the rotation works (other than what is mentioned above).

Hopefully this summary will provide the devs with some new insights; @C-Beats / @faeran / @Jason Carr - any thoughts on this, or further troubleshooting options?

Edited by Retrofrogg
Link to comment
Share on other sites

Please keep the data going in the ticket. It is easier to track and there is no need for it in 2 places. Yes I know you were directed to post on forum, but they were probably not aware a ticket already existed with plenty of data. The issue is unique enough the BitBucket ticket will work. 

You can leave the existing thread up as a reference in the ticket. I have added a link to this thread in the original BitBucket ticket. 

 

Any new users experiencing this issue can post on the ticket:

https://bitbucket.org/jasondavidcarr/launchbox/issues/7747/rotating-freeze-in-new-3d-cover-display-in

Link to comment
Share on other sites

Happy to continue this thread on the Bitbucket pages @Retro808. Yes, as you say we were told (by UnbrokenSoftwareLLC on YouTube) that we should progress the issue here rather than on Bitbucket, hence my summary. We have also had much more dev input on this thread than on the Bitbucket. However, I have pasted the summary onto Bitbucket also and hopefully we can make some headway there. 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...