mirror of
https://github.com/blawar/GLideN64.git
synced 2024-07-07 03:13:49 +00:00
Code refactor in GLInfo::init()
This commit is contained in:
parent
5c5c218e41
commit
10ec517fe9
|
@ -14,9 +14,9 @@
|
||||||
using namespace opengl;
|
using namespace opengl;
|
||||||
|
|
||||||
void GLInfo::init() {
|
void GLInfo::init() {
|
||||||
const char * strVersion = reinterpret_cast<const char *>(glGetString(GL_VERSION));
|
const char * strDriverVersion = reinterpret_cast<const char *>(glGetString(GL_VERSION));
|
||||||
isGLESX = strstr(strVersion, "OpenGL ES") != nullptr;
|
isGLESX = strstr(strDriverVersion, "OpenGL ES") != nullptr;
|
||||||
isGLES2 = strstr(strVersion, "OpenGL ES 2") != nullptr;
|
isGLES2 = strstr(strDriverVersion, "OpenGL ES 2") != nullptr;
|
||||||
if (isGLES2) {
|
if (isGLES2) {
|
||||||
majorVersion = 2;
|
majorVersion = 2;
|
||||||
minorVersion = 0;
|
minorVersion = 0;
|
||||||
|
@ -29,23 +29,22 @@ void GLInfo::init() {
|
||||||
|
|
||||||
|
|
||||||
LOG(LOG_VERBOSE, "OpenGL vendor: %s", glGetString(GL_VENDOR));
|
LOG(LOG_VERBOSE, "OpenGL vendor: %s", glGetString(GL_VENDOR));
|
||||||
const GLubyte * strRenderer = glGetString(GL_RENDERER);
|
const char * strRenderer = reinterpret_cast<const char *>(glGetString(GL_RENDERER));
|
||||||
const GLubyte * strDriverVersion = glGetString(GL_VERSION);
|
|
||||||
|
|
||||||
if (std::regex_match(std::string((const char*)strRenderer), std::regex("Adreno.*530")))
|
if (std::regex_match(std::string(strRenderer), std::regex("Adreno.*530")))
|
||||||
renderer = Renderer::Adreno530;
|
renderer = Renderer::Adreno530;
|
||||||
else if (std::regex_match(std::string((const char*)strRenderer), std::regex("Adreno.*540")) ||
|
else if (std::regex_match(std::string(strRenderer), std::regex("Adreno.*540")) ||
|
||||||
std::regex_match(std::string((const char*)strRenderer), std::regex("Adreno.*6\\d\\d")))
|
std::regex_match(std::string(strRenderer), std::regex("Adreno.*6\\d\\d")))
|
||||||
renderer = Renderer::Adreno_no_bugs;
|
renderer = Renderer::Adreno_no_bugs;
|
||||||
else if (strstr((const char*)strRenderer, "Adreno") != nullptr)
|
else if (strstr(strRenderer, "Adreno") != nullptr)
|
||||||
renderer = Renderer::Adreno;
|
renderer = Renderer::Adreno;
|
||||||
else if (strstr((const char*)strRenderer, "VideoCore IV") != nullptr)
|
else if (strstr(strRenderer, "VideoCore IV") != nullptr)
|
||||||
renderer = Renderer::VideoCore;
|
renderer = Renderer::VideoCore;
|
||||||
else if (strstr((const char*)strRenderer, "Intel") != nullptr)
|
else if (strstr(strRenderer, "Intel") != nullptr)
|
||||||
renderer = Renderer::Intel;
|
renderer = Renderer::Intel;
|
||||||
else if (strstr((const char*)strRenderer, "PowerVR") != nullptr)
|
else if (strstr(strRenderer, "PowerVR") != nullptr)
|
||||||
renderer = Renderer::PowerVR;
|
renderer = Renderer::PowerVR;
|
||||||
else if (strstr((const char*)strRenderer, "NVIDIA Tegra") != nullptr)
|
else if (strstr(strRenderer, "NVIDIA Tegra") != nullptr)
|
||||||
renderer = Renderer::Tegra;
|
renderer = Renderer::Tegra;
|
||||||
LOG(LOG_VERBOSE, "OpenGL renderer: %s", strRenderer);
|
LOG(LOG_VERBOSE, "OpenGL renderer: %s", strRenderer);
|
||||||
|
|
||||||
|
@ -65,7 +64,7 @@ void GLInfo::init() {
|
||||||
bool hasBuggyFragmentShaderInterlock = false;
|
bool hasBuggyFragmentShaderInterlock = false;
|
||||||
|
|
||||||
if (renderer == Renderer::Tegra) {
|
if (renderer == Renderer::Tegra) {
|
||||||
std::string strDriverVersionString((const char*)strDriverVersion);
|
std::string strDriverVersionString(strDriverVersion);
|
||||||
std::string nvidiaText = "NVIDIA";
|
std::string nvidiaText = "NVIDIA";
|
||||||
std::size_t versionPosition = strDriverVersionString.find(nvidiaText);
|
std::size_t versionPosition = strDriverVersionString.find(nvidiaText);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user