@hackage opengles0.8.3

Functional interface for OpenGL 4.1+ and OpenGL ES 2.0+

  • Installation

  • Dependencies (12)

  • Dependents (1)

    @hackage/acme-everything
  • Package Flags

      useegl
       (on by default)

      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.

      staticlinkes3
       (off by default)

      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.

      staticlinkegl15
       (off by default)

      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.

      buildexample
       (on by default)

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.