V6 Windows UI drawing code slows down Viewport


#1

This is a bit hard to explain, but stay with me, as i saw this now on two (different) machines with different software packages:

This affects windows 10, latest updates, latest drivers - one machine gt650m another gtx 750

Problem:
While viewport rotation is smooth, every kind of interaction with geometry (move, rotate, grab) is choppy / slow.

Cause:
The Status bar updates the Cplane / World Coordinates live at a high rate, this interferes with the viewport drawing slowing it down - approx 20fps instead of 60.

Solution:
Hiding the Status bar ‘solves’ the problem.

I saw the same problem on 3ds max 2018 with exactly the same symptoms - once i hide every numeric field that could update during interactions, the lag is gone.
Furthermore it can be worsened by the mouse you are using: with intellimouse explorer (the new one) the lag is more prominent, i guess the polling rate of the mouse is higher then with a standard 10€ mouse…

Again, this is on two machines with different cpus, gpus and even software packages. I didnt see it on newer gpus - gtx 1070 had no problems so far…

I guess either microsoft or nvidia are to blame, but i don’t think they will fix that anytime soon.
My wish would be that - if more people can confirm this bug - the status bar drawing gets a small delay.

The properties panel for the current viewport has this already - the numbers update a few times per second, and there is no problem.


(Nathan 'jesterKing' Letwory) #2

You could try turning off all useless graphical enhancements the Windows desktop environment offers, especially if your system uses that GPU also to drive the monitor it can make a difference. All those (IMO useless) graphical effects take up GPU memory and power that could be more useful for actual work like creating 3d models in Rhino. A card like GTX 1070 has much more power to drive both usages at the same time (but IMO it is even then a Good Idea to turn off all those graphical effects).

Control Panel > System and Security > System > Advanced system settings > Advanced > Performance Settings. I left “thumbnails instead of icons” as the only concession, since that can actually be useful.

Let me know if this gives better performance for your cards.


#3

turning off most of these is the first thing i do after i install windows ; )
I had a custom font renderer installed (mactype) - turning it off helped a lot.

Still i could swear - if you try and drag (shake) an object in the viewport, and than go fullscreen and try the same thing, it will look / feel more fluid. (fullscreen is the fastest way to hide the status bar temporarily)

Basically i suspect the the whole WDDM thing from microsoft is half broken since the beginning, and its cracks show now and then…

e.g. the status bar values are still flickering since 10 years, as are most of the panels in Rhino - again not only rhino, but everyone who relies on windows ui tech… so most of autodesk etc.

As we are stuck now with it for the next years (Eto.Forms), it would be really nice if mcneel could have a look if this can be improved…
thanks!


(Nathan 'jesterKing' Letwory) #4

I’m atm not the best person to test fluidness of UI, since I work over a mobile connection with VNC - everything is slow anyway :wink:

That said, I think you’ll first have to take this up with the Mactype people, since based on your own account it appears to affect performance in more applications.

Maybe some other dev has something useful to say about this, @stevebaer, @dale? (Or whoever knows most about our UI MFC code…)


(Steve Baer) #5

I would definitely stay away from tools like this if you are seeing problems in applications. These utilities look like they load into every application and alter how they perform.