目录
OpenGL 工具函数¶
在 1.0.7 版本加入.
- kivy.graphics.opengl_utils.gl_get_extensions() list¶
返回可用的OpenGL扩展列表。列表中的所有名称均已去除开头的`GL_`前缀(如果存在),并转换为小写。
>>> print(gl_get_extensions()) ['arb_blend_func_extended', 'arb_color_buffer_float', 'arb_compatibility', 'arb_copy_buffer'... ]
- kivy.graphics.opengl_utils.gl_get_texture_formats() tuple¶
返回由kivy识别的纹理格式列表。该纹理列表仅供参考,但可能不受您的硬件支持。如果您需要支持的纹理列表,必须按如下方式过滤该列表::
supported_fmts = [gl_has_texture_format(x) for x in gl_get_texture_formats()]
- kivy.graphics.opengl_utils.gl_get_version() tuple¶
返回从GL_VERSION解析出的OpenGL(主版本号,次版本号)。
在 1.2.0 版本加入.
- kivy.graphics.opengl_utils.gl_get_version_major() int¶
返回OpenGL版本的主要组件。
在 1.2.0 版本加入.
- kivy.graphics.opengl_utils.gl_get_version_minor() int¶
返回OpenGL版本的小版本号。
在 1.2.0 版本加入.
- kivy.graphics.opengl_utils.gl_has_capability(int cap) int¶
返回一个OpenGL能力的状态。这是一个自动发现Kivy可能需要的所有能力的封装。当前测试的能力包括:
GLCAP_BGRA:测试BGRA纹理格式的支持情况
GLCAP_NPOT:测试非二次幂纹理的支持情况
GLCAP_S3TC:测试对S3TC纹理(DXT1、DXT3、DXT5)的支持
GLCAP_DXT1:测试DXT纹理(S3TC的子集)的支持情况。
GLCAP_ETC1:测试ETC1纹理的支持情况
- kivy.graphics.opengl_utils.gl_has_extension(name) int¶
检查某个OpenGL扩展是否可用。如果名称以`GL_`开头,测试时会将其去除并转换为小写。
>>> gl_has_extension('NV_get_tex_image') False >>> gl_has_extension('OES_texture_npot') True
- kivy.graphics.opengl_utils.gl_has_texture_conversion(fmt) int¶
如果纹理可以转换为原生格式,则返回1。
- kivy.graphics.opengl_utils.gl_has_texture_format(fmt) int¶
返回您的系统是否原生支持或通过转换支持某种纹理格式。例如,如果您的显卡不支持“bgra”,我们能够在软件模式下将其转换为“rgba”。
- kivy.graphics.opengl_utils.gl_has_texture_native_format(fmt) int¶
如果纹理格式是原生处理的,则返回1。
>>> gl_has_texture_format('azdmok') 0 >>> gl_has_texture_format('rgba') 1 >>> gl_has_texture_format('s3tc_dxt1') [INFO ] [GL ] S3TC texture support is available [INFO ] [GL ] DXT1 texture support is available 1
- kivy.graphics.opengl_utils.gl_register_get_size(int constid, int size)¶
在glGet*中使用的OpenGL常量与元素数量之间注册一个关联。
例如,GPU_MEMORY_INFO_DEDICATED_VIDMEM_NVX 是一个特殊的 pname,它将返回整数 1(仅限 NVIDIA)。
>>> GPU_MEMORY_INFO_DEDICATED_VIDMEM_NVX = 0x9047 >>> gl_register_get_size(GPU_MEMORY_INFO_DEDICATED_VIDMEM_NVX, 1) >>> glGetIntegerv(GPU_MEMORY_INFO_DEDICATED_VIDMEM_NVX)[0] 524288