Hi list,
I've been trying to write the output of a fragment shader to
LUMINANCE texture, but all I get then is a completely black texture.
Question: do FBOs support writing directly to a texture with fewer
than 4 components - how?
If not, is there any workaround?
Unfortunately, no. Early NVIDIA drivers on Linux and Windows
supported rendering to 1 and 2-component textures with FBO, but they
later took it out because it wasn't properly defined in OpenGL. This
is an annoyance if you are trying to port a Direct3D game that wants
to render to an R16[F] or R32[F] for use as a single-component shadow
texture. The hardware is perfectly capable of doing this, but the
functionality isn't exposed under OpenGL. In order to render to the
shadow map [using the same algorithm], you end up needing to use 4-
component texture formats and ignoring the other 3 components, which
will take up 4 times the VRAM.
I guess this is something generic to add to the list of things that
Apple could do to improve gaming on the Mac:
Make sure that all graphics hardware features that are exposed on
other platforms are available on the Mac as well.
If this means creating an APPLE_* extension to GL to do so, then so
be it.
This particular issue would be great to see as a proper ARB extension
or as part of OpenGL 3.0. From conversations with people at both
Apple and NVIDIA, I know this issue has been discussed, but at the
moment, it's still one area where the Windows drivers provide more
functionality than Mac OS.
Jason Green
Developer, TransGaming, Inc.
email@hidden
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Mac-opengl mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/mac-opengl/email@hidden