Hi,
I realize there is a sticky thread for game compatibility, but it seems that thread is only for posting games that work, not asking for help with ones that don't.
I've been trying to run Might and Magic 7 (not Heroes) in my Windows 7 VM. I have installed the guest additions, and enabled 3D Acceleration in the settings menu, but the game throws up error messages on launch.
The host is Windows 10 64bit, the guest is Windows 7 32bit. Before anybody states the obvious, yes, I can play the game on the host OS . I installed it through the ubisoft game launcher and it works. Suffice it to say I have reasons for wanting to run it within the VM.
I mounted the Guest additions CD image and rebooted into safe mode, then ran the following command; "D:\VBoxWindowsAdditions.exe /with_autologon /with_d3d" and ran the installer. After rebooting into normal mode, Dxdiag reports that DirectDraw and Direct3D are both enabled, and device manager shows that the VirtualBox Graphics Adapter is present as my display device.
After installing the game to "C:\Games\Might and Magic 7 For Blood and Honor" (via the ubisoft game launcher), I get this error when I try to run the game either through the launcher, or by directly opening the MM7.exe file; "There aren't any D3D devices to create."
When I run MM7Setup.exe, It does not show the VirtualBox Graphics Adapter present, leaving only Software 3D in the Video options.
If I try to launch the game from the setup directly, I get a Direct Draw Error.
Can anyone think of any way to get the game to detect my graphics adapter? If you need any other info or clarification please let me know. I appreciate any insight or suggestions you might be able to offer.
Cheers,
Solid
D3D compatibility with Might and Magic 7
-
- Posts: 3
- Joined: 12. Sep 2017, 02:11
Re: D3D compatibility with Might and Magic 7
Additional post due to attachment limit.
- Attachments
-
- VBoxHardening.rar
- (21.75 KiB) Downloaded 24 times
-
- VBox.log
- (114.37 KiB) Downloaded 12 times
-
- Site Moderator
- Posts: 39134
- Joined: 4. Sep 2008, 17:09
- Primary OS: MS Windows 10
- VBox Version: PUEL
- Guest OSses: Mostly XP
Re: D3D compatibility with Might and Magic 7
What version of Direct3D does the game require?
-
- Posts: 3
- Joined: 12. Sep 2017, 02:11
Re: D3D compatibility with Might and Magic 7
That's a good question. I believe that the game required Direct x 6 or later when it was released way back when, and I know from my Host OS that it works with Direct x 11 (or at least the Ubisoft Uplay version of the game does), but I can't find anything about which version of Direct3D it uses. My best educated guess would be that it uses Direct3D 6.0, which was included with Direct X 6.mpack wrote:What version of Direct3D does the game require?
-
- Site Moderator
- Posts: 39134
- Joined: 4. Sep 2008, 17:09
- Primary OS: MS Windows 10
- VBox Version: PUEL
- Guest OSses: Mostly XP
Re: D3D compatibility with Might and Magic 7
I make very little use of accelerated graphics in a VM (I just don't use VMs for that), so take the following as an opinion only, not expert advice.
However...
VirtualBox has never claimed to support DirectX 6 so far as I know.
As I understand it, DirectX (Direct3D) is not backwards compatible as such. Instead each new revision includes a new interface plus interfaces which were supported by the previous version. This is possible because of the way COM works - an app has to request the exact interface it wants. I.e. so a graphics card that had existed since DirectX 6 might respond to requests for a DirectX6 API, and a DirectX7 API, ... and so on. But it's under no obligation to do so, e.g. a more modern card may reject the really old interfaces.
As I understand it (2), VirtualBox offers DirectX8 and DirectX9 APIs. Not DirectX6.
Your original post asked about getting the game to recognize your hosts graphics card. I assume this was a slip of the terminology. A VM has no access to the hosts graphics card. It has access to an emulated graphics card, and in the VirtualBox case, that emulated graphics card supports Direct3D 8 and 9. The guest app can benefit from accelerated graphics, but can't discover the full features of the host.
However...
VirtualBox has never claimed to support DirectX 6 so far as I know.
As I understand it, DirectX (Direct3D) is not backwards compatible as such. Instead each new revision includes a new interface plus interfaces which were supported by the previous version. This is possible because of the way COM works - an app has to request the exact interface it wants. I.e. so a graphics card that had existed since DirectX 6 might respond to requests for a DirectX6 API, and a DirectX7 API, ... and so on. But it's under no obligation to do so, e.g. a more modern card may reject the really old interfaces.
As I understand it (2), VirtualBox offers DirectX8 and DirectX9 APIs. Not DirectX6.
Your original post asked about getting the game to recognize your hosts graphics card. I assume this was a slip of the terminology. A VM has no access to the hosts graphics card. It has access to an emulated graphics card, and in the VirtualBox case, that emulated graphics card supports Direct3D 8 and 9. The guest app can benefit from accelerated graphics, but can't discover the full features of the host.