Windows Tooltips kill FPS in my Windowed 3D application?

Hi all.

For a while now, I've noticed on my machine (and others) that when some WINDOWED 3D applications/games are running on Windows (XP/2000 etc), the framerate can drop from 80+ FPS to 5-10FPS if a standard Windows "tooltip" happens to over-lap the 3D window

I hope that made sense! The reason it is an issue is because my application runs in a Maximized (not Fullscreen) window directly ontop of the windows desktop (effectively replacing it). As tooltips are a plenty around the taskbar area, tooltips are prone to poping up (well, fading up and back) all the time.

Now for the kicker! I don't think it's just my PC because I've tried some other windowed 3D apps that are not susceptible to this frame-drop. They seem to run just as fast even when a tooltip is positioned on-top of the 3D window Trouble is, I dunno how the 3D apps were made, but I'm pretty sure they're using DirectX.

Someone suggested this is due to GDI being rendered ontop of DirectX If so, is there a trick to making my 3D app "play nicely" with GDI

Any ideas would be appreciated. Thanx


Answer this question

Windows Tooltips kill FPS in my Windowed 3D application?

  • Jakkals

    Thank you all for your advice! I'll go and have a play

  • J van Rhyn

    I'm guessing it's the same problem as in this topic over here on GameDev. As I said over there, it's probably an issue with your app monopolizing the GPU, so that Windows tooltips (and other 'heavy' graphical components with shadows) have a hard time getting rendered, which leads to this problem.

    I'd still like to hear for about it from the "horse's mouth", but a way I found to fix this in MDX is to either call sleep on the rendering thread for a few millisecs after rendering or only to render once when the app has become idle (instead of in an infinite loop). Another cleaner way might be to use a kind of timer to send repaint messages to the control you're rendering on.

    At any rate, you can verify if it are indeed the tooltip shadows by turning them off in Config panel > Display > Appearance > Effects >Show shadows checkbox. This seemed to solve the prob for me, so I guess that's an indication that my theory is somewhat sound



  • Mark Rietman

    From that gamedev thread you can find a discussion on directx-l

    http://discuss.microsoft.com/SCRIPTS/WA-MSD.EXE A1=ind0404b&L=directxdev&X=150FE96A68942F0D35#19

    Nice catch Rim



  • VladSoft

    Are you using the DX framework It caps the framerate when it doesn't have focus. Are the tooltips taking focus away



  • Windows Tooltips kill FPS in my Windowed 3D application?