MCPcopy Create free account
hub / github.com/defold/defold / GetTextureFormatBitsPerPixel

Function GetTextureFormatBitsPerPixel

engine/graphics/src/graphics.cpp:762–807  ·  view source on GitHub ↗

For estimating resource size

Source from the content-addressed store, hash-verified

760
761 // For estimating resource size
762 uint32_t GetTextureFormatBitsPerPixel(TextureFormat format)
763 {
764 switch(format)
765 {
766 case TEXTURE_FORMAT_LUMINANCE: return 8;
767 case TEXTURE_FORMAT_LUMINANCE_ALPHA: return 16;
768 case TEXTURE_FORMAT_RGB: return 24;
769 case TEXTURE_FORMAT_RGBA: return 32;
770 case TEXTURE_FORMAT_RGB_16BPP: return 16;
771 case TEXTURE_FORMAT_RGBA_16BPP: return 16;
772 case TEXTURE_FORMAT_RGB_ETC1: return 4;
773 case TEXTURE_FORMAT_R_ETC2: return 8;
774 case TEXTURE_FORMAT_RG_ETC2: return 8;
775 case TEXTURE_FORMAT_RGBA_ETC2: return 8;
776 case TEXTURE_FORMAT_RGB_BC1: return 4;
777 case TEXTURE_FORMAT_RGBA_BC3: return 4;
778 case TEXTURE_FORMAT_R_BC4: return 8;
779 case TEXTURE_FORMAT_RG_BC5: return 8;
780 case TEXTURE_FORMAT_RGBA_BC7: return 8;
781 case TEXTURE_FORMAT_DEPTH: return 24;
782 case TEXTURE_FORMAT_STENCIL: return 8;
783 case TEXTURE_FORMAT_RGB_PVRTC_2BPPV1: return 2;
784 case TEXTURE_FORMAT_RGB_PVRTC_4BPPV1: return 4;
785 case TEXTURE_FORMAT_RGBA_PVRTC_2BPPV1: return 2;
786 case TEXTURE_FORMAT_RGBA_PVRTC_4BPPV1: return 4;
787 case TEXTURE_FORMAT_RGB16F: return 48;
788 case TEXTURE_FORMAT_RGB32F: return 96;
789 case TEXTURE_FORMAT_RGBA16F: return 64;
790 case TEXTURE_FORMAT_RGBA32F: return 128;
791 case TEXTURE_FORMAT_R16F: return 16;
792 case TEXTURE_FORMAT_RG16F: return 32;
793 case TEXTURE_FORMAT_R32F: return 32;
794 case TEXTURE_FORMAT_RG32F: return 64;
795 case TEXTURE_FORMAT_RGBA32UI: return 128;
796 case TEXTURE_FORMAT_BGRA8U: return 32;
797 case TEXTURE_FORMAT_R32UI: return 32;
798 default: break;
799 }
800
801 // Not straight-forward to return a BPP value here.
802 if (IsTextureFormatASTC(format))
803 return 0;
804
805 assert(false && "Unknown texture format");
806 return TEXTURE_FORMAT_COUNT;
807 }
808
809 uint32_t GetGraphicsTypeDataSize(Type type)
810 {

Callers 14

ValidateTextureParamsFunction · 0.85
GetBufferSizeFunction · 0.85
OpenGLSetTextureFunction · 0.85
TEST_FFunction · 0.85
VulkanSetTextureInternalFunction · 0.85
AsyncProcessCallbackFunction · 0.85

Calls 2

IsTextureFormatASTCFunction · 0.85
assertFunction · 0.50

Tested by 1

TEST_FFunction · 0.68