Capture

Blitz3D Forums/Blitz3D Beginners Area/Capture

sting(Posted 2005) [#1]
Ok, What im trying to do is, when the program starts, take a screen capture then with that make the program full screen and place the picture as the background and do various alphad sprite animations on top to make it look like its actualy (for example) ripping through the back of the screen and doing something blag blah. My problem is that whenever i find some sort of code to take the screenshot on start, theres always this black console box in the center of the screen that will later turn to the program window. Can i get rid of it?


Baystep Productions(Posted 2005) [#2]
no. not with out really tricky userlibs. as a beginner I would put that on the back burner right now.

But if your persistant, there is a code archive for splash screen, maybe a transparent one would fix the problem?


sting(Posted 2005) [#3]
Hmmm, well i feel like i can dive right in being as ive been using blitz for some years, but you gave me an idea with the splach. I have an autorun program that suports that sorta thing so i think i can intigrate. Thanks


big10p(Posted 2005) [#4]
Could you write a stub loader in another language that saves a screengrab to file and then launches your blitz app which loads it? Not knowing much about windows myself, I'm not sure if it's possible to wrtie a windowless app, though.


WolRon(Posted 2005) [#5]
Not knowing much about windows myself, I'm not sure if it's possible to wrtie a windowless app, though.
Yes, it's possible.


_PJ_(Posted 2005) [#6]
Am I right in thinking you are actually trying to capture the desktop? I can't tell ya how to do it, but I know the question has been raised before, so a search of the forums should help ya :)

The reason why you get the console box, is that before you set your graphics mode, Blitz automatically creates a runtime window, ready for the front-buffer text etc as a default.

You'd need some kind of access to windows API functions or something to get the desktop image, and that's where my knowledge falls apart ;)

Good luck, though - hope you find what you need


Ross C(Posted 2005) [#7]
Can't window positions be set to off screen? OR, have two windows open, each at different locations. Then paste the image the window covered, onto the first capture.


jfk EO-11110(Posted 2005) [#8]
Actually it's pretty easy to hide the blitz window. The only problem is it shows up in the initialisation process. There was a hack by halo I think, it patched the runtime.dll, so the window was hidden by default and you had to show it using the Api Call to unhide a window. That said, you had to edit all your sources to make sure they are not hidden by default (and therefore couldn't be stopped or ended because they never got focus). However. I don't think that little 400*300 window is such a desaster.

Yesterday I made a screensaver that will grab the desktop, then go into fullscreen, using the desktops resolution, use the grabbed pic as backgound and render some 3D stuff onto it. Looks nice, as if the 3D stuff is drawn directly to the desktop.

I think the code is in the archives...
This one is using bitblit:
http://www.blitzbasic.com/codearcs/codearcs.php?code=654
I was using a version that utilized GetPixel, it was kind of slower, but I remember I had some troubles with the bitblit version, probably due to the protection of overlays such as mediaplayer canvas etc.