O OpenGL ES é um subconjunto da especificação original do OpenGL e foi projetado para sistemas embarcados, como smartphones. Eu não estou 100% certo porque os números da versão não correspondem, mas eles não. A última versão é 4.5 para OpenGL e 3.2 para OpenGL ES. Isso explica o motivo da parte do OpenGL ES de sua saída. No seu caso, você tem suporte para as versões mais recentes do OpenGL e do OpenGL ES.
Você notará que as entradas OpenGL e OpenGL ES possuem uma string de versão e uma string de versão de linguagem de sombreamento. Antes do OpenGL 3.3, o número da versão do OpenGL e o número da versão do idioma de sombreamento não correspondiam. Acredito que essa é a razão pela qual eles têm entradas separadas na saída (já que obviamente podem ser diferentes para hardware mais antigo). Como visto em sua saída, o número da versão (4.5) corresponde à versão da linguagem de sombreamento (também 4.5).
A parte mais difícil (e a parte da qual não tenho 100% de certeza) é a "string de versão do OpenGL".
Pelo que vi em várias máquinas completamente diferentes, isso parece estar limitado à versão 3.0. A versão da linguagem de sombreamento para o 3.0 é 1.3, portanto, a string de versão do idioma de sombreamento faz sentido para essa versão do OpenGL. No entanto, por que a versão é limitada a 3.0? Meus pensamentos são os seguintes:
A versão 3.0 introduziu a desaprovação (consulte este link ). É também de onde vieram os dois perfis separados, "Core" e "Compatibility". Qualquer implementação do OpenGL só precisa implementar a especificação "core" para ser válida.
Se você ler as notas de versão do Mesa para uma versão específica, verá uma declaração relacionada a esse problema de perfil de compatibilidade / núcleo. O texto a seguir foi retirado das notas de lançamento da última versão 17.0.0 aqui :
Mesa 17.0.0 implements the OpenGL 4.5 API, but the version reported by glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) / glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used. Some drivers don't support all the features required in OpenGL 4.5. OpenGL 4.5 is only available if requested at context creation because compatibility contexts are not supported.
Observe a última parte "O OpenGL 4.5 só estará disponível se solicitado na criação do contexto, porque os contextos de compatibilidade não são suportados" . Portanto, acho que a "cadeia de versão do OpenGL" é a versão suportada para um contexto de perfil de "compatibilidade" (ou, em outras palavras, para suporte a qualquer recurso obsoleto anterior à versão 3.0).