Skip to main content
GameDev.net gamedev.net
🔒 Locked

DirectX Overlay?

Started by HolySheepy Oct 12, 2005 at 2:23 PM 7 replies 1.3k views
Original Post
HolySheepy
HolySheepy
Hi, im trying to learn Overlays. Well what i want to do is to put something on the screen of another DirectX using Application... can someone help me? I need to get the Surface to put an overlay on it =/
Yablargo
Yablargo
You note this was easier to do in DirectShow, and I have to imagine this is how xfire and fraps and certain IM programs use their overlaying.. do you have any examples? I have a code example that I was playing with that did the operation I wanted, but currently it only overlays onto the desktop and im not entirely sure how to do it over the current Dx9 scene.

I simply want to draw about 4 pixels soooo not much grunt work involved in mine :P
circlesoft
circlesoft
Check with Coder, the moderator of this forum. I remember him mentioning a little while back that he had a DDraw overlay program, if anyone wanted it. Just send him a PM.
outRider
outRider
I think you guys are talking about different things. DirectDraw supports an overlay surface usually using a YUV format that the hardware converts to RGB in real time primarily for video. DirectShow uses DDraw overlays when using the Overlay Mixer as a renderer.

The overlaying circlesoft is talking about is hooking the D3D interface of an app and right before the Present call doing some drawing (which gets 'overlayed', i.e. is drawn on top of the app's normal frame).

If you want to do what XFire and Fraps do you have to use circlesoft's method, because D3D 8 and 9 don't support DDraw overlays, so you certainly can't use that method on recent games.
Yablargo
Yablargo
Okie. I am using a skeleton DX9 hook program but I am a complete noob to dx, Ive sofar only worked in OpenGL =(

I have my wrapper, and I have access to a function that is called directly before present(), Im still trying to figure out DX enough to just simply draw a polygon in the center of the screen, Seems very few sites agree on the same basic methods(opengl I woulda been loading bsps by now or something =P) on how to do things, sooo its a little more complicated than it should be for me right now :(
HolySheepy
HolySheepy
nice article but how i inject the code into the program? O.o
so the program calls my class instead of the usually one XD
circlesoft
circlesoft
Quote:
Original post by HolySheepy
nice article but how i inject the code into the program? O.o
so the program calls my class instead of the usually one XD

You are probably going to have to start from scratch. Check out this thread though and see if that code helps you.
HolySheepy
HolySheepy
uhm well i dont get how to tell the Program "Launch my Class" x-x

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.