PyOpenGL-accelerate
Cython-coded accelerators for PyOpenGL
What it is and what it does
PyOpenGL-accelerate is a companion package to PyOpenGL that provides Cython-compiled C extensions for performance-critical operations. PyOpenGL itself is a pure-Python OpenGL binding, which can be slow for graphics-heavy workloads; this package replaces slow Python code paths with compiled C equivalents to improve rendering and state-management performance.
The package is not a standalone library—it is an optional enhancement that PyOpenGL detects and uses automatically if installed. It ships as pre-built wheels for Python versions cp310, cp311, cp312, and cp313 on Windows, Linux (including musllinux), and macOS (including ARM64), reducing build friction. The repository is actively maintained and generates binary builds through CI/CD, though source builds are also supported for platforms without pre-built wheels.
Use it for:
- Accelerating 3D rendering loops in graphics applications that use PyOpenGL and need better frame rates.
- Improving performance of OpenGL state management and matrix operations in scientific visualization tools.
- Speeding up batch geometry operations and shader state changes in game engines or graphics editors built on PyOpenGL.
- Reducing CPU overhead in real-time graphics applications where PyOpenGL would otherwise be a bottleneck.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides Cython-compiled C extensions that accelerate common operations in PyOpenGL, targeting performance bottlenecks in the main library.
Yes, if you use PyOpenGL for performance-sensitive graphics work. The package is actively maintained, has no known vulnerabilities, installs easily via pre-built wheels, and carries a permissive BSD license. Install it alongside PyOpenGL to get automatic acceleration without code changes. Skip it only if your PyOpenGL usage is light or CPU performance is not a concern.
Install
pyopengl-accelerate on PyPI
pip
pip install pyopengl-accelerateuv
uv add pyopengl-acceleratepoetry
poetry add pyopengl-accelerateInstalling PyOpenGL-accelerate
Before you install
Medium install friction due to compiled wheels for multiple Python versions and platforms (cp310, cp311, cp312, cp313, Windows/Linux/macOS/ARM). The package is actively maintained with recent commits and binary builds available, reducing the need to compile from source in most cases.
License in practice
BSD license (permissive) with a non-liability clause. You may use, modify, and distribute freely provided you retain copyright notices and disclaimers; commercial use is permitted.
Quickstart
pip install pyopengl-accelerate
# PyOpenGL will automatically use accelerators if available
Requires PyOpenGL to be installed separately; accelerators are optional but recommended for acceptable performance.
Verify before relying
- Whether accelerators are automatically loaded by PyOpenGL or require explicit configuration after installation.
- Specific performance improvement magnitude for typical PyOpenGL workloads.
- Whether source builds from the PyOpenGL repository work reliably on all supported platforms.
Package facts
| License | NOTE: THIS SOFTWARE IS NOT FAULT TOLERANT AND SHOULD NOT BE USED IN ANY SITUATION ENDANGERING HUMAN LIFE OR PROPERTY. OpenGL-ctypes PyOpenGL-accelerate License Copyright (c) 2005-2009, Michael C.… (full text in the JSON record) (permissive) |
| Python support | not specified |
| Install friction | medium — platform-specific wheel |
| Runtime dependencies | none |
| Maintenance | actively maintained — 361 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 1,483,863/month — #3,847 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: pyopengl_accelerate-3.1.10-cp310-cp310-macosx_11_0_arm64.whl; pyopengl_accelerate-3.1.10-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl; pyopengl_accelerate-3.1.10-cp310-cp310-musllinux_1_2_x86_64.whl; pyopengl_accelerate-3.1.10-cp310-cp310-win32.whl; pyopengl_accelerate-3.1.10-cp310-cp310-win_amd64.whl; pyopengl_accelerate-3.1.10-cp311-cp311-macosx_11_0_arm64.whl; pyopengl_accelerate-3.1.10-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl; pyopengl_accelerate-3.1.10-cp311-cp311-musllinux_1_2_x86_64.whl; pyopengl_accelerate-3.1.10-cp311-cp311-win32.whl; pyopengl_accelerate-3.1.10-cp311-cp311-win_amd64.whl; pyopengl_accelerate-3.1.10-cp312-cp312-macosx_11_0_arm64.whl; pyopengl_accelerate-3.1.10-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl; pyopengl_accelerate-3.1.10-cp312-cp312-musllinux_1_2_x86_64.whl; pyopengl_accelerate-3.1.10-cp312-cp312-win32.whl; pyopengl_accelerate-3.1.10-cp312-cp312-win_amd64.whl; pyopengl_accelerate-3.1.10-cp313-cp313-macosx_11_0_arm64.whl; pyopengl_accelerate-3.1.10-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl; pyopengl_accelerate-3.1.10-cp313-cp313-musllinux_1_2_x86_64.whl; pyopengl_accelerate-3.1.10-cp313-cp313-win32.whl; pyopengl_accelerate-3.1.10-cp313-cp313-win_amd64.whl
Keywords: Graphics, 3D, OpenGL, GLU, GLUT, GLE, GLX, EXT, ARB, Mesa, PyOpenGL
Tags
More Python Modules packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
PyYAMLPyYAML parses and emits YAML 1.1 data format,…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
annotated-typesProvides reusable metadata objects for use with…
permissive · top 100 on PyPI
typing-inspectionProvides runtime tools to inspect and…
permissive · top 100 on PyPI
PyOpenGLPyOpenGL provides standard OpenGL bindings for…
permissive · top 5,000 on PyPI
modernglModernGL is a Python wrapper over OpenGL Core…
permissive · top 15,000 on PyPI
vispyVisPy is a GPU-accelerated 2D/3D visualization…
permissive · top 5,000 on PyPI
open3dOpen3D provides data structures and algorithms…
permissive · top 5,000 on PyPI
moderngl-windowmoderngl-window simplifies OpenGL window…
permissive · top 15,000 on PyPI
open3d-cpuOpen3D-cpu provides CPU-based 3D data…
permissive · top 15,000 on PyPI
pyrenderPyrender renders 3D scenes to images and…
permissive · top 5,000 on PyPI
pyopenclPyOpenCL provides Python bindings to OpenCL,…
permissive · top 15,000 on PyPI
pyobjc-framework-MetalFXProvides Python bindings to Apple's MetalFX…
permissive · top 15,000 on PyPI
pyglmPyGLM provides Python bindings to OpenGL…
permissive · top 15,000 on PyPI