MCPcopy Create free account
hub / github.com/PolygonTek/BlueshiftEngine / DetermineRenderQuality

Function DetermineRenderQuality

Source/Player/AndroidMain.cpp:54–144  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

52};
53
54static RenderQuality::Enum DetermineRenderQuality() {
55 const char *rendererString = (const char *)glGetString(GL_RENDERER);
56
57 BE1::AndroidGPUInfo gpuInfo = BE1::AndroidGPUInfo::GetFromOpenGLRendererString(rendererString);
58
59 RenderQuality::Enum renderQuality = RenderQuality::High;
60
61 switch (gpuInfo.processor) {
62 case BE1::AndroidGPUInfo::Processor::Qualcomm_Adreno:
63 if (gpuInfo.model >= 600) {
64 if (gpuInfo.model <= 612) {
65 renderQuality = RenderQuality::Low;
66 } else if (gpuInfo.model <= 620) {
67 renderQuality = RenderQuality::Medium;
68 }
69 } else if (gpuInfo.model >= 500) {
70 if (gpuInfo.model < 510) {
71 renderQuality = RenderQuality::Low;
72 } else if (gpuInfo.model < 530) {
73 renderQuality = RenderQuality::Medium;
74 }
75 } else if (gpuInfo.model >= 400) {
76 if (gpuInfo.model < 420) {
77 renderQuality = RenderQuality::Low;
78 } else if (gpuInfo.model <= 430) {
79 renderQuality = RenderQuality::Medium;
80 }
81 } else {
82 renderQuality = RenderQuality::Low;
83 }
84 break;
85 case BE1::AndroidGPUInfo::Processor::ARM_MaliG:
86 break;
87 case BE1::AndroidGPUInfo::Processor::ARM_MaliT:
88 if (gpuInfo.model >= 800) {
89 if (gpuInfo.model < 880) {
90 renderQuality = RenderQuality::Low;
91 } else {
92 renderQuality = RenderQuality::Medium;
93 }
94 } else if (gpuInfo.model >= 700) {
95 if (gpuInfo.model < 760) {
96 renderQuality = RenderQuality::Low;
97 } else {
98 renderQuality = RenderQuality::Medium;
99 }
100 } else {
101 renderQuality = RenderQuality::Low;
102 }
103 break;
104 case BE1::AndroidGPUInfo::Processor::ARM_Mali:
105 renderQuality = RenderQuality::Low;
106 break;
107 case BE1::AndroidGPUInfo::Processor::PowerVR_RogueG:
108 if (gpuInfo.model >= 6000) {
109 if (gpuInfo.model <= 6430) {
110 renderQuality = RenderQuality::Low;
111 } else {

Callers 1

InitDisplayFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected