Use of JCP site is subject to the
JCP Terms of Use and the
Oracle Privacy Policy
|
JSRs: Java Specification Requests
JSR 231: JavaTM Binding for the OpenGL® API
JCP version in use: 2.6 Java Specification Participation Agreement version in use: 2.0 Description: Java bindings to the OpenGL native 3D graphics library. Please direct comments on this JSR to the Spec Lead(s) Team
The following updates were made to the original proposal. 2007.02.05: Specification Lead: Travis Bryson, Kenneth Russell E-Mail Address: travis.bryson 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 Telephone Number: +1 408 276 3296 Fax Number: +1 408 276 5060 Specification Lead: Daniel Petersen E-Mail Address: daniel.petersen Telephone Number: +1 408 276 3296 Fax Number: +1 408 276 5060 Initial Expert Group Membership: Sun Microsystems Supporting this JSR: SGI 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 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. |