How to distort the desktop screen

Posted by HaifengWang on Stack Overflow See other posts from Stack Overflow or by HaifengWang
Published on 2011-03-01T13:09:37Z Indexed on 2011/03/19 16:10 UTC
Read the original article Hit count: 229

Filed under:
|
|

Hi friends, I want to change the shape of the desktop screen, so what are displayed on the desktop will be distorted at the same time. And the user can still operate the PC with the mouse on the distorted desktop(Run the applications, Open the "My Computer" and so on). I think I must get the projection matrix of the screen coordinate at first. Then transform the matrix, and map the desktop buffer image to the distorted mesh. Are there any interfaces which can modify the shape of the desktop screen in OpenGL or DirectX? Would you please give me some tip on it. Thank you very much in advance.

Please refer to the picture from http://oi53.tinypic.com/bhewdx.jpg

BR, Haifeng

Addition1:

I'm sorry! Maybe I didn't express clearly what I want to implement. What I want to implement is to modify the shape of the screen. So we can distort the shapes of all the applications which are run on Windows at the same time. For example that the window of "My Computer" will be distorted with the distortion of the desktop screen. And we can still operate the PC with mouse from the distorted desktop(Click the shortcut to run a program).

Addition2: The projection matrix is just my assume. There isn't any desktop projection matrix by which the desktop surface is projected to the screen. What I want to implement is to change the shape of the desktop, as the same with mapping the desktop to an 3D mesh. But the user can still operate the OS on the distorted desktop(Click the shortcut to run a program, open the ie to surf the internet).

Addition3: The shapes of all the programs run on the OS are changed with the distortion of the screen. It's realtime. The user can still operate the OS on the distorted screen as usually.

Maybe we can intercept or override the GPU itself to implement the effect.

I'm investigating GDI, I think I can find some clue for that. The first step is to find how to show the desktop on the screen.

© Stack Overflow or respective owner

Related posts about Windows

Related posts about opengl