1. osu! forums
  2. osu!
  3. Development
posted
Most players who play in windowed mode experience input delay. An easy fix for this is to disable desktop composition, but since Windows 8 there is no simple way of doing that. Since I switched from full-screen to windowed mode I wrote a simple tool with Java to disable/enable desktop composition, so I thought I'll share this in-case anyone else needs this.

Download: http://uppit.com/rhpxl4wfz64z/compdisabler.jar
You will need Java (JRE 7) to run this. (You most likely have it already, but if not, you can download it here)

After running the jar file, a red icon will appear in your system tray: http://i.imgur.com/aC0aAqv.png
To disable and enable desktop composition press: SHIFT + ALT + D
You can also add the application into Windows start-up by right-clicking the icon and selecting "Add to startup".

I haven't tested this anywhere besides my own computer so it's high chance that it will not work for everyone. If that's the case I'll try to fix things up when I have time.

UPDATE

Since some people were having problems and this was pretty poorly written I made a batch version of composition disabler.

Download: https://www.mediafire.com/?dnjf3fb0b1nittg

You may have to enter your Computer's User password when trying to enable windows composition. Confirmed to work on Windows 8.1 (need someone to test this on Windows 10).
posted
Thank you for this, it works perfectly but you must be updated to the latest JRE version (I wasn't and it didn't work as intended). It would be great if Microsoft stopped screwing their gamers because at this rate the tides are going to change pretty drastically when the Steambox hits.
posted

smoogipooo wrote:

Thank you for this, it works perfectly but you must be updated to the latest JRE version (I wasn't and it didn't work as intended). It would be great if Microsoft stopped screwing their gamers because at this rate the tides are going to change pretty drastically when the Steambox hits.
Steambox is linux, though. And we will lose compatibility to most older games.
posted

Avail wrote:

smoogipooo wrote:

Thank you for this, it works perfectly but you must be updated to the latest JRE version (I wasn't and it didn't work as intended). It would be great if Microsoft stopped screwing their gamers because at this rate the tides are going to change pretty drastically when the Steambox hits.
Steambox is linux, though. And we will lose compatibility to most older games.
If anything, older games may have better compatibility on Linux than newer ones; but that's probably outside this thread's discussion :p

I'm not on Windows 8 currently, but is there a source file available or any definition as to what this really does?
posted

Avail wrote:

smoogipooo wrote:

Thank you for this, it works perfectly but you must be updated to the latest JRE version (I wasn't and it didn't work as intended). It would be great if Microsoft stopped screwing their gamers because at this rate the tides are going to change pretty drastically when the Steambox hits.
Steambox is linux, though. And we will lose compatibility to most older games.
Yes, I was well aware that the Steambox will run on Linux. Maybe my post didn't quite get my intended message across - at this rate newer games released after Steambox will probably be released on Linux as the target system rather than Windows to gain the extra users from Linux. Microsoft doesn't realize how much of their consumer-base are gamers and seem to be screwing us more at every corner possible.

Espionage724 wrote:

Avail wrote:

Steambox is linux, though. And we will lose compatibility to most older games.
If anything, older games may have better compatibility on Linux than newer ones; but that's probably outside this thread's discussion :p

I'm not on Windows 8 currently, but is there a source file available or any definition as to what this really does?
.jar files can be de-compiled using various tools like this one. I myself looked at the code using that tool and all it does is end the explorer.exe and dwm.exe tasks and suspend winlogon.exe, essentially disabling desktop composition. Or the reverse when the hotkey is pressed a second time. It does this through two batch files in the resources (you don't even need the decompiler to extract this, just grab 7z and open the .jar as an archive, you'll find them in the resources folder).
It should be noted that killing the explorer.exe and dwm.exe processes also disables your taskbar, desktop and desktop background.
posted
Then this thing is broken on 8.1 :p It did none of those things.
posted
Everyone tells me how smooth it is to play with composition disabled now i get to see so for myself.
posted
From what I've tested previously, windowed mode without desktop composition on Windows 8/8.1 still has more input latency compared to full-screen. It's certainly an improvement over regular windowed mode, but it's still not quite there.
posted

YayMii wrote:

