12th July 2005 19:45 UTC
how does it work?
how does the overlay mode work in avs? im trying to do the same in vb but i can just make it draw over the icons not under??
Archive: how does it work?
Burningwing
12th July 2005 19:45 UTC
how does it work?
how does the overlay mode work in avs? im trying to do the same in vb but i can just make it draw over the icons not under??
[Ishan]
13th July 2005 17:20 UTC
duh? are you asking the internal working of the overlay mode or what?
Burningwing
14th July 2005 15:15 UTC
im just asking how does it work is it a api is it direct x or is it some thing else just a short description of what AVS does to paint under the icons
Warrior of the Light
14th July 2005 16:47 UTC
Overlay mode sets your wallpaper to a certain color (if you select that), then 'pastes' the information in the AVS window over that color.
Burningwing
15th July 2005 13:55 UTC
aha tnx got some understading now of how it works
Tuggummi
15th July 2005 15:10 UTC
Yeah, you basicly select a color of your choice and overlay mode "paints" the current AVS window to every color of that particular choice (even in the avs window itself, but that doesn't create any "infinite loop" effect). The current windowed mode resolution is used for the overlay and then streched for your current resolution.
jheriko
18th July 2005 12:26 UTC
You want to look on msdn it has all the answers.
The easy answer is you want to use OpenGL or DirectX as both have functionality for rendering on top of their existing functionality. I also assume there is a lower level API available which may be tidier to use... but without function names I cant really help with that.
Since I hate DirectX for various reasons I dont know much about the DX implementation. Under OpenGL however, rendering to the overlay is pretty simple tho, you just have to specify it in the PIXELFORMATDESCRIPTOR struct you assign to your drawing surface and use a different wgl function (wglCreateLayerContext) to get your render context.
There are plenty of details on places like msdn and in the OpenGL specification for instance.
Good luck doing it in VB, the lack of pointers makes a lot of API work quite frustrating. I'd recommend getting the c++ opengl headers and writing a small VB program or SQL statement to convert the function defininitions to VB Declare statements and the #defines to Public Const... etc.
Fork me on GitHub