Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
detecting supported opengl extensions
12-15-2010, 12:29 AM,
#8
 
almos Wrote:BTW are float textures and half float pixel really necessary for this game? It runs OK without shaders, so I assume the textures are not float initially, and all shaders seem to compile fine, if this check is omitted. I tried to change "format=RGBA16" to "format=RGBA8" in render.conf.deferred (the only place it is used), and it didn't issue an error (but the mesa shader compiler hit a hardware limitation on my ati rv350...)

With shaders are turned on, a 16-bit floating point render target is used for the HDR light accumulation buffer while doing deferred rendering. With shaders turned off, the fixed function pipeline is used and there are no rendering targets except the framebuffer (the render.conf file only applies to the shader path).

Quote:AFAIK these extensions are only required by GL3.x, and AFAIK Mesa won't support them in the near future due to patent issues.

Extensions are by definition extensions to the specification. For example, any card that fully supports OpenGL 3.x supports 16-bit floating point render targets because they are required in the specification. My Geforce 7900 only supports OpenGL 2.1 but also support a number of extensions such as GL_ARB_texture_float. Extensions that get promoted to core features get the ARB or EXT removed.

Quote:I can't believe HDR and the other effects can't be implemented in GL2.1.

To keep the rendering code easy to maintain, there are essentially two rendering paths: shaders off and shaders on. With shaders off, the features required are so low that even very old cards that only support GL1 can run the game. With shaders on, there's a base level of features that need to be supported. They all work fine on my Geforce 7900GT, which is GL2.1 and 5 years old. While it may be possible to add a bunch of fallbacks where the rendering pipeline gets changed around and scaled back depending on the card's feature set, that would be a fair amount of work and very difficult to test given the huge number of different types of cards out there. In fact, it's already tough enough just making sure that the "shaders on" path has all of the correct checks so that someone with a card that supports an unusual combination of extensions doesn't get past the checks and crash -- as you have noticed!
Reply


Messages In This Thread
detecting supported opengl extensions - by almos - 12-14-2010, 12:15 PM
[No subject] - by NaN - 12-14-2010, 02:15 PM
[No subject] - by almos - 12-14-2010, 03:37 PM
[No subject] - by thelusiv - 12-14-2010, 05:21 PM
[No subject] - by almos - 12-14-2010, 06:46 PM
[No subject] - by NaN - 12-14-2010, 06:54 PM
[No subject] - by almos - 12-14-2010, 07:57 PM
[No subject] - by joevenzon_phpbb2_import3 - 12-15-2010, 12:29 AM

Forum Jump:


Users browsing this thread: 1 Guest(s)