From what I've tested previously, windowed mode without desktop composition on Windows 8/8.1 still has more input latency compared to full-screen. It's certainly an improvement over regular windowed mode, but it's still not quite there.
As previous full-screen user, I can confirm that I don't feel any input lag with desktop composition disabled. I think it removes it completely or it is barely noticeable.

Avail wrote:

Then this thing is broken on 8.1 :p It did none of those things.
Will look into it later today.
posted
this is awesome! :D
posted
It worked as mentioned.. However:

Most of my songs got deleted (it reseted all my Osu! settings also), my java stopped working correctly after this (I had to reinstall, already had the new version) and shift+alt+D did not "return" dwm - I had to reboot everytime with reset.

No offense, it is a great idea to have this and playing with small window instead of fullscreen was enjoyable! :)
posted


You can emulate the windowed feel while still retaining the fullscreen benefits. Reduce your tablet area if you feel it's too much movement while fullscreen.

While windowed you have to still ping through the windows environment in order to get the draw buffers to be used. While fullscreen the game has complete access to the front and back buffers. If while in the windowed environment and there are any issues with other programs or windows itself the game will get latency cast over it.

There really is no reason to play windowed unless you enjoy multitasking. If you're getting the hang time for switching, then your display timing methods are mismatched from the game being fullscreen to your usual desktop environment.

Disabling desktop composition while in windows 8 can make it very unstable (I've ventured in finding this method). It does make a difference, but again there's no reason to really play the game in a windowed format.
posted

Dexus wrote:


You can emulate the windowed feel while still retaining the fullscreen benefits. Reduce your tablet area if you feel it's too much movement while fullscreen.
No thanks.
It's a pain to change the resolution all the time - as a previous 1024x768 osu! resolution on 1280x1024 (non scaled) screen resolution on a 1920x1080 screen user, I know perfectly well how much of a pain it becomes to do this whenever you feel like using that screen for anything besides osu!.

Dexus wrote:

There really is no reason to play windowed unless you enjoy multitasking. If you're getting the hang time for switching, then your display timing methods are mismatched from the game being fullscreen to your usual desktop environment.
Yes there is a reason for this, and I stated some of it above. Your implied assumption that I and possibly many other players spend several consecutive hours a day on osu! is wrong. But that does not mean that in the small amount of time we play we don't care about the latency and are willing to accept it. Using your method every 30 minutes to 1 hour is going to prove very tiring and annoying.

Heienkatso wrote:

Disabling desktop composition while in windows 8 can make it very unstable (I've ventured in finding this method). It does make a difference, but again there's no reason to really play the game in a windowed format.
The only problem with this method I've found is that network drives don't seem to be readable by any application (with the exception of Windows Explorer, but that only allows me to browse and is buggy in doing anything else on the drive after re-enabling desktop composition).
Obviously, I would be overjoyed if a solution was also found for this problem, but I haven't dabbled too much to find one (although I'm pretty sure the problem occurs with winlogon.exe being restarted).

It will be interesting to see if we will be able to re-disable desktop composition in Windows 9 when it comes out, seeing as how (purportedly) the start screen is going to be removed and users will (also purportedly) have the option to not have apps (which is essentially the entire reason why DWM can't be disabled anymore).
posted
I'll rewrite this later today to fix the issues, sorry for the wait, totally forgot about this.
posted
How is it a pain to set it to centered timings and then open the game where it automatically changes the resolution? You can use profiles for the tablet if that's what you're getting at, so when you open osu! it will read the profile for osu!.
posted
Hi, I'm a multi-monitor user that plays full-screen. I don't really find it troubling at all to change resolutions (although I do still find it a bit inconvenient to have the need to minimize osu! to get to the desktop when I'm in a multiplayer room, but then again I have a laptop that I can use instead).
posted
I'm running windows 8.1 and can confirm that this works as intended.
Thanks ^^
posted
I am getting this
posted

Bass wrote:

I am getting this
Did you run it with administrator privileges?

Quite useful. Up to now, I've been using something I've written which has a .bat script each, for disabling and enabling, using pssuspend.exe.
posted

Bass wrote:

I am getting this
Go here http://java.com/en/download/manual.jsp and download the correct java according to your system.
Then that shouldn't happen.
show more
Please sign in to reply.