All Projects → goxjs → Gl

goxjs / Gl

Licence: bsd-3-clause
Go cross-platform OpenGL bindings.

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to Gl

Magnum Examples
Examples for the Magnum C++11/C++14 graphics engine
Stars: ✭ 180 (+21.62%)
Mutual labels:  opengl, webgl, opengl-es
Magnum Plugins
Plugins for the Magnum C++11/C++14 graphics engine
Stars: ✭ 66 (-55.41%)
Mutual labels:  opengl, webgl, opengl-es
Magnum Bootstrap
Bootstrap projects for Magnum C++11/C++14 graphics engine
Stars: ✭ 69 (-53.38%)
Mutual labels:  opengl, webgl, opengl-es
Flextgl
OpenGL and Vulkan header and loader generator.
Stars: ✭ 180 (+21.62%)
Mutual labels:  opengl, webgl, opengl-es
Rabbittoolbox
🤸🏾‍♀️👗开源的动画渲染软件,提倡以简单、易用,高质量的物理演算以及渲染质量和性能,为喜爱二次元动画的用户降低视频制作门槛
Stars: ✭ 309 (+108.78%)
Mutual labels:  opengl, webgl, opengl-es
Pmtech
Lightweight, multi-platform, data-oriented game engine.
Stars: ✭ 478 (+222.97%)
Mutual labels:  opengl, webgl, opengl-es
Glow
GL on Whatever: a set of bindings to run GL anywhere and avoid target-specific code
Stars: ✭ 316 (+113.51%)
Mutual labels:  opengl, webgl, opengl-es
Filament
Filament is a real-time physically based rendering engine for Android, iOS, Windows, Linux, macOS, and WebGL2
Stars: ✭ 13,215 (+8829.05%)
Mutual labels:  opengl, webgl, opengl-es
3d Game Shaders For Beginners
🎮 A step-by-step guide to implementing SSAO, depth of field, lighting, normal mapping, and more for your 3D game.
Stars: ✭ 11,698 (+7804.05%)
Mutual labels:  opengl, webgl
Pharaohstroy
A maplestory IDE which can develop the multi-platform maplestory game
Stars: ✭ 69 (-53.38%)
Mutual labels:  opengl, opengl-es
Human Gpu
🤖 Hello human, I'm sick to be your GPU!!
Stars: ✭ 76 (-48.65%)
Mutual labels:  opengl, webgl
Shaderconductor
ShaderConductor is a tool designed for cross-compiling HLSL to other shading languages
Stars: ✭ 1,146 (+674.32%)
Mutual labels:  opengl, opengl-es
Gdx Vfx
LibGDX post-processing visual effects
Stars: ✭ 105 (-29.05%)
Mutual labels:  opengl, opengl-es
Cocoaopengl Swift
A simple example of using Swift to create an OpenGL application for macOS, iOS, and tvOS.
Stars: ✭ 60 (-59.46%)
Mutual labels:  opengl, opengl-es
Gifcompressor
An Android tool to compresses your GIFs into lightweight MP4 video using fast, hardware-accelerated encoders. Supports cropping, rotation, GIF concatenation and much more.
Stars: ✭ 85 (-42.57%)
Mutual labels:  opengl, opengl-es
Kimera
Low-latency hardware accelerated codec based video streaming utility.
Stars: ✭ 113 (-23.65%)
Mutual labels:  opengl, opengl-es
Indielib Crossplatform
IndieLib is a cross-platform Game Graphics engine. Main focus is OpenGL ES 2.0 for mobile iOS operating system, and OpenGL desktop. **NOT SUPPORTED ANYMORE**
Stars: ✭ 64 (-56.76%)
Mutual labels:  opengl, opengl-es
Bgfx
Cross-platform, graphics API agnostic, "Bring Your Own Engine/Framework" style rendering library.
Stars: ✭ 10,252 (+6827.03%)
Mutual labels:  opengl, webgl
Gcanvas
A lightweight cross-platform graphics rendering engine. (超轻量的跨平台图形引擎) https://alibaba.github.io/GCanvas
Stars: ✭ 1,705 (+1052.03%)
Mutual labels:  opengl, webgl
Herebedragons
A basic 3D scene implemented with various engines, frameworks or APIs.
Stars: ✭ 1,616 (+991.89%)
Mutual labels:  opengl, webgl

gl Build Status GoDoc

Package gl is a Go cross-platform binding for OpenGL, with an OpenGL ES 2-like API.

It supports:

  • macOS, Linux and Windows via OpenGL 2.1 backend,

  • iOS and Android via OpenGL ES 2.0 backend,

  • Modern Browsers (desktop and mobile) via WebGL 1.0 backend.

This is a fork of golang.org/x/mobile/gl package with CL 8793 merged in and Windows support added. This package is fully functional, but may eventually become superceded by the new x/mobile/gl plan. It will exist and be fully supported until it can be safely replaced by a better package.

Installation

go get -u github.com/goxjs/gl/...
GOARCH=js go get -u -d github.com/goxjs/gl/...

Usage

This OpenGL binding has a ContextWatcher, which implements glfw.ContextWatcher interface. Recommended usage is with github.com/goxjs/glfw package, which accepts a ContextWatcher in its Init, and takes on the responsibility of notifying it when context is made current or detached.

if err := glfw.Init(gl.ContextWatcher); err != nil {
	// Handle error.
}
defer glfw.Terminate()

If you're not using a ContextWatcher-aware glfw library, you must call methods of gl.ContextWatcher yourself whenever you make a context current or detached.

window.MakeContextCurrent()
gl.ContextWatcher.OnMakeCurrent(nil)

glfw.DetachCurrentContext()
gl.ContextWatcher.OnDetach()
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].