Find JSRs
Submit this Search


Ad Banner
 
 
 
 

JSRs: Java Specification Requests
JSR 231: JavaTM Binding for the OpenGL® API

Updates to the Original JSR

The following updates were made to the original proposal.

2007.02.05:

Specification Lead: Travis Bryson, Kenneth Russell

E-Mail Address: travis.bryson@sun.com, kenneth.russell@sun.com

Telephone Number: +1 510 996 7218, +1 408 276 7266

Fax Number: -

2006.06.20: The Spec Lead and EG changed the name from "JavaTM Bindings for OpenGL®" to "JavaTM Binding for the OpenGL® API"


Original Java Specification Request (JSR)

Identification | Request | Contributions

Section 1. Identification

Submitting Member: Sun Microsystems

Name of Contact Person: Daniel Petersen

E-Mail Address: daniel.petersen@sun.com

Telephone Number: +1 408 276 3296

Fax Number: +1 408 276 5060


Specification Lead: Daniel Petersen

E-Mail Address: daniel.petersen@sun.com

Telephone Number: +1 408 276 3296

Fax Number: +1 408 276 5060


Initial Expert Group Membership:

Sun Microsystems
Apple
IBM

Supporting this JSR:

SGI
3DLabs



Section 2: Request

2.1 Please describe the proposed Specification:

This specification will describe the Java bindings to the native 3D graphics library, OpenGL. This will include all core GL calls as well as the GLU library. Functionality available from the wgl/glx/agl platform specific libraries will be abstracted out to create a platform independent way of selecting framebuffer attributes and performing platform specific framebuffer operations. The specification will be made device agnostic to allow for the possibility of subsetting the API for different classes of devices (via future JSR's).

2.2 What is the target Java platform? (i.e., desktop, server, personal, embedded, card, etc.)

J2SETM desktop platforms.

2.3 What need of the Java community will be addressed by the proposed specification?

There is a need to have access to hardware accelerated 3D graphics from a low level 3D graphics library. OpenGL is the major platform independent, low level 3D API in the market today. Creating Java bindings to this library will meet the needs of the Java Platform for 3D graphics capabilities.

2.4 Why isn't this need met by existing specifications?

There is an existing 3D API for Java, called Java 3D. This is a high level, scene graph based API and does not meet the needs of those who require only a low level 3D API or those already using their own scene graph structure. Further, with the abundance of OpenGL applications on the market, having an API based on the OpenGL specification will ease the efforts of porting these applications to the Java platform.

2.5 Please give a short description of the underlying technology or technologies:

OpenGL version 1.5, bindings for the J2SE Platform.

2.6 Is there a proposed package name for the API Specification? (i.e., javapi.something, org.something, etc.)

javax.media.opengl

2.7 Does the proposed specification have any dependencies on specific operating systems, CPUs, or I/O devices that you know of?

An OpenGL library must be present on the platform.

2.8 Are there any security issues that cannot be addressed by the current security model?

No

2.9 Are there any internationalization or localization issues?

No

2.10 Are there any existing specifications that might be rendered obsolete, deprecated, or in need of revision as a result of this work?

No

2.11 Please describe the anticipated schedule for the development of this specification.

First Draft: January 2004
Public Review: March 2004
Final Draft: May 2004

2.12 Please describe the anticipated working model for the Expert Group working on developing this specification.

The primary means of communication will be email, with conference calls and face-to-face meetings scheduled as needed.

2.13 Please describe how the RI and TCK will de delivered, i.e. as part of a profile or platform edition, or stand-alone, or both. Include version information for the profile or platform in your answer.

The RI and TCK will be delivered stand-alone.

2.14 Please state the rationale if previous versions are available stand-alone and you are now proposing in 2.13 to only deliver RI and TCK as part of a profile or platform edition (See sections 1.1.5 and 1.1.6 of the JCP 2 document).

N/A

2.15 Please provide a description of the business terms for the Specification, RI and TCK that will apply when this JSR is final.

The specification will be released in accordance with standard terms as specified by the JCP process.

The reference implementation (RI) will be delivered in binary form free of charge from http://java.sun.com. Licensing details are expected to be under the Binary Code License (BCL).

The source for the reference implementation is expected to be delivered via the Sun Community Source License under standard SCSL terms & licensing and available free of charge to all Java 2 platform, Enterprise Edition and Java 2 platform, Standard Edition licensees.

The TCK will be made available free of charge to all J2SE and J2EE licensees.

The TCK will be offered for license at no charge, without support or any trademark license rights, to qualified not-for-profit entities (including not-for-profit) academic institutions) and qualified individuals engaged in efforts to create compatible implementations of the Specification.





Section 3: Contributions

3.1 Please list any existing documents, specifications, or implementations that describe the technology. Please include links to the documents if they are publicly available.

The OpenGL 1.4 documentation can be found at: http://opengl.org/developers/documentation/specs.html

The 1.5 documentation is schdeuled to be finalized in December 2003.

3.2 Explanation of how these items might be used as a starting point for the work.

The core OpenGL calls will be declared as native methods within a base OpenGL class. The wgl/glx/agl functionality will be abstracted out to make a platform independent way of accessing these features. The GLU library will be ported over to Java.