Esempio n. 1
0
 def get_info_GLSL_str(self):
     if not self.isReady:
         sMsg = ""
     else:
         val = GL.glGetString(GL.GL_SHADING_LANGUAGE_VERSION)
         sMsg = "GLSL       : v" + ctypes.string_at(val).decode()
     return sMsg
Esempio n. 2
0
 def get_info_GLSL_str(self):
   if not self.isReady:
     sMsg = ""
   else:  
     val  = GL.glGetString(GL.GL_SHADING_LANGUAGE_VERSION)
     sMsg = "GLSL       : v" +ctypes.string_at(val).decode()
   return sMsg  
Esempio n. 3
0
def check_requirements(target_gl, target_glsl):
    client_glsl = bytearray()
    for i in glGetString(GL_SHADING_LANGUAGE_VERSION):
        if i != 0: client_glsl.append(i)
        else: break

    client_glsl = [ int(v) for v in re.match(r"(\d+)\.(\d+)", client_glsl.decode('utf8')).groups() ]
    
    gl_ok = gl_info.have_version(*target_gl)
    glsl_ok = ((client_glsl[0] > target_glsl[0]) or 
              (client_glsl[0] == target_glsl[0] and client_glsl[1] >= target_glsl[1]))
    
    return gl_ok and glsl_ok   
Esempio n. 4
0
def check_requirements(target_gl, target_glsl):
    client_glsl = bytearray()
    for i in glGetString(GL_SHADING_LANGUAGE_VERSION):
        if i != 0: client_glsl.append(i)
        else: break
    
    client_glsl = [ int(v) for v in client_glsl.decode('utf8').split('.') ]
    
    gl_ok = gl_info.have_version(*target_gl)
    glsl_ok = ((client_glsl[0] > target_glsl[0]) or 
              (client_glsl[0] == target_glsl[0] and client_glsl[1] >= target_glsl[1]))
    
    return gl_ok and glsl_ok   
def get_graphics_information() -> Dict:
    options = {
        'vendor': gl.GL_VENDOR,
        'renderer': gl.GL_RENDERER, 'version': gl.GL_VERSION, 'shading-language-version':
            gl.GL_SHADING_LANGUAGE_VERSION,
        # 'extensions': gl.GL_EXTENSIONS
    }

    results = {}
    for o, code in options.items():
        a = gl.glGetString(code)
        res = asstr(cast(a, c_char_p).value)
        results[o] = res
    return results
Esempio n. 6
0
def getString(parName):
    """Get a single string parameter value, return it as a Python UTF-8 string.

    Parameters
    ----------
    pName : :obj:`int'
        OpenGL property enum to query (e.g. GL_VENDOR).

    Returns
    -------
    str

    """
    val = ctypes.cast(GL.glGetString(parName), ctypes.c_char_p).value
    return val.decode('UTF-8')
def get_graphics_information() -> Dict:
    options = {
        "vendor": gl.GL_VENDOR,
        "renderer": gl.GL_RENDERER,
        "version": gl.GL_VERSION,
        "shading-language-version": gl.GL_SHADING_LANGUAGE_VERSION,
        # 'extensions': gl.GL_EXTENSIONS
    }

    results = {}
    for o, code in options.items():
        a = gl.glGetString(code)
        b: bytes = cast(a, c_char_p).value
        res = b.decode()
        results[o] = res
    return results
Esempio n. 8
0
 def get_str(self, enum: gl.GLenum) -> str:
     """Get a string limit"""
     return cast(gl.glGetString(enum),
                 c_char_p).value.decode()  # type: ignore
Esempio n. 9
0
import pyglet.gl as gl
gl_version = gl.glGetString(gl.GL_VERSION)

print(gl_version)
Esempio n. 10
0
import json
import pyglet

pyglet.options['headless'] = True
from pyglet import gl
from ctypes import c_char_p, cast
options = {
    "vendor": gl.GL_VENDOR,
    "renderer": gl.GL_RENDERER,
    "version": gl.GL_VERSION,
    "shading-language-version": gl.GL_SHADING_LANGUAGE_VERSION,
    # 'extensions': gl.GL_EXTENSIONS
}

results = {}
for o, code in options.items():
    a = gl.glGetString(code)
    b: bytes = cast(a, c_char_p).value
    res = b.decode()
    results[o] = res
print(json.dumps(results, indent=2))