opengles: Functional interface for OpenGL 4.1+ and OpenGL ES 2.0+

[ graphics, lgpl, library ] [ Propose Tags ]

A functional OpenGL [ES] wrapper library. Made complicated OpenGL APIs easy yet keep flexible enough. Resulting binary size is relatively small so that apps launches faster. Works on both desktop and mobile.


[Skip to Readme]

Flags

Automatic Flags
NameDescriptionDefault
useegl

By default, EGL APIs are used to get OpenGL function pointers. If Disabled, use native library instead of EGL. e.g. WGL, GLX or dlsym.

Enabled
staticlinkes3

By default, OpenGL ES 3.0 APIs are dynamic linked. If Enabled, may cause runtime link error on unsupported environment. OpenGL ES 2.0 APIs are always statically linked.

Disabled
staticlinkegl15

By default, EGL 1.5 APIs are dynamic linked. If Enabled, may cause runtime link error on unsupported environment. EGL 1.4 APIs are always statically linked.

Disabled
buildexampleEnabled

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.4.0, 0.5.0, 0.6.0, 0.7.0, 0.8.2, 0.8.3
Change log CHANGELOG.md
Dependencies base (>=4.7 && <5), bytestring, distributive, fixed, future-resource (==0.4.0.0), ghc-prim (>=0.4 && <0.5), GLFW-b, half, lens, linear (>=1.20), opengles, packer (>=0.1.9 && <0.2), random, time, transformers, vector [details]
License LGPL-3.0-only
Copyright 2014-2016 capsjac
Author capsjac <capsjac at gmail.com>
Maintainer capsjac <capsjac at gmail.com>
Category Graphics
Home page https://github.com/capsjac/opengles#readme
Source repo head: git clone https://github.com/capsjac/opengles
Uploaded by capsjac at 2016-03-11T08:48:18Z
Distributions
Reverse Dependencies 1 direct, 0 indirect [details]
Executables glsl-sandbox-player, windmill
Downloads 4303 total (19 in the last 30 days)
Rating 2.0 (votes: 1) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2016-03-11 [all 1 reports]

Readme for opengles-0.8.3

[back to package description]

OpenGL ES: Open Graphics API for Embeded Systems

Hackage

opengles is a Haskell wrapper library around OpenGL, OpenGL ES and EGL. Made complicated OpenGL APIs easy yet keep flexible enough. Resulting binary size is relatively small so that apps launches faster. Works on both desktop and mobile.

Documentation is available through hackage for the current and preceding releases.

Props

  • Garbage collection for GPU objects
  • Pointer operation free
  • Simplified nearly state-free rendering API
  • Compile-time type check of buffers, textures, programs and so on
  • Run on Linux (Mesa), Windows and Android (OS X / iOS contribution is welcome)
  • Vertex Array Object Extension with fallback
  • Multi Draw Extension with fallback

Cons

  • Poor documentation and lack of tutorial
  • No legacy APIs
  • No uncommon extensions
  • No support for most of glGet* functionality that harm performance

Examples

See examples/ directory.

Contact Information

Contributions and bug reports are welcome!

Please feel free to contact me through github or email.