Difference between revisions of "Language bindings"

From OpenGL Wiki
Jump to: navigation, search
(Perl: Added Quick Refernce)
(Added language bindings to PowerBASIC and ThinBASIC)
Line 64: Line 64:
  
 
* [http://pike.ida.liu.se/about/pike/modules.xml Pike] - provides a native interface to OpenGL, GLU and GLUT.
 
* [http://pike.ida.liu.se/about/pike/modules.xml Pike] - provides a native interface to OpenGL, GLU and GLUT.
 +
 +
=== PowerBASIC ===
 +
* Allows use of OpenGL up to version 3.0 and GLU and GLUT using [http://www.jose.it-berater.org/smfforum/index.php?topic=3130.msg9856#msg9856 header file included in "Windows API headers" package]
 +
 +
* [http://www.jose.it-berater.org/smfforum/index.php?topic=2814.msg8420#msg8420 GLFW headers]
 +
 +
* [http://www.jose.it-berater.org/smfforum/index.php?topic=812.msg1787#msg1787 FreeGLUT headers]
 +
 +
* [http://www.jose.it-berater.org/smfforum/index.php?topic=812.msg1788#msg1788 OpenGLUT headers]
 +
 +
* [http://www.jose.it-berater.org/smfforum/index.php?topic=3170.msg10039#msg10039 CG headers]
 +
''Note: File archives with headers are visible after login on linked site''
  
 
=== Python ===
 
=== Python ===
Line 72: Line 84:
  
 
* [http://ruby-opengl.rubyforge.org/ ruby OpenGL bindings] supports GL and GLU.
 
* [http://ruby-opengl.rubyforge.org/ ruby OpenGL bindings] supports GL and GLU.
 +
 +
=== ThinBASIC ===
 +
* Allows use of OpenGL up to version 2.1 and GLU in default installation
 +
 +
* Supports [http://psch.thinBasic.com TBGL] higher level abstraction over OpenGL
  
 
=== Visual Basic ===
 
=== Visual Basic ===

Revision as of 10:07, 9 July 2009

OpenGL Language Bindings

OpenGL is supported on every major operating system, it works with every major windowing system, and it is callable from most programming languages. It offers complete independence from network protocols and topologies.

All OpenGL applications produce consistent visual display results on any OpenGL API-compliant hardware, regardless of operating system or windowing system.

ADA

Fortran

  • FORTRAN OpenGL (f90gl) bindings is a public domain implementation of the official Fortran 90 bindings for OpenGL. With the new bindings, a Fortran programmer can write standard-conforming graphics applications that will be portable over most computing platforms. The current version is Version 1.2.3 This version implements the interface for OpenGL 1.2, GLU 1.2, GLUT 3.7, and several extensions. It supports several Unix workstations and Windows 95/98/NT. It is also the Fortran interface for Mesa.

Haskell

Java

  • Java OpenGL (JOGL) bindings - the JOGL project hosts an implementation of the Java Bindings for OpenGL (JSR-231), and is designed to provide hardware-supported 3D graphics to applications written in Java. JOGL provides full access to the APIs in the OpenGL 2.0 specification as well as nearly all vendor extensions, and integrates with the AWT and Swing widget sets. Coding demos are available.
  • Lightweight Java Game Library is aimed at professional and amateur Java programmers alike with support for OpenGL, OpenAL, Gamepads, Steering wheel and Joysticks.
  • Java 3D - SUN's retained mode library layered on OpenGL.
  • YAJOGLB - Yet Another Java OpenGL Binding.

Perl

  • POGL APIs - a quick reference guide to OpenGL APIs supported by POGL.
  • OpenGL::Array - provides direct C pointer access to data arrays, significantly increasing performance of loading/managing/saving textures, FBOs and VBOs.
  • OpenGL::Image - provides direct C pointer access to ImageMagick image caches, significantly increasing performance of loading/processing/saving images in most common formats.
  • OpenGL::Shader - abstracts OpenGL shader APIs for ARB (assembly), Cg and GLSL.

Pike

  • Pike - provides a native interface to OpenGL, GLU and GLUT.

PowerBASIC

Note: File archives with headers are visible after login on linked site

Python

  • PyOpenGL is a cross-platform open source Python binding to the standard OpenGL API providing 2-D and 3-D graphic drawing. PyOpenGL supports the GL, GLU, and GLUT libraries. The library can be used with the Tkinter, wxPython, FxPy, and Win32GUI windowing libraries (or almost any windowing library which can provide an OpenGL context).

Ruby

ThinBASIC

  • Allows use of OpenGL up to version 2.1 and GLU in default installation
  • Supports TBGL higher level abstraction over OpenGL

Visual Basic