| 1075 | #endif |
| 1076 | |
| 1077 | static inline GLenum glGetFormatFromInternalFormat( const GLenum internalFormat ) |
| 1078 | { |
| 1079 | switch ( internalFormat ) |
| 1080 | { |
| 1081 | // |
| 1082 | // 8 bits per component |
| 1083 | // |
| 1084 | case GL_R8: return GL_RED; // 1-component, 8-bit unsigned normalized |
| 1085 | case GL_RG8: return GL_RG; // 2-component, 8-bit unsigned normalized |
| 1086 | case GL_RGB8: return GL_RGB; // 3-component, 8-bit unsigned normalized |
| 1087 | case GL_RGBA8: return GL_RGBA; // 4-component, 8-bit unsigned normalized |
| 1088 | |
| 1089 | case GL_R8_SNORM: return GL_RED; // 1-component, 8-bit signed normalized |
| 1090 | case GL_RG8_SNORM: return GL_RG; // 2-component, 8-bit signed normalized |
| 1091 | case GL_RGB8_SNORM: return GL_RGB; // 3-component, 8-bit signed normalized |
| 1092 | case GL_RGBA8_SNORM: return GL_RGBA; // 4-component, 8-bit signed normalized |
| 1093 | |
| 1094 | case GL_R8UI: return GL_RED; // 1-component, 8-bit unsigned integer |
| 1095 | case GL_RG8UI: return GL_RG; // 2-component, 8-bit unsigned integer |
| 1096 | case GL_RGB8UI: return GL_RGB; // 3-component, 8-bit unsigned integer |
| 1097 | case GL_RGBA8UI: return GL_RGBA; // 4-component, 8-bit unsigned integer |
| 1098 | |
| 1099 | case GL_R8I: return GL_RED; // 1-component, 8-bit signed integer |
| 1100 | case GL_RG8I: return GL_RG; // 2-component, 8-bit signed integer |
| 1101 | case GL_RGB8I: return GL_RGB; // 3-component, 8-bit signed integer |
| 1102 | case GL_RGBA8I: return GL_RGBA; // 4-component, 8-bit signed integer |
| 1103 | |
| 1104 | case GL_SR8: return GL_RED; // 1-component, 8-bit sRGB |
| 1105 | case GL_SRG8: return GL_RG; // 2-component, 8-bit sRGB |
| 1106 | case GL_SRGB8: return GL_RGB; // 3-component, 8-bit sRGB |
| 1107 | case GL_SRGB8_ALPHA8: return GL_RGBA; // 4-component, 8-bit sRGB |
| 1108 | |
| 1109 | // |
| 1110 | // 16 bits per component |
| 1111 | // |
| 1112 | case GL_R16: return GL_RED; // 1-component, 16-bit unsigned normalized |
| 1113 | case GL_RG16: return GL_RG; // 2-component, 16-bit unsigned normalized |
| 1114 | case GL_RGB16: return GL_RGB; // 3-component, 16-bit unsigned normalized |
| 1115 | case GL_RGBA16: return GL_RGBA; // 4-component, 16-bit unsigned normalized |
| 1116 | |
| 1117 | case GL_R16_SNORM: return GL_RED; // 1-component, 16-bit signed normalized |
| 1118 | case GL_RG16_SNORM: return GL_RG; // 2-component, 16-bit signed normalized |
| 1119 | case GL_RGB16_SNORM: return GL_RGB; // 3-component, 16-bit signed normalized |
| 1120 | case GL_RGBA16_SNORM: return GL_RGBA; // 4-component, 16-bit signed normalized |
| 1121 | |
| 1122 | case GL_R16UI: return GL_RED; // 1-component, 16-bit unsigned integer |
| 1123 | case GL_RG16UI: return GL_RG; // 2-component, 16-bit unsigned integer |
| 1124 | case GL_RGB16UI: return GL_RGB; // 3-component, 16-bit unsigned integer |
| 1125 | case GL_RGBA16UI: return GL_RGBA; // 4-component, 16-bit unsigned integer |
| 1126 | |
| 1127 | case GL_R16I: return GL_RED; // 1-component, 16-bit signed integer |
| 1128 | case GL_RG16I: return GL_RG; // 2-component, 16-bit signed integer |
| 1129 | case GL_RGB16I: return GL_RGB; // 3-component, 16-bit signed integer |
| 1130 | case GL_RGBA16I: return GL_RGBA; // 4-component, 16-bit signed integer |
| 1131 | |
| 1132 | case GL_R16F: return GL_RED; // 1-component, 16-bit floating-point |
| 1133 | case GL_RG16F: return GL_RG; // 2-component, 16-bit floating-point |
| 1134 | case GL_RGB16F: return GL_RGB; // 3-component, 16-bit floating-point |
no outgoing calls
no test coverage detected