Virtual Machines

Started by
17 comments, last by LorenzoGatti 7 years, 8 months ago

Am I seriously going to be the only guy that questions what this guy has that only gives him access to OpenGL 2.1... but it's perfectly ok with Directx 11?


Intel hardware, probably. They pushed out DX11 drivers for a number of chips but never bothered with GL support, and the chips are now old enough that they no longer receive driver updates (and hence will never get GL support despite being capable).

Alternatively, it may just be old D3D9-era hardware. Microsoft actually put a lot of effort into DX11 emulation aka "WARP" (mostly for debugging and verification purposes) so you can run DX11 code just fine on old hardware; it just won't be particularly fast.

There's also plenty of hardware (also in the "older" bucket... mostly) that had newer GL drivers but they never worked particularly well. Which is precisely why GL|ES wrappers to D3D (e.g. ANGLE) exist and why all that fancy WebGL you run in Chrome or Firefox on Windows is actually driven by Direct3D and not the native OpenGL drivers.

Finally, there are also platforms like OSX which do actually support newer GL but only when the API is initialized in the non-default Core mode. The default Compatibility mode is capped at GL 2. The same hardware on Windows will likely have DX11 support. This confuses a lot of people as none of non-Apple desktop platforms have restrictions on Compatibility mode features. It makes porting a surprising pain for a lot of hobbyists because most OpenGL ends up being an unwitting mix of Core-approved and Core-deprecated API calls, given how awful and spotty the popular GL documentation and tutorials are.

Sean Middleditch – Game Systems Engineer – Join my team!

Advertisement
You can use Virtual Machines to get OpenGL 3.0 since LLVMpipe on most modern Linux distributions provides a software renderer advertising OpenGL 3.0 compliance. Unfortunately it does not go higher yet to 4.x.

It's also quite slow (though surprisingly not too bad) and only really useful for certain testing.
http://tinyurl.com/shewonyay - Thanks so much for those who voted on my GF's Competition Cosplay Entry for Cosplayzine. She won! I owe you all beers :)

Mutiny - Open-source C++ Unity re-implementation.
Defile of Eden 2 - FreeBSD and OpenBSD binaries of our latest game.

Once again, Intel utility and the website says that I am stuck with OpenGL 2.1 after using the Intel driver update utility. There are a few models of Intel hardware versions which are stuck on OGL 2.1

It's weird because I have Win 7 and DirectX 11, but can't get a driver update beyond OpenGL 2.1

Personal life and your private thoughts always effect your career. Research is the intellectual backbone of game development and the first order. Version Control is crucial for full management of applications and software. The better the workflow pipeline, then the greater the potential output for a quality game. Completing projects is the last but finest order.

by Clinton, 3Ddreamer

Direct3D actually complicates this a little because there are two components: the common runtime which is on all PCs, and the vendor-provided driver. Under Windows 7 you may very well have D3D11 via the common runtime, but do you actually have hardware support for D3D11?

Direct3D has need of instancing, but we do not. We have plenty of glVertexAttrib calls.

Mesa3D drivers have a software implementation, the latest releases support OpenGL 4.3.

This of course should always come with the warning: as a software implementation it's going to be too slow for general usage.

Direct3D has need of instancing, but we do not. We have plenty of glVertexAttrib calls.

I have an Intel GMA 965 GPU and the official Intel drivers for Windows only support OpenGL 2.0 (so no render textures and WebGL does not initialize in firefox).

However,

On Linux and OpenBSD it is a different story. The open-source Intel drivers for my hardware actually support OpenGL 2.1 and thus render textures and WebGL does work.

In theory open-source drivers are always going to be newer and support newer things because developers don't stop working on them once the original hardware becomes obsolete.

Quite what the hardware actually supports or if there is some sort of emulation happening on Linux, I am not sure but you might want to give it a go.

Put in a Linux live-cd and run glxinfo. This should then state your OpenGL support version.

http://tinyurl.com/shewonyay - Thanks so much for those who voted on my GF's Competition Cosplay Entry for Cosplayzine. She won! I owe you all beers :)

Mutiny - Open-source C++ Unity re-implementation.
Defile of Eden 2 - FreeBSD and OpenBSD binaries of our latest game.

Mesa3D drivers have a software implementation, the latest releases support OpenGL 4.3.

This of course should always come with the warning: as a software implementation it's going to be too slow for general usage.

Possibly so and I don't recommend playing the latest high-end games with them, but they're probably more than enough for the topic at hand, with the note: "This is only for simple 2D and 3D game development when performance is not critical."

The Mesa drivers are not as fast has the specialized 3D hardware, but they aren't terribly slow, either. They take advantage of all kinds of modern hardware techniques to get great performance.

Does Visual Studio have an OpenGL detection ability?
No. They have nothing to do with eachother. If you want any "OpenGL detection ability" you'll have to code it yourself.

Can I still develop with OpenGL 4.X in Visual Studio and test in another computer?
Of course. They're unrelated.

"I AM ZE EMPRAH OPENGL 3.3 THE CORE, I DEMAND FROM THEE ZE SHADERZ AND MATRIXEZ"

My journals: dustArtemis ECS framework and Making a Terrain Generator

Replace your computer and make the world a better place by destroying an Intel integrated graphics adapter. You deserve more than fighting with Intel OpenGL drivers.

Omae Wa Mou Shindeiru

This topic is closed to new replies.

Advertisement