ModernGL
ModernGL: Modern OpenGL Library
A Python library providing an OpenGL rendering interface for graphics applications, games and computer vision projects with modern OpenGL features
What is ModernGL?
ModernGL is an OpenGL modernization package for Python designed to ease the creation of real time graphics applications and 3D games. Its goal is providing an object oriented GL API that is easy to use and focused on productivity without sacrificing performance.
Some key features of ModernGL include:
- Unified OpenGL 3.3+ Core and GLES 2/3 API with support for textures, vertex buffers, framebuffers, compute shaders and other modern engine requirements.
- Cross platform support for Windows, Linux, macOS, Raspberry Pi, browsers and mobile platforms.
- Integration with Python's Buffer Protocol providing zero copy GPU/CPU data transfers without additional memory overhead.
- Just-in-time shader compilation approach removing the separate build step, allowing quick iterations.
- Clean and pythonic object oriented API supporting descriptive names rather than integers for referring to resources.
ModernGL is designed to work great with numpy and Python built in support for tuples, lists and dictionaries. It aims to provide both the simplicity and ease of use required for education and learning alongside capabilities for building complex realtime graphics applications.
ModernGL Features
Features
- Pythonic interface to OpenGL
- Support for OpenGL 3.3+ core and ES profiles
- Works across different platforms like Windows, Linux, macOS
- Integrated shader compiler
- Object oriented resource management
- Compute shaders support
- Multi-threaded rendering
- Integration with PIL/Pillow for image loading
Pricing
- Open Source
Pros
Cons
Official Links
Reviews & Ratings
Login to ReviewThe Best ModernGL Alternatives
View all ModernGL alternatives with detailed comparison →
Top Development and Graphics & Rendering and other similar apps like ModernGL
Vulkan
PyOpenGL