Printscreen bug

Discussions related to using VirtualBox on Windows hosts.
Caesar
Posts: 31
Joined: 31. Dec 2015, 11:50

Printscreen bug

Post by Caesar »

If i press host+D and to capture VM screen it capture correctly..
a2(1).jpg
a2(1).jpg (98.24 KiB) Viewed 2414 times
But if i press PrtScn hotkey inside vm, it capture with a white screen, why?
aa1.png
aa1.png (46.09 KiB) Viewed 2414 times
Im running a program that need analyze pixels in this game cliente, but he cant because when he capture the screen it displays only white inside game area :oops: :oops: :oops:
socratis
Site Moderator
Posts: 27329
Joined: 22. Oct 2010, 11:03
Primary OS: Mac OS X other
VBox Version: VirtualBox+Oracle ExtPack
Guest OSses: Win(*>98), Linux*, OSX>10.5
Location: Greece

Re: Printscreen bug

Post by socratis »

Caesar wrote:If i press host+D and to capture VM screen
Unless you changed the defaults, that should be Host+E.
Caesar wrote:if i press PrtScn hotkey inside vm, it capture with a white screen
So, what's wrong with pressing the Host key combination? Do you need to look at the image inside your guest? From the looks of it, the game is using hardware acceleration (DirectX? OpenGL?) and that's where the problem might be. Do you have 2D and 3D enabled or disabled in the VM settings?
Do NOT send me Personal Messages (PMs) for troubleshooting, they are simply deleted.
Do NOT reply with the "QUOTE" button, please use the "POST REPLY", at the bottom of the form.
If you obfuscate any information requested, I will obfuscate my response. These are virtual UUIDs, not real ones.
Caesar
Posts: 31
Joined: 31. Dec 2015, 11:50

Re: Printscreen bug

Post by Caesar »

Yes the game is running in opengl!

I have 2d and 3d enabled in VM
a.png
a.png (78.77 KiB) Viewed 2399 times
socratis
Site Moderator
Posts: 27329
Joined: 22. Oct 2010, 11:03
Primary OS: Mac OS X other
VBox Version: VirtualBox+Oracle ExtPack
Guest OSses: Win(*>98), Linux*, OSX>10.5
Location: Greece

Re: Printscreen bug

Post by socratis »

Unfortunately you answered only half of the questions:
socratis wrote:So, what's wrong with pressing the Host key combination? Do you need to look at the image inside your guest?
Do NOT send me Personal Messages (PMs) for troubleshooting, they are simply deleted.
Do NOT reply with the "QUOTE" button, please use the "POST REPLY", at the bottom of the form.
If you obfuscate any information requested, I will obfuscate my response. These are virtual UUIDs, not real ones.
Caesar
Posts: 31
Joined: 31. Dec 2015, 11:50

Re: Printscreen bug

Post by Caesar »

Yes i do, i need analyze the image inside the virtual machine, but each time i try print the game screen, it save the area all white.
Caesar
Posts: 31
Joined: 31. Dec 2015, 11:50

Re: Printscreen bug

Post by Caesar »

I am developing a Delphi software to print screen the game screen and analyze the pixels.
Outside the VM it works, but inside the VM the print screen of the game becomes white.
loukingjr
Volunteer
Posts: 8851
Joined: 30. Apr 2009, 09:45
Primary OS: Mac OS X other
VBox Version: VirtualBox+Oracle ExtPack
Guest OSses: just about all that run

Re: Printscreen bug

Post by loukingjr »

You could try disabling 3D acceleration for the guest if it's not required for the game to run.
OSX, Linux and Windows Hosts & Guests
There are three groups of people. Those that can count and those that can't.
Caesar
Posts: 31
Joined: 31. Dec 2015, 11:50

Re: Printscreen bug

Post by Caesar »

I disabled 3d acceleration and it worked, now it print the screen correctly, but my fps in game is 2-3 i even cant move
loukingjr
Volunteer
Posts: 8851
Joined: 30. Apr 2009, 09:45
Primary OS: Mac OS X other
VBox Version: VirtualBox+Oracle ExtPack
Guest OSses: just about all that run

Re: Printscreen bug

Post by loukingjr »

