Is there an explanation somewhere about the decision to use RED (R,0,0,1) instead of INTENSITY (I,I,I,I) behavior for single-channel textures in GPU programming? It seems like the universally wrong method to standardize, but maybe I'm missing something?
-
-
It is at least true in OpenGL - textures by default do R,0,0,1 for mono, and there is no way to have them default to R,R,R,R. You _must_ create samplers (at least) if you want that to happen. And I just doubt that hardware generally prefers R,0,0,1 to R,R,R,R...
Show this threadThanks. Twitter will use this to make your timeline better. UndoUndo
-
-
-
There are also other legacy image formats like ALPHA (0, 0, 0, A) and LUMINANCE (L, L, L, 1). According to this (https://www.gamedev.net/forums/topic/634850-do-luminance-texture39s-still-exist-to-opengl/ …) the new way separates number of channels (R, RG, RGB, etc.) from usage (intensity, alpha, etc.) which can be set up using the swizzle mask.
-
The default behavior for 1-channel textures then arises from the default swizzle mask which is RGBA, but the GBA channels fall back to 0/1 if the texture does not have the corresponding channel, resulting in (R, 0, 0, 1).
- Show replies
New conversation -
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.