Virtualbox 3.0 Announces OpenGL/Direct3D Support
bl8n8r writes "Apparently, Virtualbox 3.0 released today (2009-07-01) brings with it 'OpenGL 2.0 for Windows, Linux and Solaris guests; and experimental support for Direct3D 8/9 applications on Windows guests.' Maybe we can finally game in a VM?"
What do you mean finally? I'm playing Minesweeper in a VM now.
"Experimental" generally means "full of tons of bugs." 3D virtualization seems like it is just hard to do, at this point. VMWare has been working on it and at this point it isn't even "experimental" in the latest version of VMWare Workstation. Well it works... kinda. It's fairly slow and there are some rendering errors. I can get WoW to run, but it isn't all that playable.
I've been watching this sort of thing with interest since old games are one of the things I'm very fond of. However at this point, 3D VMs seem to be an experimental playtoy, not something that can be used for serious gaming.
I use Virtual box on a pair of mac intel core duo 2 machines to run windows XP pro I'm very pleased with it. It essentially works perfectly. I don't care that it is only single processor since All I want is basic seemless windows functionality for those few cases where software is windows only.
it works well with USB devices. I use it to program Lego Mindostorms, and for Midi (to USB) keyboard input and some thumb drives.
it will mount any folder on my mac disk either permenantly or temporarily (these show us as X: or Y: or whatever). What's mildly annoying is that this is 2 step process: first you tell the VM to "add the drive" then you have to use a windows "run" command "net use x: " to tell windows about it. the second step seems strange to me, but you only do it one time.
I've had three things I could not figure out.
I never was able to get a windows media player to mount in media player mode so I could use windows DRM protected WMA files on it and manage it from within windows media player 11. Instead it only will mount as a thumb drive.
I was not able to get a virtual CD device to mount an iso image or burn an iso image (as a work around for getting the WMA files in a format I could play).
It will not burn a CD or DVD.
also I never figured out how to add my Samsung C310 printer to it or my HP multifunction printer to it. it does see them, it just never finds the drivers. However I'm pretty certain this is a windows driver problem and nothing to do with the VM.
I don't game so open GL means squat to me.
Some drink at the fountain of knowledge. Others just gargle.
It only works on Windows guests. Only DirectX is supported, not OpenGL.
I played around with this a bit in the beta. It's significantly slower than native and has a fair share of graphics glitches, but it was good enough to take my dual-monitor computer, plug in a second keyboard and mouse, and play two games of Warcraft III against eachother simultaneously using only one box.
I remember VMware implementing this several months ago. It was experimental, I don't know about it's status right now.
Ummm... actually, it's been a feature in VMWare for several years... It was experimental in VMWare 5.0 but it has been standard in the past three major releases: 5.5, 6.0 and 6.5. FWIW, VMWare tends to do major updates in 0.5 increments and you can go from 5.0->5.5 and 6.0->6.5 for free... It's a nice way for only paying for half your major upgrades. Minor upgrades are a smaller decimal value added on (i.e. 5.51, 5.52, etc) and those are always free.
That's why the Direct3D bit is a big deal. Direct3D is the 3D part of DirectX.
upon the advice of my lawyer, i have no sig at this time
Well, hopefully this could put people over the edge to use Linux full-time (myself included). Many people currently use Windows for gaming, and don't dual-boot because it's a hassle. If I could run in Linux 24/7, and run my games without rebooting, either in a VM or in Wine, that would be excellent.
Convert FLACs to a portable format with FlacSquisher
With virtualbox from Sun! now with three-d acceleration!
You've got problems, we all know what it's like not being able to develop on windows - but you can't seem to give up counterstrike! Notepad carriage return issues, archaic command line functions, the works - all gone in a jiffy with Virtualbox(tm)!
Want to pwn noobs from the comfort of a linux environment!? No problem. Toss xp on there, Bam! It's done!
Want to show people your awp skills while still being able to strace!? Easy as boom-headshot with virtualbox!
Call now and for no extra cost we'll throw in the latest jre for absolutely free!
The Direct3d support is not designed for gaming, but it works for the most part. I have found a few games which do not work, Fallout 3 America's Army 3, but also many which do work, Counter Strike Source America's Army 2 Team Fortress 2 Rise of Nations.
This could be the upgrade I've been waiting for... now all I have to do is dig up an old copy. Has anyone tried it already?
Unfortunately, looks like they still haven't fixed bug 1040, or even upgraded its priority from 'minor.' The gist of it is, do not even think about touching anything in the GUI relating to the 'snapshot' feature, unless you really, absolutely, positively understand what you're doing. The wording is very confusing, and can easily lead to data loss scenarios. Unfortunately, since this is a human interface flaw, and not a programming error, it seems like it's not really being taken seriously. In my mind, sadly, this is exactly the sort of macho hacker mentality that keeps OSS from mainstream acceptance.
Passing OpenGL calls through is easier, and has actually been done for a while now. Reimplementing DirectX is considerably harder, I think they used Wine code for a lot of that.
Give me Classic Slashdot or give me death!
They had USB, seamless mode, folder sharing, and clipboard (txt) support since version 1.x. Most of the additions that had been done since didn't really matter to me. What's really missing for a more seamless integration for me is support for drag and drop of files and other objects between host and guest. Other VMs support such functionality, so I wonder why VBox isn't doing it, despite all their fancy efforts.
"Odd protocols, like GRE?" .. not a network guy, are you? Should I use a standardized, widely implemented protocol like GRE, or a single-implementation solution like OpenVPN. Don't get me wrong, I love OpenVPN and thing those guys have a fantastic cross-platform solution ... but GRE isn't exactly an "odd protocol".
Hmmm
10b||~10b -- aah, what a question!
Interestingly enough, both WIndows 7 and VirtualPC come from Redmond, WA.
For large sets, this will be our guide even unto death, for the LORD will work for each type of data it is applied to...
Games are the last bastion for a seperate Windows install.
The audio stuff (Reason, FLStudio) etc work perfectly well under VirtualBox now.
You need to use ASIO4ALL to get asio working, but once done and fiddled with... hah! 10ms audio latency in a freakin' virtual machine! That is just so awesome to me!
For large sets, this will be our guide even unto death, for the LORD will work for each type of data it is applied to...
Ummm... for those playing along at home, you are talking about the Workstation product - which as you note, costs money.
The Server product, which is free, does not support the more interesting graphics APIs.
Cool! After the umpteenth million time of not being able to build VMware Server under the latest kernel version, and this time NOT being able to find yet-another-vmware-any patch to fix it, I finally abandoned VMware (at least for personal use) and switched back to VirtualBox. Looks like I made the right decision right, just in time.
I'm still using VMware for server virtualization at work, but for running one of Uncle Bill's products on my desktop, it looks like VirtualBox is a better solution.
I will be interested in seeing how it works with USB. That's always been a bug-a-boo for me--getting USB devices to talk to the VM. This release sounds like they've cleaned up some things. I will be really interested in how it performs with some of my games that require 3D. (I'm talking like Guild Wars, not the latest releases.)
Your Servant, B. Baggins
I'd laugh, except that I'm still supporting a 90's era VB6 program, which is written with Office in mind such that Excel spreadsheets are opened, closed and eventually that data are saved to a sql server... ...you'd think that being a PHB, I'd not have to do VB programming anymore.
The Kai's Semi-Updated Website Thingy
At least running on an OS X 10.5.7 host, 3D is definitely not yet stable - even OpenGL which is not listed as "experimental".
See here: http://forums.virtualbox.org/viewtopic.php?f=3&t=19352
Other than that, VirtualBox is very polished in general. 3D is just not a feature that works yet, and should not be used in a production environment.
Facebook is the new AOL
I feel for you. I've spent the last couple of weeks trying to beat an Access 2000 VBA application into submission. I've got the current holes plugged, but next Monday I'm telling the guy I'm doing the work for that I'd rather recode it in Lisp than ever ever ever have to deal with VBA again. All VBA and VB ever did was allow people who had no business programming to create programs, and somehow so many of those programs ended up outlasting the original guys who made them.
The world's burning. Moped Jesus spotted on I50. Details at 11.
I got DOSBox in VirtualBox, and a copy of X-Wing, but it is tricky reading the old floppies with modern hardware. With a bit of determination, I was able to insert a mini usb plug in under the sliding metal thingy on the disk, but the computer still can't work.
At first I thought it was the host OS lacking the correct drivers, but then I realised that floppies are much slower than usb drives, so they need to operate at a lower frequency. If I could just up the frequency, I could read the data!
Okay, here are the numbers. A high speed floppy would get around 500 Kbps tops and the USB transfer is around about 29.5 Mbps, so the floppy is around 1.7% the speed of the USB. So if I increase the speed of the USB connection by 59 times, I should get the USB to read the floppy correctly. Now a microwave oven works at 2.45 Ghz, so I figured that, seeing that that is ~83 times the speed of the USB, with a little bit of duct tape and some copper foil sheilding the usb cable, I could get the increase I needed in the floppy without over doing it.
So I put the floppy with the cable inserted in it and wrapped in copper foil and duct tape into the microwave, jammed the safety switch with a plastic spoon so I could run it with the door open (don't worry, I sat behind the microwave) and plugged it into the computer. Then I quickly turned the microwave on and read the data coming from the cable.
It didn't work first time, but that was because the USB wasn't acting like a drive, so the computer could "read" it. Unfortunately it was so fast that it blew up the usb port (I think, it wont read my thumb stick).
So then I opened up an old flash drive (32MB) which I have filled with 0x00 and carefully attached the chip to the disk surface with a spot of hot glue. When I plugged it in, the computer recognized it as "removable media", so I again started the microwave to spin up the disk frequency. This time there was more smoke, not just from the microwave (to be expected), but also from the usb port!!!
Can anyone help me with the right number of winds of duct tape needed to slow the floppy frequency from the 41.5Mbps I am getting to the 29.6 Mbps I need? I think the extra speed is causing overload, I am running out of USB ports and I just got a nosebleed. Also, does anyone have another copy of X-Wing? Mine is a bit worn :-(
I don't therefore I'm not.
OpenGL already supports network transparency, you could potentially just use that existing functionality to deliver the GL calls over a local interface to the local host...
http://spamdecoy.net - free throwaway anonymous email - avoid spam!
Actually, modern AMD and Intel chipsets do include an IOMMU. This does for devices what the MMU does for processes; gives each one its own virtual address space which is mapped to the physical address space.
The original motivation for this was using 32-bit devices on a 64-bit system. The first machine that I'm aware of to include an IOMMU was an early SPARC64 system. Sun wanted to ship it with a cheap 32-bit NIC, but this had problems when you have a machine with more than 4GB of RAM. If you send network data, for example, you typically send a DMA request to the card saying 'copy this data from this memory address'. If the card can only see 4GB of RAM and the CPU can see more, then a process may be asking to send data from a memory address that the card can't see. Without an IOMMU, the kernel had to first copy the data then send the DMA request. With an IOMMU, it can just map a region of the process's memory into the device's address range and do the DMA directly, which is much faster.
Using IOMMUs for security and then for virtualisation came a bit later, but it's supported by some hypervisors. Not (yet) by VirtualBox though, I believe.
I am TheRaven on Soylent News
Or simply add the WineHQ repository to your software sources in Ubuntu - http://www.winehq.org/download/deb. Always up to date with the latest.
OpenGL already supports network transparency
OpenGL is device-independent, so you get network transparency for free. That's not really the same thing no matter what the SGI FAQ says. OpenGL lacks a networking component, so to say it has network transparency is a bit disingenuous. X11 has network transparency, which is why OpenGL has it in practice... but it's not part of OpenGL.
"You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"