SOLVED: OpenGL 3 in windows guest
-
- Posts: 17
- Joined: 16. Oct 2020, 00:46
SOLVED: OpenGL 3 in windows guest
Is there a way to get support for OpenGL 3 (or higher) in windows 7 guest? Plan is to run sketchup 2017
Using VboxSVGA with 3D acceleration, I get support for OpenGL 2.1
Host: manjaro linux
Edit: Solved by https://fdossena.com/?p=mesa/index.frag
Using VboxSVGA with 3D acceleration, I get support for OpenGL 2.1
Host: manjaro linux
Edit: Solved by https://fdossena.com/?p=mesa/index.frag
Last edited by manjaronoob on 9. Jan 2021, 06:38, edited 1 time in total.
-
- 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: OpenGL 3 in windows guest
No, there is no way to get OpenGL 3 in a VirtualBox VM at the moment. This is a user self help forum so we can't tell you when the devs might implement that.
-
- Posts: 17
- Joined: 16. Oct 2020, 00:46
Re: OpenGL 3 in windows guest
Thanks. That saves me from hours of trying.
Most google results on this subject are dated 2016-2017. As this still is an issue 5 years later, I guess it's not going to be fixed.
Most google results on this subject are dated 2016-2017. As this still is an issue 5 years later, I guess it's not going to be fixed.
-
- 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: OpenGL 3 in windows guest
In fact there has been plenty of movement on VirtualBox graphics capability since 2017, more so than in the entire previous decade.
The basic problem was that the old "VBoxVGA" graphics controller was, by all accounts, an unmaintainable and insecure spaghetti mess. The devs introduced two new graphics controllers in VirtualBox 6.0.0 (Dec 2018, so just a little more than one year ago): VBoxSVGA for Windows guests and VMSVGA for Linux guests.
Of course it's in the nature of development that whenever you start with a blank sheet, you start with a whole new mess of bugs, which the devs have been working their way through in the period since the new features were introduced. For the moment the OpenGL translation layer has not been improved, but who knows what might happen next.
The basic problem was that the old "VBoxVGA" graphics controller was, by all accounts, an unmaintainable and insecure spaghetti mess. The devs introduced two new graphics controllers in VirtualBox 6.0.0 (Dec 2018, so just a little more than one year ago): VBoxSVGA for Windows guests and VMSVGA for Linux guests.
Of course it's in the nature of development that whenever you start with a blank sheet, you start with a whole new mess of bugs, which the devs have been working their way through in the period since the new features were introduced. For the moment the OpenGL translation layer has not been improved, but who knows what might happen next.
-
- Posts: 17
- Joined: 16. Oct 2020, 00:46
Re: OpenGL 3 in windows guest
Thanks for that information.
Wonder if there could be a workaround to run the vm headless and use some kind of remote display that supports opengl 3+
Wonder if there could be a workaround to run the vm headless and use some kind of remote display that supports opengl 3+
-
- Posts: 17
- Joined: 16. Oct 2020, 00:46
Re: OpenGL 3 in windows guest
So, here is how to do it, with windows 7 64bit guest. I guess other windows versions are the same.
Goto https://fdossena.com/?p=mesa/index.frag
Download the version that fits your needs. I tried the latest 64bit version.
Extract opengl32.dll from the downloaded file. Save it in the same folder as the .exe you use to start the program that needs opengl 3 support.
Run the program to see if problem is solved. In my case I wanted to run Sketchup Make 2017 in a virtual machine, as there is no linux version of sketchup, and wine has some issues. The solution worked great for Sketchup.
In terms of performance... I haven't really tested with any large models yet. For the models I've tested, it runs just as smooth as it did on my old windows pc.
Goto https://fdossena.com/?p=mesa/index.frag
Download the version that fits your needs. I tried the latest 64bit version.
Extract opengl32.dll from the downloaded file. Save it in the same folder as the .exe you use to start the program that needs opengl 3 support.
Run the program to see if problem is solved. In my case I wanted to run Sketchup Make 2017 in a virtual machine, as there is no linux version of sketchup, and wine has some issues. The solution worked great for Sketchup.
In terms of performance... I haven't really tested with any large models yet. For the models I've tested, it runs just as smooth as it did on my old windows pc.
-
- Posts: 17
- Joined: 16. Oct 2020, 00:46
Re: SOLVED: OpenGL 3 in windows guest
For those who run linux guest, I suggest you have a look at https://mesa3d.org/
-
- 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: SOLVED: OpenGL 3 in windows guest
I should clarify that my comments above have been implicitly discussing hardware accelerated OpenGL rendering. Mesa is a software renderer, and if that is good enough for your needs then that's great.
-
- Posts: 17
- Joined: 16. Oct 2020, 00:46
Re: SOLVED: OpenGL 3 in windows guest
It's way better than not being able to start the program at all.
-
- 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: SOLVED: OpenGL 3 in windows guest
Perhaps. That would very much depend on what the program attempts to do: a purely software renderer is always going to have limited performance, so it limits vertex counts, polygon counts, texture memory etc. In fact it should be obvious that graphics cards would have no reason to exist if it was possible to get the same performance with software alone. Perhaps if Mesa is capable of adding an updated layer over the underlying hardware OpenGL layer then it may still be useful.
-
- Posts: 17
- Joined: 16. Oct 2020, 00:46
Re: SOLVED: OpenGL 3 in windows guest
I think everyone who uses desktop virtualization is aware that their virtual machines will have lower performance than if they used the physical machine. Anyone who decide to run software in a vm will need to try if it performs the way they need.
To say it's impossible to run a software that requires opengl 3 in a vm because it will perform less than in the physical machine is like stating that virtualization is in general impossible because of lower performance.
A way better answer to the question of whether it is possible to run software that requires open GL 3 would be to say that it is possible using Mesa, but it's performance may suffer even more than other software run virtually.
To say it's impossible to run a software that requires opengl 3 in a vm because it will perform less than in the physical machine is like stating that virtualization is in general impossible because of lower performance.
A way better answer to the question of whether it is possible to run software that requires open GL 3 would be to say that it is possible using Mesa, but it's performance may suffer even more than other software run virtually.
-
- 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: SOLVED: OpenGL 3 in windows guest
Who said that? Certainly not me.manjaronoob wrote: To say it's impossible to run a software that requires opengl 3 in a vm because it will perform less than in the physical machine
In my comments about software GL renderers I said nothing about VMs being a special case.
-
- Posts: 17
- Joined: 16. Oct 2020, 00:46
Re: OpenGL 3 in windows guest
mpack wrote:No, there is no way to get OpenGL 3 in a VirtualBox VM at the moment.
mpack wrote:I should clarify that my comments above have been implicitly discussing hardware accelerated OpenGL rendering. Mesa is a software renderer
I read these as you state that there is no way to run Open GL 3 software in VirtualBox VM, because your opinion is that the software solution (that you apparently have quite a bit knowledge of) suffer in performance. What I'm trying to say is that I think it's drastic to say there is no way to do it when you know there is a way, just that you're not happy with that way of doing it.mpack wrote:a purely software renderer is always going to have limited performance
-
- 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: SOLVED: OpenGL 3 in windows guest
And again, that has nothing to do with anything I said.
(1) You asked if there was a way to get OpenGL 3 in a VM. Since almost everyone who asks that means "how can a VM access faster graphics from my sooper dooper host graphics card" I assumed that this is what you meant as well. Indeed that could have been a bad assumption. In any case I responded in the negative.
(2) You came back saying that the problem had been solved, you had found the Mesa renderer which does present an OpenGL 3+ API.
(3) I pointed out that Mesa is a software renderer, hence it will not give you accelerated graphics (unless it renders to an existing OpenGL layer). Note that this statement is true regardless of whether Mesa is run in a VM or a physical PC. It is somewhere here that your logic has gone awry.
I have not really followed the sense of your comments since then. At each stage I have stated facts, not opinions: whether or not I "like" software renderers is irrelevant.
(1) You asked if there was a way to get OpenGL 3 in a VM. Since almost everyone who asks that means "how can a VM access faster graphics from my sooper dooper host graphics card" I assumed that this is what you meant as well. Indeed that could have been a bad assumption. In any case I responded in the negative.
(2) You came back saying that the problem had been solved, you had found the Mesa renderer which does present an OpenGL 3+ API.
(3) I pointed out that Mesa is a software renderer, hence it will not give you accelerated graphics (unless it renders to an existing OpenGL layer). Note that this statement is true regardless of whether Mesa is run in a VM or a physical PC. It is somewhere here that your logic has gone awry.
I have not really followed the sense of your comments since then. At each stage I have stated facts, not opinions: whether or not I "like" software renderers is irrelevant.
Re: SOLVED: OpenGL 3 in windows guest
Was trying to get Amplitube (software guitar amp) running on a Windows 10 guest in VirtualBox. Since it requires more than OpenGL 1 to render the interface, all I got was a black screen. Putting the opengl dll into its application folder solved the problem.
Obviously, software 3d rendering isn't going to work for graphically intense games, but for apps that are just rendering old Fender amps on the screen, it's perfectly fine!
Many thanks for the suggestion. Looking forward to 3d acceleration that actually works in VirtualBox though.
Obviously, software 3d rendering isn't going to work for graphically intense games, but for apps that are just rendering old Fender amps on the screen, it's perfectly fine!
Many thanks for the suggestion. Looking forward to 3d acceleration that actually works in VirtualBox though.