Версия 2.1.0

Quick search

Table Of Contents

Утилиты OpenGL

Добавлено в версии 1.0.7.

kivy.graphics.opengl_utils.gl_get_extensions() список

Возвращает список доступных расширений 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() кортеж

Возвращает список форматов текстур, распознаваемых Kivy. Список текстур информативен, но может не поддерживаться вашим оборудованием. Если вам нужен список поддерживаемых текстур, вы должны отфильтровать этот список следующим образом:

supported_fmts = [gl_has_texture_format(x) for x in gl_get_texture_formats()]
kivy.graphics.opengl_utils.gl_get_version() кортеж

Возвращает (major, minor) версию OpenGL, извлеченную из GL_VERSION.

Добавлено в версии 1.2.0.

kivy.graphics.opengl_utils.gl_get_version_major() целое число

Возвращает главный компонент версии OpenGL.

Добавлено в версии 1.2.0.

kivy.graphics.opengl_utils.gl_get_version_minor() целое число

Возвращает минорный компонент версии OpenGL.

Добавлено в версии 1.2.0.

kivy.graphics.opengl_utils.gl_has_capability(int cap) целое число

Возвращает состояние возможности 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) целое число

Проверяет доступность расширения 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) целое число

Возвращает 1, если текстуру можно преобразовать в собственный формат.

kivy.graphics.opengl_utils.gl_has_texture_format(fmt) целое число

Возвращает, поддерживается ли формат текстуры вашей системой нативно или посредством конвертации. Например, если ваша карта не поддерживает 'bgra', мы можем преобразовать его в 'rgba', но только в программном режиме.

kivy.graphics.opengl_utils.gl_has_texture_native_format(fmt) целое число

Возвращает 1, если формат текстуры обрабатывается нативно.

>>> gl_has_texture_format('azdmok')
0
>>> gl_has_texture_format('rgba')
1
>>> gl_has_texture_format('s3tc_dxt1')
[INFO   ] [GL          ] Поддержка текстуры S3TC доступна
[INFO   ] [GL          ] Поддержка текстуры DXT1 доступна
1
kivy.graphics.opengl_utils.gl_register_get_size(int constid, int size)

Регистрирует ассоциацию между константой OpenGL, используемой в glGet*, и количеством элементов.

Например, GPU_MEMORY_INFO_DEDICATED_VIDMEM_NVX - это специальное имя, которое вернет целое число 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