TGEA 1.8.0 - Open GL Not working in Windows
by Britton LaRoche · in Torque Game Engine Advanced · 12/18/2008 (2:50 am) · 16 replies
Running windows XP with GeForce 9800 GTX, latest Nvidia Drivers.... I get a blank screen when I set the display driver to Open GL. Here is the output from the console.log
--------- Parsing Arguments ---------
Reading Display Device information...
Primary Display Device Found:
Vendor Id: VEN_0000
Device Id: DEV_0000
Binding server port to default IP
UDP initialized on port 0
DirectX 8 version - 9.0c
DirectX 9 version - 9.0c
GLExtensions: Extension bind failed for glBufferRegionEnabledEXT
GLExtensions: Extension bind failed for glNewBufferRegionEXT
GLExtensions: Extension bind failed for glDeleteBufferRegionEXT
GLExtensions: Extension bind failed for glReadBufferRegionEXT
GLExtensions: Extension bind failed for glDrawBufferRegionEXT
GLExtensions: Extension bind failed for glVertexWeighthNV
GLExtensions: Extension bind failed for glVertexWeighthvNV
Attempting to create GFX device: GeForce 9800 GTX/9800 GTX+/PCI/SSE2 OpenGL
Device created, setting adapter and enumerating modes
Initializing GFXCardProfiler (GL2.1)
o Chipset : 'NVIDIA Corporation'
o Card : 'GeForce 9800 GTX/9800 GTX+/PCI/SSE2'
o Version : '2.1.2'
- Scanning card capabilities...
GFXCardProfiler (GL2.1) - Setting capability 'maxTextureWidth' to 8192.
GFXCardProfiler (GL2.1) - Setting capability 'maxTextureHeight' to 8192.
GFXCardProfiler (GL2.1) - Setting capability 'maxTextureSize' to 8192.
GFXCardProfiler (GL2.1) - Setting capability 'GL::suppVertexBufferObject' to 1.
GFXCardProfiler (GL2.1) - Setting capability 'GL::suppRenderTexture' to 1.
GFXCardProfiler (GL2.1) - Setting capability 'GL::suppRTBlit' to 1.
GFXCardProfiler (GL2.1) - Setting capability 'GL::suppFloatTexture' to 1.
GFXCardProfiler (GL2.1) - Setting capability 'GL::suppMipLodBias' to 1.
GFXCardProfiler (GL2.1) - Setting capability 'GL::suppFragmentShader' to 1.
GFXCardProfiler (GL2.1) - Setting capability 'GL::APPLE::suppFence' to 0.
GFXCardProfiler (GL2.1) - Setting capability 'GL::Workaround::needsExplicitGenerateMipmap' to 0.
GFXCardProfiler (GL2.1) - Setting capability 'GL::Workaround::X1600DepthBufferCopy' to 0.
GFXCardProfiler (GL2.1) - Setting capability 'GL::Workaround::HD2600DepthBufferCopy' to 0.
- Loading card profiles...
- No card profile profile/GL21.cs exists
- No card profile profile/GL21.NVIDIACorporation.cs exists
- No card profile profile/GL21.NVIDIACorporation.GeForce9800GTX9800GTXPCISSE2.cs exists
- No card profile profile/GL21.NVIDIACorporation.GeForce9800GTX9800GTXPCISSE2.212.cs exists
Vertex shader log shaders/legacyTerrain/gl/terrainDynamicLightingMaskV.glsl:
Pixel shader log shaders/legacyTerrain/gl/terrainDynamicLightingMaskP.glsl:
Program shaders/legacyTerrain/gl/terrainDynamicLightingMaskV.glsl / shaders/legacyTerrain/gl/terrainDynamicLightingMaskP.glsl:
#2
12/18/2008 (4:05 am)
Confirmed on Windows XP SP4, latest DirectX runtime.
#3
12/18/2008 (5:03 am)
I asked about this during IRC hour and was told openGL was not meant to run on windows. The ogl version is just for the mac.
#5
From Matt's blog about the beta:
12/18/2008 (6:41 am)
I believe that is currently the case.From Matt's blog about the beta:
Quote:DirectX for Windows and OpenGL for the Mac. If you look you'll notice that we compile OpenGL on Windows but that is mostly for reference in Visual Studio...it won't actually work if you run it. Microsoft has made it pretty clear that they aren't interested in pushing forward with OpenGL on Windows and that is fine...DirectX is a really good graphics API and well worth working with on Windows.
If you are concerned about bringing OpenGL code over from another project then you have to understand that with TGEA you don't write OpenGL code (unless you are helping us bugfix ;). You write GFX code which TGEA automatically "converts" into DirectX on Windows on OpenGL on Mac. You will have to go through the process of converting your OpenGL rendering code to GFX rendering code (not very hard).
#6
You mention this is the Dec 16-17 Release? I was looking for updates and have not seen anything, are there incremental releases that I am missing somehow? I just re-downloaded the 1.8 from my account and it does seem to be newer dates. I just want to make sure I am getting the new updates as now when I place vehicles in this version there are no issues at all. Works like normal.
12/18/2008 (7:35 am)
@BrittonYou mention this is the Dec 16-17 Release? I was looking for updates and have not seen anything, are there incremental releases that I am missing somehow? I just re-downloaded the 1.8 from my account and it does seem to be newer dates. I just want to make sure I am getting the new updates as now when I place vehicles in this version there are no issues at all. Works like normal.
#7
Any idea if that's a planned feature or if that's just the way it works right now? Seems like two steps forward, one step back... but I guess it's better than nothing, right?
Does TGEA 1.8 have a common shader language as well or do we write GLSL and HLSL for each of our shaders?
@Randy - Check the ".plan" here GG hasn't announced anything in the "news" area on the site.
12/18/2008 (7:51 am)
Quote:I believe that is currently the case.
Any idea if that's a planned feature or if that's just the way it works right now? Seems like two steps forward, one step back... but I guess it's better than nothing, right?
Quote:You write GFX code which TGEA automatically "converts" into DirectX on Windows on OpenGL on Mac.
Does TGEA 1.8 have a common shader language as well or do we write GLSL and HLSL for each of our shaders?
@Randy - Check the ".plan" here GG hasn't announced anything in the "news" area on the site.
#8
Thanks
12/18/2008 (7:54 am)
@Tony, yes thanks. I just realized the name on the file was changed from BETA 1 to just 1.8. I read that post but did not realize it was actually another upddate:)Thanks
#9
Leaving the custom shader thing aside for a moment, why do you actually want OpenGL on Windows? All you get is crappy broken drivers with bad performance and lots and lots of issues (that's not to say you get something else on the Mac, but that's another topic... hehe)
12/18/2008 (7:59 am)
@TonyLeaving the custom shader thing aside for a moment, why do you actually want OpenGL on Windows? All you get is crappy broken drivers with bad performance and lots and lots of issues (that's not to say you get something else on the Mac, but that's another topic... hehe)
#10
I really dislike windows, I suffer with it every day and I have most of my development tools on it. I'd like my game to run on it for debugging and development. I'd like it to run on any operating system with the same set of open gl drivers.
Now TGEA offers me a different approach. Write GFX code and its translated to DirectX on windows and open gl on mac. Its not a bad idea. But, mark my words.... different versions of windows are not compatible with themselves. Direct X works one way one day and another the next.
If I were writing a game engine, I'd ignore the Xbox . I'd stick with Open GL because it would make my life simpler.... But that's just me. And I'm not really making any money at game development. So who am I to argue?
I would suggest however that TGEA detect the OS and only show the drivers available to it, to do otherwise is confusing.
12/18/2008 (5:44 pm)
Well, we don't really need open gl to run on windows. But you see the whole philosophy of open gl is that it runs on any platform. Naturally if you have this choice in windows TGEA 1.8 you and your customer might select it and expect that since its open gl.. it should work even on windows.I really dislike windows, I suffer with it every day and I have most of my development tools on it. I'd like my game to run on it for debugging and development. I'd like it to run on any operating system with the same set of open gl drivers.
Now TGEA offers me a different approach. Write GFX code and its translated to DirectX on windows and open gl on mac. Its not a bad idea. But, mark my words.... different versions of windows are not compatible with themselves. Direct X works one way one day and another the next.
If I were writing a game engine, I'd ignore the Xbox . I'd stick with Open GL because it would make my life simpler.... But that's just me. And I'm not really making any money at game development. So who am I to argue?
I would suggest however that TGEA detect the OS and only show the drivers available to it, to do otherwise is confusing.
#11
I definitely agree with you that TGEA should not allow selecting OpenGL on Windows when it's in fact not working.
I also see your point with OpenGL, though I disagree in some points. OpenGL support on Windows is abysmal and OpenGL itself has seen anything but good development during the last years whereas DirectX has developed into a very stable, very accessible, and very reliable platform for games. There is just no other platform today that comes close (well, no surprise here as gaming simply has focused 99% on that platform).
For a resource-constrained development house such as GG it really makes the most sense to choose one target on each platform and only maintain that rather than tieing up additional resources with maintaining multiple targets on some platforms (that means additional development, additional testing, additional documentation, etc.)
12/19/2008 (4:46 am)
@BrittonI definitely agree with you that TGEA should not allow selecting OpenGL on Windows when it's in fact not working.
I also see your point with OpenGL, though I disagree in some points. OpenGL support on Windows is abysmal and OpenGL itself has seen anything but good development during the last years whereas DirectX has developed into a very stable, very accessible, and very reliable platform for games. There is just no other platform today that comes close (well, no surprise here as gaming simply has focused 99% on that platform).
For a resource-constrained development house such as GG it really makes the most sense to choose one target on each platform and only maintain that rather than tieing up additional resources with maintaining multiple targets on some platforms (that means additional development, additional testing, additional documentation, etc.)
#12
12/19/2008 (7:44 am)
...
#13
The idea of OpenGL 'just working' on multiple OSs is great in theory, but in practice that doesn't seem to be working out so well.
12/19/2008 (8:42 am)
If the OpenGL layer and all new functionality could exhibit identical behavior on OS X and Windows, it would be something we would look into. Of course, if this was the case the OpenGL layer would work on Windows right now and this wouldn't be a problem.The idea of OpenGL 'just working' on multiple OSs is great in theory, but in practice that doesn't seem to be working out so well.
#14
Options are good, provided they work...
12/19/2008 (8:47 am)
Not that I know much about the topic, but I understand that you can use DirectX 10-ish capabilities in OpenGL on XP machines.Options are good, provided they work...
#15
12/19/2008 (8:56 am)
...
#16
12/19/2008 (9:54 am)
Okay, that makes sense. Just a bit more work to play around with cross-platform shaders, then. I guess I'll have to get a Mac some day anyway.
Torque Owner Britton LaRoche