Unfortunately the problem is how 3D acceleration is handled in VirtualBox. You can have one thing but not the other. It's either or.
OSX, Linux and Windows Hosts & Guests
There are three groups of people. Those that can count and those that can't.
mpack
Site Moderator
Posts: 39134
Joined: 4. Sep 2008, 17:09
Primary OS: MS Windows 10
VBox Version: VirtualBox+Oracle ExtPack
Guest OSses: Mostly XP

Re: Printscreen bug

Post by mpack »

This is perfectly normal. The whole point of hardware assisted graphics rendering is that the rendering is done in the graphics card, not in the PC. Obviously if the data is not in the VM then screengrabbing the VM using PrtScr will do nothing useful.

And please don't bandy words like "bug" around when you don't understand what it means. It can be really quite irritating. Failure to do what you expect is not per se a bug, at least not unless the person with the expectations is an expert in software design.
loukingjr
Volunteer
Posts: 8851
Joined: 30. Apr 2009, 09:45
Primary OS: Mac OS X other
VBox Version: VirtualBox+Oracle ExtPack
Guest OSses: just about all that run

Re: Printscreen bug

Post by loukingjr »

I agree Don. It is perfectly normal in… VirtualBox
OSX, Linux and Windows Hosts & Guests
There are three groups of people. Those that can count and those that can't.
mpack
Site Moderator
Posts: 39134
Joined: 4. Sep 2008, 17:09
Primary OS: MS Windows 10
VBox Version: VirtualBox+Oracle ExtPack
Guest OSses: Mostly XP

Re: Printscreen bug

Post by mpack »

It is perfectly normal period. A PC can't display data that isn't in the PC - it would have to fetch it from wherever it is really stored. In some cases that isn't possible, e.g. when the guest OS doesn't know that it needs to do something special.

The same applies to 2D video overlays. The PC just reserves a blue screen matting rectangle, the graphics card renders the video. If the PC does a screen grab all it will get is a black or blue rectangle.

If the rendering is done in the PC you can grab it, but of course PC rendering is much slower - otherwise they wouldn't have needed hardware acceleration.
loukingjr
Volunteer
Posts: 8851
Joined: 30. Apr 2009, 09:45
Primary OS: Mac OS X other
VBox Version: VirtualBox+Oracle ExtPack
Guest OSses: just about all that run

Re: Printscreen bug

Post by loukingjr »

Well, I said what I had to say. I sent screenshots to demo what I meant and had no reply. On to other things.
OSX, Linux and Windows Hosts & Guests
There are three groups of people. Those that can count and those that can't.
mpack
Site Moderator
Posts: 39134
Joined: 4. Sep 2008, 17:09
Primary OS: MS Windows 10
VBox Version: VirtualBox+Oracle ExtPack
Guest OSses: Mostly XP

Re: Printscreen bug

Post by mpack »

Yes, I saw the screenshots you sent me, I just wasn't quite sure what they were intended to prove. I didn't say that reading back from VRAM was impossible under any circumstances. I thought my first paragraph above was relatively clear about that.

My point basically is that (real) VRAM is in a separate address space and can't be captured by reading any part of a PC's RAM. To give an illusion otherwise the guest graphics driver would have to interpret the request and read back data from the graphics card, and that isn't always possible. E.g. I'm not sure that OpenGL has such a function at all (I may just have missed it, or be using the wrong OpenGL version), and I don't know what would happen if you captured a window instead of the current screen... in that case neither the PC nor the graphics card has fully composited graphics.
loukingjr
Volunteer
Posts: 8851
Joined: 30. Apr 2009, 09:45
Primary OS: Mac OS X other
VBox Version: VirtualBox+Oracle ExtPack
Guest OSses: just about all that run

Re: Printscreen bug

Post by loukingjr »

I know Don. I just wanted to show my statement I made about how VirtualBox handles 3D acceleration wasn't completely out of left field.
Another screen shot… taken using PrtScr inside a VM.
Image

Edit: FWIW, I used the On Screen Keyboard for PrtScr so I wouldn't have to remap a key. :)
OSX, Linux and Windows Hosts & Guests
There are three groups of people. Those that can count and those that can't.
Post Reply