You can subscribe to this list here.
| 2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(134) |
Sep
(52) |
Oct
(13) |
Nov
(342) |
Dec
(163) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2003 |
Jan
(44) |
Feb
(62) |
Mar
(158) |
Apr
(38) |
May
(70) |
Jun
(58) |
Jul
(104) |
Aug
(207) |
Sep
(83) |
Oct
(122) |
Nov
(23) |
Dec
(49) |
| 2004 |
Jan
(119) |
Feb
(132) |
Mar
(192) |
Apr
(140) |
May
(77) |
Jun
(74) |
Jul
(201) |
Aug
(63) |
Sep
(102) |
Oct
(70) |
Nov
(173) |
Dec
(78) |
| 2005 |
Jan
(174) |
Feb
(197) |
Mar
(105) |
Apr
(59) |
May
(77) |
Jun
(43) |
Jul
(21) |
Aug
(18) |
Sep
(47) |
Oct
(37) |
Nov
(74) |
Dec
(50) |
| 2006 |
Jan
(44) |
Feb
(19) |
Mar
(32) |
Apr
(24) |
May
(31) |
Jun
(55) |
Jul
(138) |
Aug
(28) |
Sep
(12) |
Oct
(41) |
Nov
(58) |
Dec
(24) |
| 2007 |
Jan
(28) |
Feb
(14) |
Mar
(10) |
Apr
(68) |
May
(30) |
Jun
(26) |
Jul
(18) |
Aug
(63) |
Sep
(19) |
Oct
(29) |
Nov
(20) |
Dec
(10) |
| 2008 |
Jan
(38) |
Feb
(7) |
Mar
(37) |
Apr
(120) |
May
(41) |
Jun
(36) |
Jul
(39) |
Aug
(24) |
Sep
(28) |
Oct
(30) |
Nov
(36) |
Dec
(75) |
| 2009 |
Jan
(46) |
Feb
(22) |
Mar
(50) |
Apr
(70) |
May
(134) |
Jun
(105) |
Jul
(75) |
Aug
(34) |
Sep
(38) |
Oct
(34) |
Nov
(19) |
Dec
(20) |
| 2010 |
Jan
(11) |
Feb
(20) |
Mar
(65) |
Apr
(83) |
May
(104) |
Jun
(73) |
Jul
(78) |
Aug
(57) |
Sep
(43) |
Oct
(35) |
Nov
(9) |
Dec
(4) |
| 2011 |
Jan
(21) |
Feb
(11) |
Mar
(18) |
Apr
(10) |
May
(18) |
Jun
(15) |
Jul
(48) |
Aug
(25) |
Sep
(17) |
Oct
(45) |
Nov
(15) |
Dec
(12) |
| 2012 |
Jan
(21) |
Feb
(9) |
Mar
(12) |
Apr
(9) |
May
(9) |
Jun
(5) |
Jul
(1) |
Aug
(10) |
Sep
(12) |
Oct
(1) |
Nov
(28) |
Dec
(5) |
| 2013 |
Jan
(4) |
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2014 |
Jan
|
Feb
(1) |
Mar
(1) |
Apr
|
May
(2) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
|
Dec
|
| 2015 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
(2) |
Nov
|
Dec
|
| 2016 |
Jan
(2) |
Feb
(1) |
Mar
(1) |
Apr
(1) |
May
(2) |
Jun
|
Jul
(1) |
Aug
(2) |
Sep
|
Oct
|
Nov
(1) |
Dec
|
| 2017 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| S | M | T | W | T | F | S |
|---|---|---|---|---|---|---|
|
|
|
|
|
1
|
2
(1) |
3
(3) |
|
4
(8) |
5
(2) |
6
(2) |
7
(3) |
8
(2) |
9
(5) |
10
(2) |
|
11
(7) |
12
(5) |
13
(1) |
14
(2) |
15
(5) |
16
(1) |
17
|
|
18
(2) |
19
(1) |
20
(1) |
21
(3) |
22
(1) |
23
(3) |
24
(1) |
|
25
(5) |
26
|
27
(5) |
28
(5) |
29
|
30
|
31
(2) |
|
From: <sp...@us...> - 2010-07-31 16:14:19
|
Revision: 3399
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3399&view=rev
Author: spasi
Date: 2010-07-31 16:14:13 +0000 (Sat, 31 Jul 2010)
Log Message:
-----------
Typo fix.
Modified Paths:
--------------
trunk/LWJGL/src/templates/org/lwjgl/opengl/NV_framebuffer_multisample_coverage.java
Modified: trunk/LWJGL/src/templates/org/lwjgl/opengl/NV_framebuffer_multisample_coverage.java
===================================================================
--- trunk/LWJGL/src/templates/org/lwjgl/opengl/NV_framebuffer_multisample_coverage.java 2010-07-28 21:12:41 UTC (rev 3398)
+++ trunk/LWJGL/src/templates/org/lwjgl/opengl/NV_framebuffer_multisample_coverage.java 2010-07-31 16:14:13 UTC (rev 3399)
@@ -42,7 +42,7 @@
/** Accepted by the <pname> parameter of GetIntegerv. */
int GL_MAX_MULTISAMPLE_COVERAGE_MODES_NV = 0x8E11;
- int GL_MULITSAMPLE_COVERAGE_MODES_NV = 0x8E12;
+ int GL_MULTISAMPLE_COVERAGE_MODES_NV = 0x8E12;
void glRenderbufferStorageMultisampleCoverageNV(@GLenum int target, @GLsizei int coverageSamples, @GLsizei int colorSamples,
@GLenum int internalformat, @GLsizei int width, @GLsizei int height);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ka...@us...> - 2010-07-28 21:12:48
|
Revision: 3398
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3398&view=rev
Author: kappa1
Date: 2010-07-28 21:12:41 +0000 (Wed, 28 Jul 2010)
Log Message:
-----------
clean unneeded check
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/opengl/MacOSXMouseEventQueue.java
Modified: trunk/LWJGL/src/java/org/lwjgl/opengl/MacOSXMouseEventQueue.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opengl/MacOSXMouseEventQueue.java 2010-07-28 21:07:04 UTC (rev 3397)
+++ trunk/LWJGL/src/java/org/lwjgl/opengl/MacOSXMouseEventQueue.java 2010-07-28 21:12:41 UTC (rev 3398)
@@ -62,11 +62,9 @@
}
private static synchronized void grabMouse(boolean grab) {
- if (is_grabbed != grab) {
- is_grabbed = grab;
- if (!grab)
- nGrabMouse(grab);
- }
+ is_grabbed = grab;
+ if (!grab)
+ nGrabMouse(grab);
}
protected void resetCursorToCenter() {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ka...@us...> - 2010-07-28 21:07:11
|
Revision: 3397
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3397&view=rev
Author: kappa1
Date: 2010-07-28 21:07:04 +0000 (Wed, 28 Jul 2010)
Log Message:
-----------
Fix Mac Mouse behaviour where mouse is centred everytime Mouse.setGrabbed(boolean) is called.
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/opengl/MacOSXMouseEventQueue.java
Modified: trunk/LWJGL/src/java/org/lwjgl/opengl/MacOSXMouseEventQueue.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opengl/MacOSXMouseEventQueue.java 2010-07-27 19:18:58 UTC (rev 3396)
+++ trunk/LWJGL/src/java/org/lwjgl/opengl/MacOSXMouseEventQueue.java 2010-07-28 21:07:04 UTC (rev 3397)
@@ -54,9 +54,11 @@
}
public void setGrabbed(boolean grab) {
- super.setGrabbed(grab);
- warpCursor();
- grabMouse(grab);
+ if (is_grabbed != grab) {
+ super.setGrabbed(grab);
+ warpCursor();
+ grabMouse(grab);
+ }
}
private static synchronized void grabMouse(boolean grab) {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ma...@us...> - 2010-07-27 19:19:04
|
Revision: 3396
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3396&view=rev
Author: matzon
Date: 2010-07-27 19:18:58 +0000 (Tue, 27 Jul 2010)
Log Message:
-----------
bumping native version
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/LinuxSysImplementation.java
trunk/LWJGL/src/java/org/lwjgl/MacOSXSysImplementation.java
trunk/LWJGL/src/java/org/lwjgl/WindowsSysImplementation.java
Modified: trunk/LWJGL/src/java/org/lwjgl/LinuxSysImplementation.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/LinuxSysImplementation.java 2010-07-27 19:17:53 UTC (rev 3395)
+++ trunk/LWJGL/src/java/org/lwjgl/LinuxSysImplementation.java 2010-07-27 19:18:58 UTC (rev 3396)
@@ -39,7 +39,7 @@
* $Id$
*/
final class LinuxSysImplementation extends J2SESysImplementation {
- private final static int JNI_VERSION = 18;
+ private final static int JNI_VERSION = 19;
static {
java.awt.Toolkit.getDefaultToolkit(); // This will make sure libjawt.so is loaded
Modified: trunk/LWJGL/src/java/org/lwjgl/MacOSXSysImplementation.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/MacOSXSysImplementation.java 2010-07-27 19:17:53 UTC (rev 3395)
+++ trunk/LWJGL/src/java/org/lwjgl/MacOSXSysImplementation.java 2010-07-27 19:18:58 UTC (rev 3396)
@@ -42,7 +42,7 @@
* $Id$
*/
final class MacOSXSysImplementation extends J2SESysImplementation {
- private final static int JNI_VERSION = 18;
+ private final static int JNI_VERSION = 19;
static {
// Make sure AWT is properly initialized. This avoids hangs on Mac OS X 10.3
Modified: trunk/LWJGL/src/java/org/lwjgl/WindowsSysImplementation.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/WindowsSysImplementation.java 2010-07-27 19:17:53 UTC (rev 3395)
+++ trunk/LWJGL/src/java/org/lwjgl/WindowsSysImplementation.java 2010-07-27 19:18:58 UTC (rev 3396)
@@ -45,7 +45,7 @@
* $Id$
*/
final class WindowsSysImplementation extends DefaultSysImplementation {
- private final static int JNI_VERSION = 22;
+ private final static int JNI_VERSION = 23;
static {
Sys.initialize();
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ma...@us...> - 2010-07-27 19:18:02
|
Revision: 3395
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3395&view=rev
Author: matzon
Date: 2010-07-27 19:17:53 +0000 (Tue, 27 Jul 2010)
Log Message:
-----------
Adding lwjgl version string to debug output
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/test/applet/GearsApplet.java
trunk/LWJGL/src/java/org/lwjgl/test/opengl/Gears.java
trunk/LWJGL/src/java/org/lwjgl/test/opengl/awt/AWTGears.java
Modified: trunk/LWJGL/src/java/org/lwjgl/test/applet/GearsApplet.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/test/applet/GearsApplet.java 2010-07-27 19:08:50 UTC (rev 3394)
+++ trunk/LWJGL/src/java/org/lwjgl/test/applet/GearsApplet.java 2010-07-27 19:17:53 UTC (rev 3395)
@@ -6,6 +6,8 @@
import java.nio.FloatBuffer;
import org.lwjgl.BufferUtils;
import org.lwjgl.LWJGLException;
+import org.lwjgl.LWJGLUtil;
+import org.lwjgl.Sys;
import org.lwjgl.opengl.ARBTransposeMatrix;
import org.lwjgl.opengl.Display;
import org.lwjgl.input.Keyboard;
@@ -262,6 +264,7 @@
GL11.glEnable(GL11.GL_NORMALIZE);
GL11.glMatrixMode(GL11.GL_PROJECTION);
+ System.err.println("LWJGL: " + Sys.getVersion() + " / " + LWJGLUtil.getPlatformName());
System.err.println("GL_VENDOR: " + GL11.glGetString(GL11.GL_VENDOR));
System.err.println("GL_RENDERER: " + GL11.glGetString(GL11.GL_RENDERER));
System.err.println("GL_VERSION: " + GL11.glGetString(GL11.GL_VERSION));
Modified: trunk/LWJGL/src/java/org/lwjgl/test/opengl/Gears.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/test/opengl/Gears.java 2010-07-27 19:08:50 UTC (rev 3394)
+++ trunk/LWJGL/src/java/org/lwjgl/test/opengl/Gears.java 2010-07-27 19:17:53 UTC (rev 3395)
@@ -39,6 +39,8 @@
import org.lwjgl.BufferUtils;
import org.lwjgl.LWJGLException;
+import org.lwjgl.LWJGLUtil;
+import org.lwjgl.Sys;
import org.lwjgl.opengl.ARBTransposeMatrix;
import org.lwjgl.opengl.Display;
import org.lwjgl.opengl.DisplayMode;
@@ -199,6 +201,7 @@
GL11.glMatrixMode(GL11.GL_PROJECTION);
+ System.err.println("LWJGL: " + Sys.getVersion() + " / " + LWJGLUtil.getPlatformName());
System.err.println("GL_VENDOR: " + GL11.glGetString(GL11.GL_VENDOR));
System.err.println("GL_RENDERER: " + GL11.glGetString(GL11.GL_RENDERER));
System.err.println("GL_VERSION: " + GL11.glGetString(GL11.GL_VERSION));
Modified: trunk/LWJGL/src/java/org/lwjgl/test/opengl/awt/AWTGears.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/test/opengl/awt/AWTGears.java 2010-07-27 19:08:50 UTC (rev 3394)
+++ trunk/LWJGL/src/java/org/lwjgl/test/opengl/awt/AWTGears.java 2010-07-27 19:17:53 UTC (rev 3395)
@@ -39,6 +39,8 @@
import org.lwjgl.BufferUtils;
import org.lwjgl.LWJGLException;
+import org.lwjgl.LWJGLUtil;
+import org.lwjgl.Sys;
import org.lwjgl.opengl.ARBTransposeMatrix;
import org.lwjgl.opengl.AWTGLCanvas;
import org.lwjgl.opengl.GL11;
@@ -131,6 +133,7 @@
GL11.glMatrixMode(GL11.GL_PROJECTION);
+ System.err.println("LWJGL: " + Sys.getVersion() + " / " + LWJGLUtil.getPlatformName());
System.err.println("GL_VENDOR: " + GL11.glGetString(GL11.GL_VENDOR));
System.err.println("GL_RENDERER: " + GL11.glGetString(GL11.GL_RENDERER));
System.err.println("GL_VERSION: " + GL11.glGetString(GL11.GL_VERSION));
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ma...@us...> - 2010-07-27 19:08:57
|
Revision: 3394
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3394&view=rev
Author: matzon
Date: 2010-07-27 19:08:50 +0000 (Tue, 27 Jul 2010)
Log Message:
-----------
incrementing version to 2.6
Modified Paths:
--------------
trunk/LWJGL/platform_build/build-definitions.xml
trunk/LWJGL/src/java/org/lwjgl/Sys.java
Modified: trunk/LWJGL/platform_build/build-definitions.xml
===================================================================
--- trunk/LWJGL/platform_build/build-definitions.xml 2010-07-27 16:20:37 UTC (rev 3393)
+++ trunk/LWJGL/platform_build/build-definitions.xml 2010-07-27 19:08:50 UTC (rev 3394)
@@ -12,7 +12,7 @@
<property name="lwjgl.docs" location="doc" />
<property name="lwjgl.temp" location="temp" />
<property name="lwjgl.res" location="res" />
- <property name="lwjgl.version" value="2.5" />
+ <property name="lwjgl.version" value="2.6" />
<property name="opengl-template-pattern" value="org/lwjgl/opengl/GL*.java,org/lwjgl/opengl/ARB*.java,org/lwjgl/opengl/AMD*.java,org/lwjgl/opengl/APPLE*.java,org/lwjgl/opengl/ATI*.java,org/lwjgl/opengl/EXT*.java,org/lwjgl/opengl/NV*.java,org/lwjgl/opengl/NVX*.java,org/lwjgl/opengl/HP*.java,org/lwjgl/opengl/IBM*.java,org/lwjgl/opengl/SUN*.java,org/lwjgl/opengl/SGIS*.java,org/lwjgl/opengl/GREMEDY*.java"/>
<!-- ================================================================== -->
Modified: trunk/LWJGL/src/java/org/lwjgl/Sys.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/Sys.java 2010-07-27 16:20:37 UTC (rev 3393)
+++ trunk/LWJGL/src/java/org/lwjgl/Sys.java 2010-07-27 19:08:50 UTC (rev 3394)
@@ -54,7 +54,7 @@
private static final String JNI_LIBRARY_NAME = "lwjgl";
/** Current version of library */
- private static final String VERSION = "2.5";
+ private static final String VERSION = "2.6";
/** The implementation instance to delegate platform specific behavior to */
private final static SysImplementation implementation;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <sp...@us...> - 2010-07-27 16:20:43
|
Revision: 3393
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3393&view=rev
Author: spasi
Date: 2010-07-27 16:20:37 +0000 (Tue, 27 Jul 2010)
Log Message:
-----------
ARBDebugOutputCallback header.
Modified Paths:
--------------
trunk/LWJGL/build.xml
Modified: trunk/LWJGL/build.xml
===================================================================
--- trunk/LWJGL/build.xml 2010-07-27 15:33:22 UTC (rev 3392)
+++ trunk/LWJGL/build.xml 2010-07-27 16:20:37 UTC (rev 3393)
@@ -252,6 +252,7 @@
<class name="org.lwjgl.opengl.GLContext" />
<class name="org.lwjgl.opengl.Pbuffer" />
<class name="org.lwjgl.opengl.AMDDebugOutputCallback" />
+ <class name="org.lwjgl.opengl.ARBDebugOutputCallback" />
</javah>
</target>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <sp...@us...> - 2010-07-27 15:33:29
|
Revision: 3392
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3392&view=rev
Author: spasi
Date: 2010-07-27 15:33:22 +0000 (Tue, 27 Jul 2010)
Log Message:
-----------
Added support for OpenGL 4.1 and new extensions.
Modified Paths:
--------------
trunk/LWJGL/platform_build/build-generator.xml
trunk/LWJGL/src/java/org/lwjgl/opengl/AMDDebugOutputCallback.java
trunk/LWJGL/src/java/org/lwjgl/opengl/AMDDebugOutputUtil.java
trunk/LWJGL/src/java/org/lwjgl/opengl/ContextAttribs.java
trunk/LWJGL/src/java/org/lwjgl/opengl/GLContext.java
trunk/LWJGL/src/java/org/lwjgl/util/generator/GLTypeMap.java
trunk/LWJGL/src/native/common/extgl.h
trunk/LWJGL/src/native/common/org_lwjgl_opengl_AMDDebugOutputCallback.c
trunk/LWJGL/src/templates/org/lwjgl/opengl/EXT_direct_state_access.java
trunk/LWJGL/src/templates/org/lwjgl/opengl/GL40.java
Added Paths:
-----------
trunk/LWJGL/src/java/org/lwjgl/opengl/ARBDebugOutputCallback.java
trunk/LWJGL/src/java/org/lwjgl/opengl/ARBDebugOutputUtil.java
trunk/LWJGL/src/native/common/org_lwjgl_opengl_ARBDebugOutputCallback.c
trunk/LWJGL/src/templates/org/lwjgl/opengl/ARB_ES2_compatibility.java
trunk/LWJGL/src/templates/org/lwjgl/opengl/ARB_debug_output.java
trunk/LWJGL/src/templates/org/lwjgl/opengl/ARB_get_program_binary.java
trunk/LWJGL/src/templates/org/lwjgl/opengl/ARB_robustness.java
trunk/LWJGL/src/templates/org/lwjgl/opengl/ARB_separate_shader_objects.java
trunk/LWJGL/src/templates/org/lwjgl/opengl/ARB_shader_precision.java
trunk/LWJGL/src/templates/org/lwjgl/opengl/ARB_shader_stencil_export.java
trunk/LWJGL/src/templates/org/lwjgl/opengl/ARB_vertex_attrib_64bit.java
trunk/LWJGL/src/templates/org/lwjgl/opengl/ARB_viewport_array.java
trunk/LWJGL/src/templates/org/lwjgl/opengl/GL41.java
Modified: trunk/LWJGL/platform_build/build-generator.xml
===================================================================
--- trunk/LWJGL/platform_build/build-generator.xml 2010-07-25 14:22:09 UTC (rev 3391)
+++ trunk/LWJGL/platform_build/build-generator.xml 2010-07-27 15:33:22 UTC (rev 3392)
@@ -7,7 +7,7 @@
<fileset dir="${lwjgl.src.native}/generated" includes="**"/>
</delete>
</target>
-
+
<!-- Compiles the Java generator source code -->
<target name="generators" description="Compiles the native method generators">
<javac debug="yes" srcdir="${lwjgl.src}/java/" destdir="${lwjgl.bin}" includes="org/lwjgl/util/generator/**.java" source="1.5" target="1.5" taskname="generator">
@@ -17,6 +17,7 @@
<javac debug="yes" srcdir="${lwjgl.src}/java/" destdir="${lwjgl.bin}" source="1.4" target="1.4" taskname="generator">
<include name="org/lwjgl/opengl/GLSync.java"/>
<include name="org/lwjgl/opengl/AMDDebugOutputCallback.java"/>
+ <include name="org/lwjgl/opengl/ARBDebugOutputCallback.java"/>
<include name="org/lwjgl/opengl/PointerWrapper.java"/>
</javac>
</target>
@@ -42,7 +43,7 @@
<fileset dir="${lwjgl.src.templates}" includes="org/lwjgl/openal/AL10.java, org/lwjgl/openal/AL11.java, org/lwjgl/openal/EFX10.java"/>
</apply>
</target>
-
+
<!-- Generate OpenAL [DEBUG] -->
<target name="generate-openal-debug" depends="generators" description="Generates java and native source for AL">
<apply executable="apt" parallel="true">
@@ -111,7 +112,7 @@
<fileset dir="${lwjgl.src.templates}" includes="${opengl-template-pattern}"/>
</apply>
</target>
-
+
<!-- Generate context capabilities -->
<target name="generate-opengl-capabilities" depends="generators" description="Generates java and native source for GL">
<apply executable="apt" parallel="true">
@@ -125,8 +126,8 @@
<arg value="-Acontextspecific"/>
<fileset dir="${lwjgl.src.templates}" includes="${opengl-template-pattern}"/>
</apply>
- </target>
-
+ </target>
+
<!-- Generate context capabilities [DEBUG] -->
<target name="generate-opengl-capabilities-debug" depends="generators" description="Generates java and native source for GL">
<apply executable="apt" parallel="true">
@@ -141,5 +142,5 @@
<arg value="-Acontextspecific"/>
<fileset dir="${lwjgl.src.templates}" includes="${opengl-template-pattern}"/>
</apply>
- </target>
+ </target>
</project>
Modified: trunk/LWJGL/src/java/org/lwjgl/opengl/AMDDebugOutputCallback.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opengl/AMDDebugOutputCallback.java 2010-07-25 14:22:09 UTC (rev 3391)
+++ trunk/LWJGL/src/java/org/lwjgl/opengl/AMDDebugOutputCallback.java 2010-07-27 15:33:22 UTC (rev 3392)
@@ -59,7 +59,7 @@
private final long pointer;
/**
- * Creates a AMDDebugOutputCallback with a default callback handler.
+ * Creates an AMDDebugOutputCallback with a default callback handler.
* The default handler will simply print the message on System.err.
*/
public AMDDebugOutputCallback() {
@@ -120,7 +120,7 @@
}
/**
- * Creates a AMDDebugOutputCallback with the specified callback handlers.
+ * Creates an AMDDebugOutputCallback with the specified callback handlers.
* The handler's {@code handleMessage} method will be called whenever
* debug output is generated by the GL.
*
Modified: trunk/LWJGL/src/java/org/lwjgl/opengl/AMDDebugOutputUtil.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opengl/AMDDebugOutputUtil.java 2010-07-25 14:22:09 UTC (rev 3391)
+++ trunk/LWJGL/src/java/org/lwjgl/opengl/AMDDebugOutputUtil.java 2010-07-27 15:33:22 UTC (rev 3392)
@@ -28,7 +28,7 @@
if ( !ctx.getContextAttribs().isDebug() )
throw new IllegalStateException("The current context is not a debug context.");
- if ( !GLContext.getCapabilities().GL_AMD_debug_output )
+ if ( !GLContext.getCapabilities().GL_AMD_debug_output )
throw new IllegalStateException("AMD_debug_output is not supported.");
handlers.put(ctx, handler);
Added: trunk/LWJGL/src/java/org/lwjgl/opengl/ARBDebugOutputCallback.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opengl/ARBDebugOutputCallback.java (rev 0)
+++ trunk/LWJGL/src/java/org/lwjgl/opengl/ARBDebugOutputCallback.java 2010-07-27 15:33:22 UTC (rev 3392)
@@ -0,0 +1,190 @@
+/*
+ * Copyright (c) 2002-2008 LWJGL Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'LWJGL' nor the names of
+ * its contributors may be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+package org.lwjgl.opengl;
+
+/**
+ * Instances of this class are needed to use the callback functionality of the ARB_debug_output extension.
+ * A debug context must be current before creating instances of this class. Users of this class may provide
+ * implementations of the {@code Handler} interface to receive notifications. The same {@code Handler}
+ * instance may be used by different contexts but it is not recommended. Handler notifications are synchronized.
+ *
+ * @author Spasi
+ */
+public final class ARBDebugOutputCallback implements PointerWrapper {
+
+ /** Severity levels. */
+ private static final int
+ GL_DEBUG_SEVERITY_HIGH_ARB = 0x9146,
+ GL_DEBUG_SEVERITY_MEDIUM_ARB = 0x9147,
+ GL_DEBUG_SEVERITY_LOW_ARB = 0x9148;
+
+ /** Sources. */
+ private static final int
+ GL_DEBUG_SOURCE_API_ARB = 0x8246,
+ GL_DEBUG_SOURCE_WINDOW_SYSTEM_ARB = 0x8247,
+ GL_DEBUG_SOURCE_SHADER_COMPILER_ARB = 0x8248,
+ GL_DEBUG_SOURCE_THIRD_PARTY_ARB = 0x8249,
+ GL_DEBUG_SOURCE_APPLICATION_ARB = 0x824A,
+ GL_DEBUG_SOURCE_OTHER_ARB = 0x824B;
+
+ /** Types. */
+ private static final int
+ GL_DEBUG_TYPE_ERROR_ARB = 0x824C,
+ GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR_ARB = 0x824D,
+ GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR_ARB = 0x824E,
+ GL_DEBUG_TYPE_PORTABILITY_ARB = 0x824F,
+ GL_DEBUG_TYPE_PERFORMANCE_ARB = 0x8250,
+ GL_DEBUG_TYPE_OTHER_ARB = 0x8251;
+
+ private final long pointer;
+
+ /**
+ * Creates an ARBDebugOutputCallback with a default callback handler.
+ * The default handler will simply print the message on System.err.
+ */
+ public ARBDebugOutputCallback() {
+ this(new Handler() {
+ public void handleMessage(final int source, final int type, final int id, final int severity, final String message) {
+ System.err.println("[LWJGL] ARB_debug_output message");
+ System.err.println("\tID: " + id);
+
+ String description;
+ switch ( source ) {
+ case GL_DEBUG_SOURCE_API_ARB:
+ description = "API";
+ break;
+ case GL_DEBUG_SOURCE_WINDOW_SYSTEM_ARB:
+ description = "WINDOW SYSTEM";
+ break;
+ case GL_DEBUG_SOURCE_SHADER_COMPILER_ARB:
+ description = "SHADER COMPILER";
+ break;
+ case GL_DEBUG_SOURCE_THIRD_PARTY_ARB:
+ description = "THIRD PARTY";
+ break;
+ case GL_DEBUG_SOURCE_APPLICATION_ARB:
+ description = "APPLICATION";
+ break;
+ case GL_DEBUG_SOURCE_OTHER_ARB:
+ description = "OTHER";
+ break;
+ default:
+ description = "Unknown (" + Integer.toHexString(source) + ")";
+ }
+ System.err.println("\tSource: " + description);
+
+ switch ( type ) {
+ case GL_DEBUG_TYPE_ERROR_ARB:
+ description = "ERROR";
+ break;
+ case GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR_ARB:
+ description = "DEPRECATED BEHAVIOR";
+ break;
+ case GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR_ARB:
+ description = "UNDEFINED BEHAVIOR";
+ break;
+ case GL_DEBUG_TYPE_PORTABILITY_ARB:
+ description = "PORTABILITY";
+ break;
+ case GL_DEBUG_TYPE_PERFORMANCE_ARB:
+ description = "PERFORMANCE";
+ break;
+ case GL_DEBUG_TYPE_OTHER_ARB:
+ description = "OTHER";
+ break;
+ default:
+ description = "Unknown (" + Integer.toHexString(source) + ")";
+ }
+ System.err.println("\tType: " + description);
+
+ switch ( severity ) {
+ case GL_DEBUG_SEVERITY_HIGH_ARB:
+ description = "HIGH";
+ break;
+ case GL_DEBUG_SEVERITY_MEDIUM_ARB:
+ description = "MEDIUM";
+ break;
+ case GL_DEBUG_SEVERITY_LOW_ARB:
+ description = "LOW";
+ break;
+ default:
+ description = "Unknown (" + Integer.toHexString(source) + ")";
+ }
+ System.err.println("\tSeverity: " + description);
+
+ System.err.println("\tMessage: " + message);
+ }
+ });
+ }
+
+ /**
+ * Creates an ARBDebugOutputCallback with the specified callback handlers.
+ * The handler's {@code handleMessage} method will be called whenever
+ * debug output is generated by the GL.
+ *
+ * @param handler the callback handler
+ */
+ public ARBDebugOutputCallback(final Handler handler) {
+ try {
+ // We have to call registerHandler reflectively because we need this class to compile before we run the Generator.
+ // The registerHandler method depends on org.lwjgl.opengl.Context, if we touched that we would need to compile
+ // the whole library (which is not possible).
+ Class.forName("org.lwjgl.opengl.ARBDebugOutputUtil").getMethod("registerHandler", new Class[] { Handler.class }).invoke(null, new Object[] { handler });
+ } catch (Exception e) {
+ throw new RuntimeException(e.getCause() != null ? e.getCause() : e);
+ }
+ this.pointer = getFunctionPointer();
+ }
+
+ public long getPointer() {
+ return pointer;
+ }
+
+ private static native long getFunctionPointer();
+
+ /** Implementations of this interface can be used to receive ARB_debug_output notifications. */
+ public interface Handler {
+
+ /**
+ * This method will be called when an AMD_debug_output message is generated.
+ *
+ * @param id the message ID
+ * @param source the message source
+ * @param type the message type
+ * @param severity the message severity
+ * @param message the string representation of the message.
+ */
+ void handleMessage(int source, int type, int id, int severity, String message);
+
+ }
+
+}
\ No newline at end of file
Added: trunk/LWJGL/src/java/org/lwjgl/opengl/ARBDebugOutputUtil.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opengl/ARBDebugOutputUtil.java (rev 0)
+++ trunk/LWJGL/src/java/org/lwjgl/opengl/ARBDebugOutputUtil.java 2010-07-27 15:33:22 UTC (rev 3392)
@@ -0,0 +1,60 @@
+package org.lwjgl.opengl;
+
+import org.lwjgl.opengl.ARBDebugOutputCallback.Handler;
+
+import java.nio.ByteBuffer;
+import java.util.Map;
+import java.util.WeakHashMap;
+
+/**
+ * This class handles ARBDebugOutputCallback.Handler registration and notification.
+ * We could have put this in ARBDebugOutputCallback, but we need to compile it for
+ * the generator. Registration is done reflectively in the ARBDebugOutputCallback
+ * constructor.
+ *
+ * @author Spasi
+ */
+final class ARBDebugOutputUtil {
+
+ private static final Map handlers = new WeakHashMap();
+
+ private ARBDebugOutputUtil() {}
+
+ public static void registerHandler(final Handler handler) {
+ final Context ctx = Context.getCurrentContext();
+ if ( ctx == null )
+ throw new IllegalStateException("No context is current.");
+
+ if ( !ctx.getContextAttribs().isDebug() )
+ throw new IllegalStateException("The current context is not a debug context.");
+
+ if ( !GLContext.getCapabilities().GL_ARB_debug_output )
+ throw new IllegalStateException("ARB_debug_output is not supported.");
+
+ handlers.put(ctx, handler);
+ }
+
+ /**
+ * This method is called by native code. If finds the callback handler associated
+ * with the current Thread and calls its {@code handleMessage} method.
+ *
+ * @param source the message source
+ * @param type the message type
+ * @param id the message ID
+ * @param severity the message severity
+ * @param message the string representation of the message.
+ * @param userParam the user-specified data specified in glDebugMessageCallbackAMD. For the current implementation this is always null and we ignore it.
+ */
+ private static void messageCallback(final int source, final int type, final int id, final int severity, final String message, final ByteBuffer userParam) {
+ synchronized ( GlobalLock.lock ) {
+ final Context ctx = Context.getCurrentContext();
+ if ( ctx == null )
+ return;
+
+ final Handler handler = (Handler)handlers.get(ctx);
+ if ( handler != null )
+ handler.handleMessage(source, type, id, severity, message);
+ }
+ }
+
+}
\ No newline at end of file
Modified: trunk/LWJGL/src/java/org/lwjgl/opengl/ContextAttribs.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opengl/ContextAttribs.java 2010-07-25 14:22:09 UTC (rev 3391)
+++ trunk/LWJGL/src/java/org/lwjgl/opengl/ContextAttribs.java 2010-07-27 15:33:22 UTC (rev 3392)
@@ -56,6 +56,13 @@
*/
public final class ContextAttribs {
+ // Same values for GLX & WGL
+ private static final int CONTEXT_ROBUST_ACCESS_BIT_ARB = 0x00000004;
+ private static final int CONTEXT_RESET_NOTIFICATION_STRATEGY_ARB = 0x8256;
+ private static final int
+ NO_RESET_NOTIFICATION_ARB = 0x8261,
+ LOSE_CONTEXT_ON_RESET_ARB = 0x8252;
+
private int majorVersion;
private int minorVersion;
@@ -63,10 +70,13 @@
private boolean debug;
private boolean forwardCompatible;
+ private boolean robustAccess;
private boolean profileCore;
private boolean profileCompatibility;
+ private boolean loseContextOnReset;
+
public ContextAttribs() {
this(1, 0);
}
@@ -82,14 +92,6 @@
this.majorVersion = majorVersion;
this.minorVersion = minorVersion;
-
- this.layerPlane = 0;
-
- this.debug = false;
- this.forwardCompatible = false;
-
- this.profileCore = false;
- this.profileCompatibility = false;
}
private ContextAttribs(final ContextAttribs attribs) {
@@ -100,9 +102,12 @@
this.debug = attribs.debug;
this.forwardCompatible = attribs.forwardCompatible;
+ this.robustAccess = attribs.robustAccess;
this.profileCore = attribs.profileCore;
this.profileCompatibility = attribs.profileCompatibility;
+
+ this.loseContextOnReset = attribs.loseContextOnReset;
}
public int getMajorVersion() {
@@ -193,6 +198,24 @@
return attribs;
}
+ /**
+ * Returns a ContextAttribs instance with CONTEXT_RESET_NOTIFICATION_STRATEGY set
+ * to LOSE_CONTEXT_ON_RESET if the parameter is true or to NO_RESET_NOTIFICATION
+ * if the parameter is false.
+ *
+ * @param loseContextOnReset
+ *
+ * @return the new ContextAttribs
+ */
+ public ContextAttribs withLoseContextOnReset(final boolean loseContextOnReset) {
+ if ( loseContextOnReset == this.loseContextOnReset )
+ return this;
+
+ final ContextAttribs attribs = new ContextAttribs(this);
+ attribs.loseContextOnReset = loseContextOnReset;
+ return attribs;
+ }
+
private static ContextAttribsImplementation getImplementation() {
switch ( LWJGLUtil.getPlatform() ) {
case LWJGLUtil.PLATFORM_LINUX:
@@ -221,6 +244,8 @@
flags |= implementation.getDebugBit();
if ( forwardCompatible )
flags |= implementation.getForwardCompatibleBit();
+ if ( robustAccess )
+ flags |= CONTEXT_ROBUST_ACCESS_BIT_ARB;
if ( 0 < flags )
attribCount++;
@@ -247,6 +272,8 @@
attribs.put(implementation.getFlagsAttrib()).put(flags);
if ( 0 < profileMask )
attribs.put(implementation.getProfileMaskAttrib()).put(profileMask);
+ if ( loseContextOnReset )
+ attribs.put(CONTEXT_RESET_NOTIFICATION_STRATEGY_ARB).put(LOSE_CONTEXT_ON_RESET_ARB);
attribs.put(0);
attribs.rewind();
@@ -261,6 +288,9 @@
sb.append(" - Layer=").append(layerPlane);
sb.append(" - Debug=").append(debug);
sb.append(" - ForwardCompatible=").append(forwardCompatible);
+ sb.append(" - RobustAccess=").append(robustAccess);
+ if ( robustAccess )
+ sb.append(" (").append(loseContextOnReset ? "LOSE_CONTEXT_ON_RESET" : "NO_RESET_NOTIFICATION");
sb.append(" - Profile=");
if ( profileCore )
sb.append("Core");
Modified: trunk/LWJGL/src/java/org/lwjgl/opengl/GLContext.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opengl/GLContext.java 2010-07-25 14:22:09 UTC (rev 3391)
+++ trunk/LWJGL/src/java/org/lwjgl/opengl/GLContext.java 2010-07-27 15:33:22 UTC (rev 3392)
@@ -215,38 +215,22 @@
LWJGLUtil.log("The major and/or minor OpenGL version is malformed: " + e.getMessage());
}
- // ----------------------[ 4.X ]----------------------
- if ( 4 <= majorVersion )
- supported_extensions.add("OpenGL40");
+ final int[][] GL_VERSIONS = {
+ { 1, 2, 3, 4, 5 }, // OpenGL 1
+ { 0, 1 }, // OpenGL 2
+ { 0, 1, 2, 3 }, // OpenGL 3
+ { 0, 1 }, // OpenGL 4
+ };
- // ----------------------[ 3.X ]----------------------
- if ( 3 < majorVersion || (3 == majorVersion && 3 <= minorVersion) )
- supported_extensions.add("OpenGL33");
- if ( 3 < majorVersion || (3 == majorVersion && 2 <= minorVersion) )
- supported_extensions.add("OpenGL32");
- if ( 3 < majorVersion || (3 == majorVersion && 1 <= minorVersion) )
- supported_extensions.add("OpenGL31");
- if ( 3 <= majorVersion )
- supported_extensions.add("OpenGL30");
+ for ( int major = 1; major <= GL_VERSIONS.length; major++ ) {
+ int[] minors = GL_VERSIONS[major - 1];
+ for ( int i = 0; i < minors.length; i++ ) {
+ int minor = minors[i];
+ if ( major < majorVersion || (major == majorVersion && minor <= minorVersion) )
+ supported_extensions.add("OpenGL" + Integer.toString(major) + Integer.toString(minor));
+ }
+ }
- // ----------------------[ 2.X ]----------------------
- if ( 2 < majorVersion || (2 == majorVersion && 1 <= minorVersion) )
- supported_extensions.add("OpenGL21");
- if ( 2 <= majorVersion )
- supported_extensions.add("OpenGL20");
-
- // ----------------------[ 1.X ]----------------------
- if ( 1 < majorVersion || 5 <= minorVersion )
- supported_extensions.add("OpenGL15");
- if ( 1 < majorVersion || 4 <= minorVersion )
- supported_extensions.add("OpenGL14");
- if ( 1 < majorVersion || 3 <= minorVersion )
- supported_extensions.add("OpenGL13");
- if ( 1 < majorVersion || 2 <= minorVersion )
- supported_extensions.add("OpenGL12");
- if ( 1 < majorVersion || 1 <= minorVersion )
- supported_extensions.add("OpenGL11");
-
int profileMask = 0;
if ( majorVersion < 3 ) {
Modified: trunk/LWJGL/src/java/org/lwjgl/util/generator/GLTypeMap.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/util/generator/GLTypeMap.java 2010-07-25 14:22:09 UTC (rev 3391)
+++ trunk/LWJGL/src/java/org/lwjgl/util/generator/GLTypeMap.java 2010-07-27 15:33:22 UTC (rev 3392)
@@ -133,9 +133,9 @@
return "s";
else if ( annotation_type.equals(GLubyte.class) || annotation_type.equals(GLbyte.class) )
return "b";
- else if ( annotation_type.equals(GLfloat.class) )
+ else if ( annotation_type.equals(GLfloat.class) || annotation_type.equals(GLclampf.class) )
return "f";
- else if ( annotation_type.equals(GLdouble.class) )
+ else if ( annotation_type.equals(GLdouble.class) || annotation_type.equals(GLclampd.class) )
return "d";
else if ( annotation_type.equals(GLhalf.class) )
return "h";
Modified: trunk/LWJGL/src/native/common/extgl.h
===================================================================
--- trunk/LWJGL/src/native/common/extgl.h 2010-07-25 14:22:09 UTC (rev 3391)
+++ trunk/LWJGL/src/native/common/extgl.h 2010-07-27 15:33:22 UTC (rev 3392)
@@ -136,6 +136,9 @@
/* AMD_debug_output callback function pointer. */
typedef void (APIENTRY *GLDEBUGPROCAMD)(GLuint id, GLenum category, GLenum severity, GLsizei length, const GLchar* message, GLvoid* userParam);
+/* ARB_debug_output callback function pointer. */
+typedef void (APIENTRY *GLDEBUGPROCARB)(GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar* message, GLvoid* userParam);
+
/* helper stuff */
/* initializes everything, call this right after the rc is created. the function returns true if successful */
Modified: trunk/LWJGL/src/native/common/org_lwjgl_opengl_AMDDebugOutputCallback.c
===================================================================
--- trunk/LWJGL/src/native/common/org_lwjgl_opengl_AMDDebugOutputCallback.c 2010-07-25 14:22:09 UTC (rev 3391)
+++ trunk/LWJGL/src/native/common/org_lwjgl_opengl_AMDDebugOutputCallback.c 2010-07-27 15:33:22 UTC (rev 3392)
@@ -41,7 +41,11 @@
#include "extgl.h"
#include "org_lwjgl_opengl_AMDDebugOutputCallback.h"
-static void APIENTRY debugOutputCallback(GLuint id, GLenum category, GLenum severity, GLsizei length, const GLchar* message, GLvoid* userParam) {
+static jclass debugOutputCallbackClassAMD;
+static jmethodID debugOutputCallbackMethodAMD;
+
+static void APIENTRY debugOutputCallbackAMD(GLuint id, GLenum category, GLenum severity, GLsizei length, const GLchar* message, GLvoid* userParam) {
+ /*
jclass callback_class;
jmethodID callback_method;
JNIEnv *env = getThreadEnv();
@@ -60,8 +64,25 @@
}
}
}
+ */
+
+ JNIEnv *env = getThreadEnv();
+ if ( env != NULL && !(*env)->ExceptionOccurred(env) && debugOutputCallbackMethodAMD != NULL ) {
+ (*env)->CallStaticVoidMethod(env, debugOutputCallbackClassAMD, debugOutputCallbackMethodAMD,
+ (jint)id,
+ (jint)category,
+ (jint)severity,
+ NewStringNativeWithLength(env, message, length),
+ NULL // Ignoring user param, pointless for our implementation
+ );
+ }
}
JNIEXPORT jlong JNICALL Java_org_lwjgl_opengl_AMDDebugOutputCallback_getFunctionPointer(JNIEnv *env, jclass clazz) {
- return (jlong)(intptr_t)&debugOutputCallback;
+ // Cache the callback class and methodID
+ debugOutputCallbackClassAMD = (*env)->FindClass(env, "org/lwjgl/opengl/AMDDebugOutputUtil");
+ if ( debugOutputCallbackClassAMD != NULL )
+ debugOutputCallbackMethodAMD = (*env)->GetStaticMethodID(env, debugOutputCallbackClassAMD, "messageCallback", "(IIILjava/lang/String;Ljava/nio/ByteBuffer;)V");
+
+ return (jlong)(intptr_t)&debugOutputCallbackAMD;
}
Added: trunk/LWJGL/src/native/common/org_lwjgl_opengl_ARBDebugOutputCallback.c
===================================================================
--- trunk/LWJGL/src/native/common/org_lwjgl_opengl_ARBDebugOutputCallback.c (rev 0)
+++ trunk/LWJGL/src/native/common/org_lwjgl_opengl_ARBDebugOutputCallback.c 2010-07-27 15:33:22 UTC (rev 3392)
@@ -0,0 +1,68 @@
+/*
+ * Copyright (c) 2002-2008 LWJGL Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'LWJGL' nor the names of
+ * its contributors may be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/**
+ * JNI implementation of the AMD_debug_output function callback.
+ *
+ * @author Spasi
+ */
+
+#include <jni.h>
+#include "common_tools.h"
+#include "extgl.h"
+#include "org_lwjgl_opengl_ARBDebugOutputCallback.h"
+
+static jclass debugOutputCallbackClassARB;
+static jmethodID debugOutputCallbackMethodARB;
+
+static void APIENTRY debugOutputCallbackARB(GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar* message, GLvoid* userParam) {
+ JNIEnv *env = getThreadEnv();
+ if ( env != NULL && !(*env)->ExceptionOccurred(env) && debugOutputCallbackMethodARB != NULL ) {
+ (*env)->CallStaticVoidMethod(env, debugOutputCallbackClassARB, debugOutputCallbackMethodARB,
+ (jint)source,
+ (jint)type,
+ (jint)id,
+ (jint)severity,
+ NewStringNativeWithLength(env, message, length),
+ NULL // Ignoring user param, pointless for our implementation
+ );
+ }
+}
+
+JNIEXPORT jlong JNICALL Java_org_lwjgl_opengl_ARBDebugOutputCallback_getFunctionPointer(JNIEnv *env, jclass clazz) {
+ // Cache the callback class and methodID
+ debugOutputCallbackClassARB = (*env)->FindClass(env, "org/lwjgl/opengl/ARBDebugOutputUtil");
+ if ( debugOutputCallbackClassARB != NULL )
+ debugOutputCallbackMethodARB = (*env)->GetStaticMethodID(env, debugOutputCallbackClassARB, "messageCallback", "(IIIILjava/lang/String;Ljava/nio/ByteBuffer;)V");
+
+ return (jlong)(intptr_t)&debugOutputCallbackARB;
+}
Added: trunk/LWJGL/src/templates/org/lwjgl/opengl/ARB_ES2_compatibility.java
===================================================================
--- trunk/LWJGL/src/templates/org/lwjgl/opengl/ARB_ES2_compatibility.java (rev 0)
+++ trunk/LWJGL/src/templates/org/lwjgl/opengl/ARB_ES2_compatibility.java 2010-07-27 15:33:22 UTC (rev 3392)
@@ -0,0 +1,80 @@
+/*
+ * Copyright (c) 2002-2008 LWJGL Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'LWJGL' nor the names of
+ * its contributors may be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+package org.lwjgl.opengl;
+
+import org.lwjgl.util.generator.*;
+
+import java.nio.ByteBuffer;
+import java.nio.IntBuffer;
+
+public interface ARB_ES2_compatibility {
+
+ /**
+ * Accepted by the <value> parameter of GetBooleanv, GetIntegerv,
+ * GetInteger64v, GetFloatv, and GetDoublev:
+ */
+ int GL_SHADER_COMPILER = 0x8DFA,
+ GL_NUM_SHADER_BINARY_FORMATS = 0x8DF9,
+ GL_MAX_VERTEX_UNIFORM_VECTORS = 0x8DFB,
+ GL_MAX_VARYING_VECTORS = 0x8DFC,
+ GL_MAX_FRAGMENT_UNIFORM_VECTORS = 0x8DFD,
+ GL_IMPLEMENTATION_COLOR_READ_TYPE = 0x8B9A,
+ GL_IMPLEMENTATION_COLOR_READ_FORMAT = 0x8B9B;
+
+ /** Accepted by the <type> parameter of VertexAttribPointer: */
+ int GL_FIXED = 0x140C;
+
+ /**
+ * Accepted by the <precisiontype> parameter of
+ * GetShaderPrecisionFormat:
+ */
+ int GL_LOW_FLOAT = 0x8DF0,
+ GL_MEDIUM_FLOAT = 0x8DF1,
+ GL_HIGH_FLOAT = 0x8DF2,
+ GL_LOW_INT = 0x8DF3,
+ GL_MEDIUM_INT = 0x8DF4,
+ GL_HIGH_INT = 0x8DF5;
+
+ void glReleaseShaderCompiler();
+
+ void glShaderBinary(@AutoSize("shaders") @GLsizei int count, @Const @GLuint IntBuffer shaders,
+ @GLenum int binaryformat, @Const @GLvoid ByteBuffer binary, @AutoSize("binary") @GLsizei int length);
+
+ void glGetShaderPrecisionFormat(@GLenum int shadertype, @GLenum int precisiontype,
+ @OutParameter @Check("2") IntBuffer range,
+ @OutParameter @Check("1") IntBuffer precision);
+
+ void glDepthRangef(@GLclampf float n, @GLclampf float f);
+
+ void glClearDepthf(@GLclampf float d);
+
+}
\ No newline at end of file
Added: trunk/LWJGL/src/templates/org/lwjgl/opengl/ARB_debug_output.java
===================================================================
--- trunk/LWJGL/src/templates/org/lwjgl/opengl/ARB_debug_output.java (rev 0)
+++ trunk/LWJGL/src/templates/org/lwjgl/opengl/ARB_debug_output.java 2010-07-27 15:33:22 UTC (rev 3392)
@@ -0,0 +1,121 @@
+/*
+ * Copyright (c) 2002-2008 LWJGL Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'LWJGL' nor the names of
+ * its contributors may be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+package org.lwjgl.opengl;
+
+import org.lwjgl.util.generator.*;
+
+import java.nio.ByteBuffer;
+import java.nio.IntBuffer;
+
+public interface ARB_debug_output {
+
+ /**
+ * Tokens accepted by the <target> parameters of Enable, Disable,
+ * and IsEnabled:
+ */
+ int GL_DEBUG_OUTPUT_SYNCHRONOUS_ARB = 0x8242;
+
+ /**
+ * Tokens accepted by the <value> parameters of GetBooleanv,
+ * GetIntegerv, GetFloatv, and GetDoublev:
+ */
+ int GL_MAX_DEBUG_MESSAGE_LENGTH_ARB = 0x9143,
+ GL_MAX_DEBUG_LOGGED_MESSAGES_ARB = 0x9144,
+ GL_DEBUG_LOGGED_MESSAGES_ARB = 0x9145,
+ GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH_ARB = 0x8243;
+
+ /** Tokens accepted by the <pname> parameter of GetPointerv: */
+ int GL_DEBUG_CALLBACK_FUNCTION_ARB = 0x8244,
+ GL_DEBUG_CALLBACK_USER_PARAM_ARB = 0x8245;
+
+ /**
+ * Tokens accepted or provided by the <source> parameters of
+ * DebugMessageControlARB, DebugMessageInsertARB and DEBUGPROCARB,
+ * and the <sources> parameter of GetDebugMessageLogARB:
+ */
+ int GL_DEBUG_SOURCE_API_ARB = 0x8246,
+ GL_DEBUG_SOURCE_WINDOW_SYSTEM_ARB = 0x8247,
+ GL_DEBUG_SOURCE_SHADER_COMPILER_ARB = 0x8248,
+ GL_DEBUG_SOURCE_THIRD_PARTY_ARB = 0x8249,
+ GL_DEBUG_SOURCE_APPLICATION_ARB = 0x824A,
+ GL_DEBUG_SOURCE_OTHER_ARB = 0x824B;
+
+ /**
+ * Tokens accepted or provided by the <type> parameters of
+ * DebugMessageControlARB, DebugMessageInsertARB and DEBUGPROCARB,
+ * and the <types> parameter of GetDebugMessageLogARB:
+ */
+ int GL_DEBUG_TYPE_ERROR_ARB = 0x824C,
+ GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR_ARB = 0x824D,
+ GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR_ARB = 0x824E,
+ GL_DEBUG_TYPE_PORTABILITY_ARB = 0x824F,
+ GL_DEBUG_TYPE_PERFORMANCE_ARB = 0x8250,
+ GL_DEBUG_TYPE_OTHER_ARB = 0x8251;
+
+ /**
+ * Tokens accepted or provided by the <severity> parameters of
+ * DebugMessageControlARB, DebugMessageInsertARB and DEBUGPROCARB
+ * callback functions, and the <severities> parameter of
+ * GetDebugMessageLogARB:
+ */
+ int GL_DEBUG_SEVERITY_HIGH_ARB = 0x9146,
+ GL_DEBUG_SEVERITY_MEDIUM_ARB = 0x9147,
+ GL_DEBUG_SEVERITY_LOW_ARB = 0x9148;
+
+ void glDebugMessageControlARB(@GLenum int source,
+ @GLenum int type,
+ @GLenum int severity,
+ @AutoSize(value = "ids", canBeNull = true) @GLsizei int count,
+ @Check(canBeNull = true) @Const @GLuint IntBuffer ids,
+ boolean enabled);
+
+ void glDebugMessageInsertARB(@GLenum int source, @GLenum int type, @GLuint int id, @GLenum int severity, @AutoSize("buf") @GLsizei int length, @Const @GLchar ByteBuffer buf);
+
+ @Alternate("glDebugMessageInsertARB")
+ void glDebugMessageInsertARB(@GLenum int source, @GLenum int type, @GLuint int id, @GLenum int severity, @Constant("buf.length()") @GLsizei int length, CharSequence buf);
+
+ void glDebugMessageCallbackARB(@GLpointer(value = "GLDEBUGPROCARB", canBeNull = true) ARBDebugOutputCallback callback, @Check(canBeNull = true) @GLvoid ByteBuffer userParam);
+
+ @GLuint
+ int glGetDebugMessageLogARB(@GLuint int count,
+ @AutoSize(value = "messageLog", canBeNull = true) @GLsizei int logSize,
+ @Check(value = "count", canBeNull = true) @GLenum IntBuffer sources,
+ @Check(value = "count", canBeNull = true) @GLenum IntBuffer types,
+ @Check(value = "count", canBeNull = true) @GLuint IntBuffer ids,
+ @Check(value = "count", canBeNull = true) @GLenum IntBuffer severities,
+ @Check(value = "count", canBeNull = true) @GLsizei IntBuffer lengths,
+ @Check(canBeNull = true) @OutParameter @GLchar ByteBuffer messageLog);
+
+ // Not really useful and a pain to implement in Java
+ //void glGetPointerv(@GLenum int pname, void**params);
+
+}
\ No newline at end of file
Added: trunk/LWJGL/src/templates/org/lwjgl/opengl/ARB_get_program_binary.java
===================================================================
--- trunk/LWJGL/src/templates/org/lwjgl/opengl/ARB_get_program_binary.java (rev 0)
+++ trunk/LWJGL/src/templates/org/lwjgl/opengl/ARB_get_program_binary.java 2010-07-27 15:33:22 UTC (rev 3392)
@@ -0,0 +1,66 @@
+/*
+ * Copyright (c) 2002-2008 LWJGL Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'LWJGL' nor the names of
+ * its contributors may be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+package org.lwjgl.opengl;
+
+import org.lwjgl.util.generator.*;
+
+import java.nio.ByteBuffer;
+import java.nio.IntBuffer;
+
+public interface ARB_get_program_binary {
+
+ /**
+ * Accepted by the <pname> parameter of ProgramParameteri and
+ * GetProgramiv:
+ */
+ int GL_PROGRAM_BINARY_RETRIEVABLE_HINT = 0x8257;
+
+ /** Accepted by the <pname> parameter of GetProgramiv: */
+ int GL_PROGRAM_BINARY_LENGTH = 0x8741;
+
+ /**
+ * Accepted by the <pname> parameter of GetBooleanv, GetIntegerv,
+ * GetInteger64v, GetFloatv and GetDoublev:
+ */
+ int GL_NUM_PROGRAM_BINARY_FORMATS = 0x87FE,
+ GL_PROGRAM_BINARY_FORMATS = 0x87FF;
+
+ void glGetProgramBinary(@GLuint int program, @AutoSize("binary") @GLsizei int bufSize,
+ @Check(value = "1", canBeNull = true) @GLsizei IntBuffer length,
+ @Check("1") @GLenum IntBuffer binaryFormat,
+ @OutParameter @GLvoid ByteBuffer binary);
+
+ void glProgramBinary(@GLuint int program, @GLenum int binaryFormat, @Const @GLvoid ByteBuffer binary, @AutoSize("binary") @GLsizei int length);
+
+ void glProgramParameteri(@GLuint int program, @GLenum int pname, int value);
+
+}
\ No newline at end of file
Added: trunk/LWJGL/src/templates/org/lwjgl/opengl/ARB_robustness.java
===================================================================
--- trunk/LWJGL/src/templates/org/lwjgl/opengl/ARB_robustness.java (rev 0)
+++ trunk/LWJGL/src/templates/org/lwjgl/opengl/ARB_robustness.java 2010-07-27 15:33:22 UTC (rev 3392)
@@ -0,0 +1,190 @@
+/*
+ * Copyright (c) 2002-2008 LWJGL Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'LWJGL' nor the names of
+ * its contributors may be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+package org.lwjgl.opengl;
+
+import org.lwjgl.util.generator.*;
+
+import java.nio.*;
+
+@Dependent
+@DeprecatedGL
+public interface ARB_robustness {
+
+ /** Returned by GetGraphicsResetStatusARB: */
+ int GL_NO_ERROR = 0x0000,
+ GL_GUILTY_CONTEXT_RESET_ARB = 0x8253,
+ GL_INNOCENT_CONTEXT_RESET_ARB = 0x8254,
+ GL_UNKNOWN_CONTEXT_RESET_ARB = 0x8255;
+
+ /**
+ * Accepted by the <value> parameter of GetBooleanv, GetIntegerv,
+ * GetInteger64v, GetFloatv, and GetDoublev:
+ */
+ int GL_RESET_NOTIFICATION_STRATEGY_ARB = 0x8256;
+
+ /**
+ * Returned by GetIntegerv and related simple queries when
+ * <value> is RESET_NOTIFICATION_STRATEGY_ARB:
+ */
+ int GL_LOSE_CONTEXT_ON_RESET_ARB = 0x8252,
+ GL_NO_RESET_NOTIFICATION_ARB = 0x8261;
+
+ /** Returned by GetIntegerv when <pname> is CONTEXT_FLAGS: */
+ int GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT_ARB = 0x00000004;
+
+ @GLenum
+ int glGetGraphicsResetStatusARB();
+
+ @DeprecatedGL
+ void glGetnMapdvARB(@GLenum int target, @GLenum int query, @Constant("v.remaining() << 3") @GLsizei int bufSize, @OutParameter @Check DoubleBuffer v);
+
+ @DeprecatedGL
+ void glGetnMapfvARB(@GLenum int target, @GLenum int query, @Constant("v.remaining() << 2") @GLsizei int bufSize, @OutParameter @Check FloatBuffer v);
+
+ @DeprecatedGL
+ void glGetnMapivARB(@GLenum int target, @GLenum int query, @Constant("v.remaining() << 2") @GLsizei int bufSize, @OutParameter @Check IntBuffer v);
+
+ @DeprecatedGL
+ void glGetnPixelMapfvARB(@GLenum int map, @Constant("values.remaining() << 2") @GLsizei int bufSize, @OutParameter @Check FloatBuffer values);
+
+ @DeprecatedGL
+ void glGetnPixelMapuivARB(@GLenum int map, @Constant("values.remaining() << 2") @GLsizei int bufSize, @OutParameter @Check @GLuint IntBuffer values);
+
+ @DeprecatedGL
+ void glGetnPixelMapusvARB(@GLenum int map, @Constant("values.remaining() << 1") @GLsizei int bufSize, @OutParameter @Check @GLushort ShortBuffer values);
+
+ @DeprecatedGL
+ void glGetnPolygonStippleARB(@AutoSize("pattern") @GLsizei int bufSize, @OutParameter @GLubyte ByteBuffer pattern);
+
+ void glGetnTexImageARB(@GLenum int target, int level, @GLenum int format, @GLenum int type, @AutoSize("img") @GLsizei int bufSize,
+ @OutParameter
+ @BufferObject(BufferKind.PackPBO)
+ @GLbyte
+ @GLshort
+ @GLint
+ @GLfloat
+ @GLdouble Buffer img);
+
+ void glReadnPixelsARB(int x, int y, @GLsizei int width, @GLsizei int height,
+ @GLenum int format, @GLenum int type, @AutoSize("data") @GLsizei int bufSize,
+ @OutParameter
+ @BufferObject(BufferKind.PackPBO)
+ @GLbyte
+ @GLshort
+ @GLint
+ @GLfloat
+ @GLdouble Buffer data);
+
+ @Dependent("GL_ARB_imaging")
+ void glGetnColorTableARB(@GLenum int target, @GLenum int format, @GLenum int type, @AutoSize("table") @GLsizei int bufSize,
+ @OutParameter
+ @GLbyte
+ @GLfloat
+ @GLdouble Buffer table);
+
+ @Dependent("GL_ARB_imaging")
+ void glGetnConvolutionFilterARB(@GLenum int target, @GLenum int format, @GLenum int type, @AutoSize("image") @GLsizei int bufSize,
+ @OutParameter
+ @BufferObject(BufferKind.PackPBO)
+ @GLbyte
+ @GLshort
+ @GLint
+ @GLfloat
+ @GLdouble Buffer image);
+
+ @Dependent("GL_ARB_imaging")
+ void glGetnSeparableFilterARB(@GLenum int target, @GLenum int format, @GLenum int type,
+ @AutoSize("row") @GLsizei int rowBufSize,
+ @OutParameter
+ @BufferObject(BufferKind.PackPBO)
+ @GLbyte
+ @GLshort
+ @GLint
+ @GLfloat
+ @GLdouble Buffer row,
+ @AutoSize("column") @GLsizei int columnBufSize,
+ @OutParameter
+ @BufferObject(BufferKind.PackPBO)
+ @GLbyte
+ @GLshort
+ @GLint
+ @GLfloat
+ @GLdouble Buffer column,
+ @OutParameter
+ @BufferObject(BufferKind.PackPBO)
+ @Check
+ @GLbyte
+ @GLshort
+ @GLint
+ @GLfloat
+ @GLdouble Buffer span);
+
+ @Dependent("GL_ARB_imaging")
+ void glGetnHistogramARB(@GLenum int target, boolean reset, @GLenum int format, @GLenum int type, @AutoSize("values") @GLsizei int bufSize,
+ @OutParameter
+ @BufferObject(BufferKind.PackPBO)
+ @GLbyte
+ @GLshort
+ @GLint
+ @GLfloat
+ @GLdouble Buffer values);
+
+ @Dependent("GL_ARB_imaging")
+ void glGetnMinmaxARB(@GLenum int target, boolean reset, @GLenum int format, @GLenum int type, @AutoSize("values") @GLsizei int bufSize,
+ @OutParameter
+ @BufferObject(BufferKind.PackPBO)
+ @GLbyte
+ @GLshort
+ @GLint
+ @GLfloat
+ @GLdouble Buffer values);
+
+ @Dependent("OpenGL13")
+ void glGetnCompressedTexImageARB(@GLenum int target, int lod, @AutoSize("img") @GLsizei int bufSize,
+ @OutParameter
+ @BufferObject(BufferKind.PackPBO)
+ @GLbyte
+ @GLshort
+ @GLint Buffer img);
+
+ @Dependent("OpenGL20")
+ void glGetnUniformfvARB(@GLuint int program, int location, @Constant("params.remaining() << 2") @GLsizei int bufSize, @OutParameter @Check FloatBuffer params);
+
+ @Dependent("OpenGL20")
+ void glGetnUniformivARB(@GLuint int program, int location, @Constant("params.remaining() << 2") @GLsizei int bufSize, @OutParameter @Check IntBuffer params);
+
+ @Dependent("OpenGL20")
+ void glGetnUniformuivARB(@GLuint int program, int location, @Constant("params.remaining() << 2") @GLsizei int bufSize, @OutParameter @Check @GLuint IntBuffer params);
+
+ @Dependent("OpenGL20")
+ void glGetnUniformdvARB(@GLuint int program, int location, @Constant("params.remaining() << 3") @GLsizei int bufSize, @OutParameter @Check DoubleBuffer params);
+}
\ No newline at end of file
Added: trunk/LWJGL/src/templates/org/lwjgl/opengl/ARB_separate_shader_objects.java
===================================================================
--- trunk/LWJGL/src/templates/org/lwjgl/opengl/ARB_separate_shader_objects.java (rev 0)
+++ trunk/LWJGL/src/templates/org/lwjgl/opengl/ARB_separate_shader_objects.java 2010-07-27 15:33:22 UTC (rev 3392)
@@ -0,0 +1,269 @@
+/*
+ * Copyright (c) 2002-2008 LWJGL Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'LWJGL' nor the names of
+ * its contributors may be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+package org.lwjgl.opengl;
+
+import org.lwjgl.util.generator.*;
+
+import java.nio.ByteBuffer;
+import java.nio.DoubleBuffer;
+import java.nio.FloatBuffer;
+import java.nio.IntBuffer;
+
+@Extension(postfix = "")
+public interface ARB_separate_shader_objects {
+
+ /** Accepted by <stages> parameter to UseProgramStages: */
+ int GL_VERTEX_SHADER_BIT = 0x00000001,
+ GL_FRAGMENT_SHADER_BIT = 0x00000002,
+ GL_GEOMETRY_SHADER_BIT = 0x00000004,
+ GL_TESS_CONTROL_SHADER_BIT = 0x00000008,
+ GL_TESS_EVALUATION_SHADER_BIT = 0x00000010,
+ GL_ALL_SHADER_BITS = 0xFFFFFFFF;
+
+ /**
+ * Accepted by the <pname> parameter of ProgramParameteri and
+ * GetProgramiv:
+ */
+ int GL_PROGRAM_SEPARABLE = 0x8258;
+
+ /** Accepted by <type> parameter to GetProgramPipelineiv: */
+ int GL_ACTIVE_PROGRAM = 0x8259;
+
+ /**
+ * Accepted by the <pname> parameter of GetBooleanv, GetIntegerv,
+ * GetInteger64v, GetFloatv, and GetDoublev:
+ */
+ int GL_PROGRAM_PIPELINE_BINDING = 0x825A;
+
+ void glUseProgramStages(@GLuint int pipeline, @GLbitfield int stages, @GLuint int program);
+
+ void glActiveShaderProgram(@GLuint int pipeline, @GLuint int program);
+
+ @StripPostfix(value = "strings", postfix = "v")
+ @GLuint
+ int glCreateShaderProgramv(@GLenum int type, @GLsizei int count, @Check @Const @Indirect @GLchar ByteBuffer strings);
+
+ @Alternate("glCreateShaderProgramv")
+ @StripPostfix(value = "string", postfix = "v")
+ @GLuint
+ int glCreateShaderProgramv(@GLenum int type, @Constant("1") @GLsizei int count, @NullTerminated CharSequence string);
+
+ @Alternate("glCreateShaderProgramv")
+ @StripPostfix(value = "strings", postfix = "v")
+ @GLuint
+ int glCreateShaderProgramv(@GLenum int type, @Constant("strings.length") @GLsizei int count,
+ @Const @NullTerminated @StringList(value = "count") CharSequence[] strings);
+
+ void glBindProgramPipeline(@GLuint int pipeline);
+
+ void glDeleteProgramPipelines(@AutoSize("pipelines") @GLsizei int n, @Const @GLuint IntBuffer pipelines);
+
+ @Alternate("glDeleteProgramPipelines")
+ void glDeleteProgramPipelines(@Constant("1") @GLsizei int n, @Constant(value = "APIUtils.getBufferInt().put(0, pipeline), 0", keepParam = true) int pipeline);
+
+ void glGenProgramPipelines(@AutoSize("pipelines") @GLsizei int n, @OutParameter @GLuint IntBuffer pipelines);
+
+ @Alternate("glGenProgramPipelines")
+ @GLreturn("pipelines")
+ void glGenProgramPipelines2(@Constant("1") @GLsizei int n, @OutParameter @GLuint IntBuffer pipelines);
+
+ boolean glIsProgramPipeline(@GLuint int pipeline);
+
+ void glProgramParameteri(@GLuint int program, @GLenum int pname, int value);
+
+ @StripPostfix("params")
+ void glGetProgramPipelineiv(@GLuint int pipeline, @GLenum int pname, @OutParameter @Check("1") IntBuffer params);
+
+ @Alternate("glGetProgramPipelineiv")
+ @GLreturn("params")
+ @StripPostfix("params")
+ void glGetProgramPipelineiv2(@GLuint int pipeline, @GLenum int pname, @OutParameter IntBuffer params);
+
+ void glProgramUniform1i(@GLuint int program, int location, int v0);
+
+ void glProgramUniform2i(@GLuint int program, int location, int v0, int v1);
+
+ void glProgramUniform3i(@GLuint int program, int location, int v0, int v1, int v2);
+
+ void glProgramUniform4i(@GLuint int program, int location, int v0, int v1, int v2, int v3);
+
+ void glProgramUniform1f(@GLuint int program, int location, float v0);
+
+ void glProgramUniform2f(@GLuint int program, int location, float v0, float v1);
+
+ void glProgramUniform3f(@GLuint int program, int location, float v0, float v1, float v2);
+
+ void glProgramUniform4f(@GLuint int program, int location, float v0, float v1, float v2, float v3);
+
+ void glProgramUniform1d(@GLuint int program, int location, double v0);
+
+ void glProgramUniform2d(@GLuint int program, int location, double v0, double v1);
+
+ void glProgramUniform3d(@GLuint int program, int location, double v0, double v1, double v2);
+
+ void glProgramUniform4d(@GLuint int program, int location, double v0, double v1, double v2, double v3);
+
+ @StripPostfix("value")
+ void glProgramUniform1iv(@GLuint int program, int location, @AutoSize("value") @GLsizei int count, @Const IntBuffer value);
+
+ @StripPostfix("value")
+ void glProgramUniform2iv(@GLuint int program, int location, @AutoSize(value = "value", expression = " >> 1") @GLsizei int count, @Const IntBuffer value);
+
+ @StripPostfix("value")
+ void glProgramUniform3iv(@GLuint int program, int location, @AutoSize(value = "value", expression = " / 3") @GLsizei int count, @Const IntBuffer value);
+
+ @StripPostfix("value")
+ void glProgramUniform4iv(@GLuint int program, int location, @AutoSize(value = "value", expression = " >> 2") @GLsizei int count, @Const IntBuffer value);
+
+ @StripPostfix("value")
+ void glProgramUniform1fv(@GLuint int program, int location, @AutoSize("value") @GLsizei int count, @Const FloatBuffer value);
+
+ @StripPostfix("value")
+ void glProgramUniform2fv(@GLuint int program, int location, @AutoSize(value = "value", expression = " >> 1") @GLsizei int count, @Const FloatBuffer value);
+
+ @StripPostfix("value")
+ void glProgramUniform3fv(@GLuint int program, int location, @AutoSize(value = "value", expression = " / 3") @GLsizei int count, @Const FloatBuffer value);
+
+ @StripPostfix("value")
+ void glProgramUniform4fv(@GLuint int program, int location, @AutoSize(value = "value", expression = " >> 2") @GLsizei int count, @Const FloatBuffer value);
+
+ @StripPostfix("value")
+ void glProgramUniform1dv(@GLuint int program, int location, @AutoSize("value") @GLsizei int count, @Const DoubleBuffer value);
+
+ @StripPostfix("value")
+ void glProgramUniform2dv(@GLuint int program, int location, @AutoSize(value = "value", expression = " >> 1") @GLsizei int count, @Const DoubleBuffer value);
+
+ @StripPostfix("value")
+ void glProgramUniform3dv(@GLuint int program, int location, @AutoSize(value = "value", expression = " / 3") @GLsizei int count, @Const DoubleBuffer value);
+
+ @StripPostfix("value")
+ void glProgramUniform4dv(@GLuint int program, int location, @AutoSize(value = "value", expression = " >> 2") @GLsizei int count, @Const DoubleBuffer value);
+
+ void glProgramUniform1ui(@GLuint int program, int location, int v0);
+
+ void glProgramUniform2ui(@GLuint int program, int location, int v0, int v1);
+
+ void glProgramUniform3ui(@GLuint int program, int location, int v0, int v1, int v2);
+
+ void glProgramUniform4ui(@GLuint int program, int location, int v0, int v1, int v2, int v3);
+
+ @StripPostfix("value")
+ void glProgramUniform1uiv(@GLuint int program, int location, @AutoSize("value") @GLsizei int count, @Const IntBuffer value);
+
+ @StripPostfix("value")
+ void glProgramUniform2uiv(@GLuint int program, int location, @AutoSize(value = "value", expression = " >> 1") @GLsizei int count, @Const IntBuffer value);
+
+ @StripPostfix("value")
+ void glProgramUniform3uiv(@GLuint int program, int location, @AutoSize(value = "value", expression = " / 3") @GLsizei int count, @Const IntBuffer value);
+
+ @StripPostfix("value")
+ void glProgramUniform4uiv(@GLuint int program, int location, @AutoSize(value = "value", expression = " >> 2") @GLsizei int count, @Const IntBuffer value);
+
+ @StripPostfix("value")
+ void glProgramUniformMatrix2fv(@GLuint int program, int location, @AutoSize(value = "value", expression = " >> 2") @GLsizei int count, boolean transpose, @Const FloatBuffer value);
+
+ @StripPostfix("value")
+ void glProgramUniformMatrix3fv(@GLuint int program, int location, @AutoSize(value = "value", expression = " / (3 * 3)") @GLsizei int count, boolean transpose, @Const FloatBuffer value);
+
+ @StripPostfix("value")
+ void glProgramUniformMatrix4fv(@GLuint int program, int location,...
[truncated message content] |
|
From: <ka...@us...> - 2010-07-25 14:22:15
|
Revision: 3391
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3391&view=rev
Author: kappa1
Date: 2010-07-25 14:22:09 +0000 (Sun, 25 Jul 2010)
Log Message:
-----------
AppletLoader: slight tweak to make code more readable
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java
Modified: trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java 2010-07-25 13:35:00 UTC (rev 3390)
+++ trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java 2010-07-25 14:22:09 UTC (rev 3391)
@@ -284,10 +284,10 @@
fgColor = getColor("boxfgcolor", Color.black);
// load logos, if value is "" then skip
- if (!getParameter("al_logo").equals("")) {
+ if (getParameter("al_logo").length() > 0) {
logo = getImage(getParameter("al_logo"));
}
- if (!getParameter("al_progressbar").equals("")) {
+ if (getParameter("al_progressbar").length() > 0) {
progressbar = getImage(getParameter("al_progressbar"));
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ka...@us...> - 2010-07-25 13:35:08
|
Revision: 3390
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3390&view=rev
Author: kappa1
Date: 2010-07-25 13:35:00 +0000 (Sun, 25 Jul 2010)
Log Message:
-----------
AppletLoader: removed dead code.
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java
Modified: trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java 2010-07-25 13:31:49 UTC (rev 3389)
+++ trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java 2010-07-25 13:35:00 UTC (rev 3390)
@@ -463,11 +463,6 @@
int x = offscreen.getWidth(null)/2;
int y = offscreen.getHeight(null)/2;
- /*if(logo != null) {
- x = (offscreen.getWidth(null) - logo.getWidth(null)) / 2;
- y = (offscreen.getHeight(null) - logo.getHeight(null)) / 2;
- }*/
-
// draw logo
if (logo != null) {
og.drawImage(logoBuffer, x-logo.getWidth(null)/2, y-logo.getHeight(null)/2, this);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ka...@us...> - 2010-07-25 13:31:57
|
Revision: 3389
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3389&view=rev
Author: kappa1
Date: 2010-07-25 13:31:49 +0000 (Sun, 25 Jul 2010)
Log Message:
-----------
AppletLoader: addded ability to use appletloader with no images, just the logo, just the progressbar or both. To set no image for either image you must set the parameter value to "". Both images are now centred independently allowing variable size logo and progressbar images. Resized appletprogress.gif to match appletlogo.png size.
Modified Paths:
--------------
trunk/LWJGL/res/appletprogress.gif
trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java
Modified: trunk/LWJGL/res/appletprogress.gif
===================================================================
(Binary files differ)
Modified: trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java 2010-07-25 12:18:17 UTC (rev 3388)
+++ trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java 2010-07-25 13:31:49 UTC (rev 3389)
@@ -283,14 +283,13 @@
setBackground(bgColor);
fgColor = getColor("boxfgcolor", Color.black);
- // load logos
- logo = getImage(getParameter("al_logo"));
- progressbar = getImage(getParameter("al_progressbar"));
-
- //sanity check
- if(logo == null || progressbar == null) {
- fatalErrorOccured("Unable to load logo and progressbar images", null);
+ // load logos, if value is "" then skip
+ if (!getParameter("al_logo").equals("")) {
+ logo = getImage(getParameter("al_logo"));
}
+ if (!getParameter("al_progressbar").equals("")) {
+ progressbar = getImage(getParameter("al_progressbar"));
+ }
// check for lzma support
try {
@@ -460,22 +459,27 @@
painting = true;
- // get logo position so its in the middle of applet
- int x = 0, y = 0;
+ // get position at the middle of the offscreen buffer
+ int x = offscreen.getWidth(null)/2;
+ int y = offscreen.getHeight(null)/2;
- if(logo != null) {
+ /*if(logo != null) {
x = (offscreen.getWidth(null) - logo.getWidth(null)) / 2;
y = (offscreen.getHeight(null) - logo.getHeight(null)) / 2;
- }
+ }*/
// draw logo
- if (logo != null) og.drawImage(logoBuffer, x, y, this);
+ if (logo != null) {
+ og.drawImage(logoBuffer, x-logo.getWidth(null)/2, y-logo.getHeight(null)/2, this);
+ }
// draw message
int messageX = (offscreen.getWidth(null) - fm.stringWidth(message)) / 2;
int messageY = y + 20;
- if (logo != null) messageY += logoBuffer.getHeight(null);
+ if (logo != null) messageY += logo.getHeight(null)/2;
+ else if (progressbar != null) messageY += progressbar.getHeight(null)/2;
+
og.drawString(message, messageX, messageY);
// draw subtaskmessage, if any
@@ -486,9 +490,9 @@
// draw loading bar, clipping it depending on percentage done
if (progressbar != null) {
- int barSize = (progressbarBuffer.getWidth(null) * percentage) / 100;
- og.clipRect(0, 0, x + barSize, offscreen.getHeight(null));
- og.drawImage(progressbarBuffer, x, y, this);
+ int barSize = (progressbar.getWidth(null) * percentage) / 100;
+ og.clipRect(x-progressbar.getWidth(null)/2, 0, barSize, offscreen.getHeight(null));
+ og.drawImage(progressbarBuffer, x-progressbar.getWidth(null)/2, y-progressbar.getHeight(null)/2, this);
}
painting = false;
@@ -527,7 +531,10 @@
g.fillRect(0, 0, buffer.getWidth(null), buffer.getHeight(null));
// buffer background is cleared, so draw logo under progressbar
- if (img == progressbar && logo != null) g.drawImage(logoBuffer, 0, 0, null);
+ if (img == progressbar && logo != null) {
+ g.drawImage(logoBuffer, progressbar.getWidth(null)/2-logo.getWidth(null)/2,
+ progressbar.getHeight(null)/2-logo.getHeight(null)/2, null);
+ }
g.drawImage(img, 0, 0, this);
g.dispose();
@@ -1453,6 +1460,9 @@
} catch (Exception e) {
/* */
}
+
+ // show error as image could not be loaded
+ fatalErrorOccured("Unable to load logo and progressbar images", null);
return null;
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ka...@us...> - 2010-07-25 12:18:23
|
Revision: 3388
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3388&view=rev
Author: kappa1
Date: 2010-07-25 12:18:17 +0000 (Sun, 25 Jul 2010)
Log Message:
-----------
AppletLoader: actually fail with error message if logo images are not found or an error occurs when they are loaded, added missing MediaTracker step. Also prevent paint thread from null pointer exception when this happens.
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java
Modified: trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java 2010-07-25 11:40:58 UTC (rev 3387)
+++ trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java 2010-07-25 12:18:17 UTC (rev 3388)
@@ -405,7 +405,6 @@
* @see java.awt.Container#paint(java.awt.Graphics)
*/
public void paint(Graphics g) {
-
// don't paint loader if applet loaded
if(state == STATE_DONE) {
return;
@@ -416,16 +415,21 @@
offscreen = createImage(getWidth(), getHeight());
// create buffers for animated gifs
- logoBuffer = createImage(logo.getWidth(null), logo.getHeight(null));
- progressbarBuffer = createImage(logo.getWidth(null), logo.getHeight(null));
+ if (logo != null) {
+ logoBuffer = createImage(logo.getWidth(null), logo.getHeight(null));
+ // add image observer, it will notify when next animated gif frame is ready
+ offscreen.getGraphics().drawImage(logo, 0, 0, this);
+ // in case image is not animated fill image buffer once
+ imageUpdate(logo, ImageObserver.FRAMEBITS, 0, 0, 0, 0);
+ }
- // add image observer, it will notify when next animated gif frame is ready
- offscreen.getGraphics().drawImage(logo, 0, 0, this);
- offscreen.getGraphics().drawImage(progressbar, 0, 0, this);
-
- // in case image is not animated fill image buffers once
- imageUpdate(logo, ImageObserver.FRAMEBITS, 0, 0, 0, 0);
- imageUpdate(progressbar, ImageObserver.FRAMEBITS, 0, 0, 0, 0);
+ if (progressbar != null) {
+ progressbarBuffer = createImage(progressbar.getWidth(null), progressbar.getHeight(null));
+ // add image observer, it will notify when next animated gif frame is ready
+ offscreen.getGraphics().drawImage(progressbar, 0, 0, this);
+ // in case image is not animated fill image buffer once
+ imageUpdate(progressbar, ImageObserver.FRAMEBITS, 0, 0, 0, 0);
+ }
}
// draw everything onto an image before drawing to avoid flicker
@@ -436,14 +440,6 @@
og.setColor(bgColor);
og.fillRect(0, 0, offscreen.getWidth(null), offscreen.getHeight(null));
- // get logo position so its in the middle of applet
- int x = 0, y = 0;
-
- if(logo != null && !fatalError) {
- x = (offscreen.getWidth(null) - logo.getWidth(null)) / 2;
- y = (offscreen.getHeight(null) - logo.getHeight(null)) / 2;
- }
-
og.setColor(fgColor);
String message = getDescriptionForState();
@@ -464,12 +460,22 @@
painting = true;
+ // get logo position so its in the middle of applet
+ int x = 0, y = 0;
+
+ if(logo != null) {
+ x = (offscreen.getWidth(null) - logo.getWidth(null)) / 2;
+ y = (offscreen.getHeight(null) - logo.getHeight(null)) / 2;
+ }
+
// draw logo
- og.drawImage(logoBuffer, x, y, this);
+ if (logo != null) og.drawImage(logoBuffer, x, y, this);
// draw message
int messageX = (offscreen.getWidth(null) - fm.stringWidth(message)) / 2;
- int messageY = y + logoBuffer.getHeight(null) + 20;
+ int messageY = y + 20;
+ if (logo != null) messageY += logoBuffer.getHeight(null);
+
og.drawString(message, messageX, messageY);
// draw subtaskmessage, if any
@@ -479,9 +485,11 @@
}
// draw loading bar, clipping it depending on percentage done
- int barSize = (progressbarBuffer.getWidth(null) * percentage) / 100;
- og.clipRect(0, 0, x + barSize, offscreen.getHeight(null));
- og.drawImage(progressbarBuffer, x, y, this);
+ if (progressbar != null) {
+ int barSize = (progressbarBuffer.getWidth(null) * percentage) / 100;
+ og.clipRect(0, 0, x + barSize, offscreen.getHeight(null));
+ og.drawImage(progressbarBuffer, x, y, this);
+ }
painting = false;
}
@@ -519,7 +527,7 @@
g.fillRect(0, 0, buffer.getWidth(null), buffer.getHeight(null));
// buffer background is cleared, so draw logo under progressbar
- if (img == progressbar) g.drawImage(logoBuffer, 0, 0, null);
+ if (img == progressbar && logo != null) g.drawImage(logoBuffer, 0, 0, null);
g.drawImage(img, 0, 0, this);
g.dispose();
@@ -1438,7 +1446,10 @@
tracker.addImage(image, 0);
tracker.waitForAll();
- return image;
+ // if no errors return image
+ if (!tracker.isErrorAny()) {
+ return image;
+ }
} catch (Exception e) {
/* */
}
@@ -1572,5 +1583,4 @@
}
}
-
}
\ No newline at end of file
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ka...@us...> - 2010-07-25 11:41:05
|
Revision: 3387
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3387&view=rev
Author: kappa1
Date: 2010-07-25 11:40:58 +0000 (Sun, 25 Jul 2010)
Log Message:
-----------
AppletLoader: fix error message so that it actually uses the error message string.
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java
Modified: trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java 2010-07-24 20:00:58 UTC (rev 3386)
+++ trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java 2010-07-25 11:40:58 UTC (rev 3387)
@@ -211,9 +211,6 @@
/** whether a fatal error occured */
protected boolean fatalError;
- /** fatal error that occured */
- protected String fatalErrorDescription;
-
/** whether we're running in debug mode */
protected boolean debugMode;
@@ -454,10 +451,6 @@
if (fatalError) {
String[] errorMessage = (certificateRefused) ? certificateRefusedMessage : genericErrorMessage;
- if (!certificateRefused) {
- errorMessage[errorMessage.length-1] = fatalErrorDescription;
- }
-
for(int i=0; i<errorMessage.length; i++) {
if(errorMessage[i] != null) {
int messageX = (offscreen.getWidth(null) - fm.stringWidth(errorMessage[i])) / 2;
@@ -767,7 +760,7 @@
fatalErrorOccured(ace.getMessage(), ace);
certificateRefused = true;
} catch (Exception e) {
- fatalErrorOccured(e.getMessage(), e);
+ fatalErrorOccured("This occurred while '" + getDescriptionForState() + "'", e);
} finally {
loaderThread = null;
}
@@ -1547,9 +1540,10 @@
*/
protected void fatalErrorOccured(String error, Exception e) {
fatalError = true;
- fatalErrorDescription = "This occurred while '" + getDescriptionForState() + "'";
- System.out.println(fatalErrorDescription);
+ genericErrorMessage[genericErrorMessage.length-1] = error;
+ System.out.println(error);
if(e != null) {
+ System.out.println(e.getMessage());
System.out.println(generateStacktrace(e));
}
repaint();
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ka...@us...> - 2010-07-24 20:01:04
|
Revision: 3386
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3386&view=rev
Author: kappa1
Date: 2010-07-24 20:00:58 +0000 (Sat, 24 Jul 2010)
Log Message:
-----------
AppletLoader: clean up resources (images) when switching to the LWJGL Applet as opposed to when applet is destroyed
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java
Modified: trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java 2010-07-21 18:53:41 UTC (rev 3385)
+++ trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java 2010-07-24 20:00:58 UTC (rev 3386)
@@ -368,12 +368,19 @@
if (lwjglApplet != null) {
lwjglApplet.destroy();
}
-
+ }
+
+ /**
+ * Clean up resources
+ */
+ protected void cleanUp() {
progressbar = null;
logo = null;
logoBuffer = null;
progressbarBuffer = null;
+
+ offscreen = null;
}
/**
@@ -501,6 +508,9 @@
*/
public boolean imageUpdate(Image img, int flag, int x, int y, int width, int height) {
+ // finish with this ImageObserver
+ if (state == STATE_DONE) return false;
+
// if image frame is ready to be drawn and is currently not being painted
if (flag == ImageObserver.FRAMEBITS && !painting) {
Image buffer;
@@ -750,7 +760,9 @@
// switch to LWJGL Applet
switchApplet();
- state = STATE_DONE;
+ state = STATE_DONE;
+ // clean up resources
+ cleanUp();
} catch (AccessControlException ace) {
fatalErrorOccured(ace.getMessage(), ace);
certificateRefused = true;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ka...@us...> - 2010-07-21 18:53:50
|
Revision: 3385
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3385&view=rev
Author: kappa1
Date: 2010-07-21 18:53:41 +0000 (Wed, 21 Jul 2010)
Log Message:
-----------
AppletLoader: fix bug with LWJGL 2.5 where appletloader crashed if the al_version parameter was used.
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java
Modified: trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java 2010-07-15 21:58:06 UTC (rev 3384)
+++ trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java 2010-07-21 18:53:41 UTC (rev 3385)
@@ -737,7 +737,7 @@
// save version information once jars downloaded successfully
if (version != null) {
percentage = 90;
- writeVersionFile(dir, latestVersion);
+ writeVersionFile(versionFile, latestVersion);
}
// save file names with last modified info once downloaded successfully
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ma...@us...> - 2010-07-15 21:58:15
|
Revision: 3384
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3384&view=rev
Author: matzon
Date: 2010-07-15 21:58:06 +0000 (Thu, 15 Jul 2010)
Log Message:
-----------
Elevate priv for jnlp and sign/trust
Modified Paths:
--------------
trunk/LWJGL/platform_build/build-webstart.xml
Modified: trunk/LWJGL/platform_build/build-webstart.xml
===================================================================
--- trunk/LWJGL/platform_build/build-webstart.xml 2010-07-15 20:00:41 UTC (rev 3383)
+++ trunk/LWJGL/platform_build/build-webstart.xml 2010-07-15 21:58:06 UTC (rev 3384)
@@ -54,15 +54,24 @@
<jar destfile="${lwjgl.temp}/jnlp/jinput.jar" update="true">
<manifest>
<attribute name="Sealed" value="true"/>
+ <attribute name="Trusted-Library" value="true"/>
</manifest>
</jar>
<jar destfile="${lwjgl.temp}/jnlp/lwjgl_util.jar" update="true">
<manifest>
<attribute name="Sealed" value="true"/>
+ <attribute name="Trusted-Library" value="true"/>
</manifest>
- </jar>
+ </jar>
+ <jar destfile="${lwjgl.temp}/jnlp/lwjgl_test.jar" update="true">
+ <manifest>
+ <attribute name="Sealed" value="true"/>
+ <attribute name="Trusted-Library" value="true"/>
+ </manifest>
+ </jar>
+
<!-- create native jars -->
<jar destfile="${lwjgl.temp}/jnlp/native_windows.jar" basedir="${lwjgl.temp}/jnlp/temp/native/windows">
<manifest>
@@ -92,17 +101,19 @@
<jar destfile="${lwjgl.temp}/jnlp/media.jar" basedir="${lwjgl.res}">
<manifest>
<attribute name="Sealed" value="true"/>
+ <attribute name="Trusted-Library" value="true"/>
</manifest>
</jar>
<!-- sign 'em -->
<signjar jar="${lwjgl.temp}/jnlp/lwjgl.jar" alias="${alias}" keystore="${keystore}" storepass="${password}"/>
<signjar jar="${lwjgl.temp}/jnlp/lwjgl_util.jar" alias="${alias}" keystore="${keystore}" storepass="${password}"/>
+ <signjar jar="${lwjgl.temp}/jnlp/jinput.jar" alias="${alias}" keystore="${keystore}" storepass="${password}"/>
+ <signjar jar="${lwjgl.temp}/jnlp/lwjgl_test.jar" alias="${alias}" keystore="${keystore}" storepass="${password}"/>
+ <signjar jar="${lwjgl.temp}/jnlp/media.jar" alias="${alias}" keystore="${keystore}" storepass="${password}"/>
<signjar jar="${lwjgl.temp}/jnlp/native_solaris.jar" alias="${alias}" keystore="${keystore}" storepass="${password}"/>
<signjar jar="${lwjgl.temp}/jnlp/native_linux.jar" alias="${alias}" keystore="${keystore}" storepass="${password}"/>
<signjar jar="${lwjgl.temp}/jnlp/native_macosx.jar" alias="${alias}" keystore="${keystore}" storepass="${password}"/>
<signjar jar="${lwjgl.temp}/jnlp/native_windows.jar" alias="${alias}" keystore="${keystore}" storepass="${password}"/>
- <signjar jar="${lwjgl.temp}/jnlp/jinput.jar" alias="${alias}" keystore="${keystore}" storepass="${password}"/>
- <signjar jar="${lwjgl.temp}/jnlp/media.jar" alias="${alias}" keystore="${keystore}" storepass="${password}"/>
</target>
</project>
\ No newline at end of file
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ka...@us...> - 2010-07-15 20:00:47
|
Revision: 3383
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3383&view=rev
Author: kappa1
Date: 2010-07-15 20:00:41 +0000 (Thu, 15 Jul 2010)
Log Message:
-----------
AppletLoader - slight tweak to make AppletLoader looks a bit better
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java
Modified: trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java 2010-07-15 19:43:11 UTC (rev 3382)
+++ trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java 2010-07-15 20:00:41 UTC (rev 3383)
@@ -1086,7 +1086,7 @@
// round to two decimal places
downloadSpeed = ((int)(downloadSpeed*100))/100f;
// set current speed message
- downloadSpeedMessage = " @ " + downloadSpeed + " KB/sec";
+ downloadSpeedMessage = " - " + downloadSpeed + " KB/sec";
// reset downloaded amount
downloadedAmount = 0;
// reset start time
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ka...@us...> - 2010-07-15 19:43:17
|
Revision: 3382
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3382&view=rev
Author: kappa1
Date: 2010-07-15 19:43:11 +0000 (Thu, 15 Jul 2010)
Log Message:
-----------
appletloader.html - edit html to reflect latest changes in the AppletLoader
Modified Paths:
--------------
trunk/LWJGL/applet/appletloader.html
Modified: trunk/LWJGL/applet/appletloader.html
===================================================================
--- trunk/LWJGL/applet/appletloader.html 2010-07-15 19:07:49 UTC (rev 3381)
+++ trunk/LWJGL/applet/appletloader.html 2010-07-15 19:43:11 UTC (rev 3382)
@@ -41,15 +41,15 @@
<!-- Version of Applet, important otherwise applet won't be cached, version change will update applet, must be int or float -->
<!-- <param name="al_version" value="0.1"> -->
+ <!-- whether to use cache - defaults to true -->
+ <!-- <param name="al_cache" value="true"> -->
+
<!-- background color to paint with, defaults to white -->
<!-- <param name="boxbgcolor" value="#000000"> -->
<!-- foreground color to paint with, defaults to black -->
<!-- <param name="boxfgcolor" value="#ffffff"> -->
- <!-- error color to paint with, defaults to red -->
- <!-- <param name="boxerrorcolor" value="#ff0000"> -->
-
<!-- whether to run in debug mode -->
<!-- <param name="al_debug" value="true"> -->
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ma...@us...> - 2010-07-15 19:07:58
|
Revision: 3381
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3381&view=rev
Author: matzon
Date: 2010-07-15 19:07:49 +0000 (Thu, 15 Jul 2010)
Log Message:
-----------
Trusted-Library + Signing changes, blame kappaOne for breakage...
Modified Paths:
--------------
trunk/LWJGL/build.xml
trunk/LWJGL/libs/lzma.jar
trunk/LWJGL/platform_build/build-webstart.xml
Modified: trunk/LWJGL/build.xml
===================================================================
--- trunk/LWJGL/build.xml 2010-07-14 13:12:24 UTC (rev 3380)
+++ trunk/LWJGL/build.xml 2010-07-15 19:07:49 UTC (rev 3381)
@@ -124,7 +124,6 @@
<fileset refid="lwjgl.fileset" />
<manifest>
<attribute name="Sealed" value="true"/>
- <attribute name="Trusted-Library" value="true"/>
</manifest>
</jar>
@@ -133,7 +132,6 @@
<fileset refid="lwjgl_util_applet.fileset" />
<manifest>
<attribute name="Sealed" value="true"/>
- <attribute name="Trusted-Library" value="true"/>
</manifest>
</jar>
Modified: trunk/LWJGL/libs/lzma.jar
===================================================================
(Binary files differ)
Modified: trunk/LWJGL/platform_build/build-webstart.xml
===================================================================
--- trunk/LWJGL/platform_build/build-webstart.xml 2010-07-14 13:12:24 UTC (rev 3380)
+++ trunk/LWJGL/platform_build/build-webstart.xml 2010-07-15 19:07:49 UTC (rev 3381)
@@ -44,17 +44,22 @@
</move>
<!-- update Trusted-Library -->
- <jar destfile="${lwjgl.temp}/jnlp/jinput.jar" update="true">
+ <jar destfile="${lwjgl.temp}/jnlp/lwjgl.jar" update="true">
<manifest>
<attribute name="Sealed" value="true"/>
<attribute name="Trusted-Library" value="true"/>
</manifest>
</jar>
+ <jar destfile="${lwjgl.temp}/jnlp/jinput.jar" update="true">
+ <manifest>
+ <attribute name="Sealed" value="true"/>
+ </manifest>
+ </jar>
+
<jar destfile="${lwjgl.temp}/jnlp/lwjgl_util.jar" update="true">
<manifest>
<attribute name="Sealed" value="true"/>
- <attribute name="Trusted-Library" value="true"/>
</manifest>
</jar>
@@ -62,33 +67,33 @@
<jar destfile="${lwjgl.temp}/jnlp/native_windows.jar" basedir="${lwjgl.temp}/jnlp/temp/native/windows">
<manifest>
<attribute name="Sealed" value="true"/>
- <attribute name="Trusted-Library" value="true"/>
</manifest>
</jar>
<jar destfile="${lwjgl.temp}/jnlp/native_linux.jar" basedir="${lwjgl.temp}/jnlp/temp/native/linux">
<manifest>
<attribute name="Sealed" value="true"/>
- <attribute name="Trusted-Library" value="true"/>
</manifest>
</jar>
<jar destfile="${lwjgl.temp}/jnlp/native_macosx.jar" basedir="${lwjgl.temp}/jnlp/temp/native/macosx">
<manifest>
<attribute name="Sealed" value="true"/>
- <attribute name="Trusted-Library" value="true"/>
</manifest>
</jar>
<jar destfile="${lwjgl.temp}/jnlp/native_solaris.jar" basedir="${lwjgl.temp}/jnlp/temp/native/solaris">
<manifest>
<attribute name="Sealed" value="true"/>
- <attribute name="Trusted-Library" value="true"/>
</manifest>
</jar>
<!-- create media jar -->
- <jar destfile="${lwjgl.temp}/jnlp/media.jar" basedir="${lwjgl.res}"/>
+ <jar destfile="${lwjgl.temp}/jnlp/media.jar" basedir="${lwjgl.res}">
+ <manifest>
+ <attribute name="Sealed" value="true"/>
+ </manifest>
+ </jar>
<!-- sign 'em -->
<signjar jar="${lwjgl.temp}/jnlp/lwjgl.jar" alias="${alias}" keystore="${keystore}" storepass="${password}"/>
@@ -98,5 +103,6 @@
<signjar jar="${lwjgl.temp}/jnlp/native_macosx.jar" alias="${alias}" keystore="${keystore}" storepass="${password}"/>
<signjar jar="${lwjgl.temp}/jnlp/native_windows.jar" alias="${alias}" keystore="${keystore}" storepass="${password}"/>
<signjar jar="${lwjgl.temp}/jnlp/jinput.jar" alias="${alias}" keystore="${keystore}" storepass="${password}"/>
+ <signjar jar="${lwjgl.temp}/jnlp/media.jar" alias="${alias}" keystore="${keystore}" storepass="${password}"/>
</target>
</project>
\ No newline at end of file
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ma...@us...> - 2010-07-14 13:12:34
|
Revision: 3380
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3380&view=rev
Author: matzon
Date: 2010-07-14 13:12:24 +0000 (Wed, 14 Jul 2010)
Log Message:
-----------
OAL patches by Ciardhubh
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/openal/ALC11.java
trunk/LWJGL/src/java/org/lwjgl/test/openal/OpenALInfo.java
trunk/LWJGL/src/native/common/org_lwjgl_openal_ALC10.c
trunk/LWJGL/src/templates/org/lwjgl/openal/AL10.java
Modified: trunk/LWJGL/src/java/org/lwjgl/openal/ALC11.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/openal/ALC11.java 2010-07-12 20:19:21 UTC (rev 3379)
+++ trunk/LWJGL/src/java/org/lwjgl/openal/ALC11.java 2010-07-14 13:12:24 UTC (rev 3380)
@@ -59,6 +59,9 @@
public static final int ALC_CAPTURE_DEFAULT_DEVICE_SPECIFIER = 0x311;
public static final int ALC_CAPTURE_SAMPLES = 0x312;
+ public static final int ALC_MONO_SOURCES = 0x1010;
+ public static final int ALC_STEREO_SOURCES = 0x1011;
+
/**
* The alcCaptureOpenDevice function allows the application to connect to a capture
* device. To obtain a list of all available capture devices, use getCaptureDevices a list of all
Modified: trunk/LWJGL/src/java/org/lwjgl/test/openal/OpenALInfo.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/test/openal/OpenALInfo.java 2010-07-12 20:19:21 UTC (rev 3379)
+++ trunk/LWJGL/src/java/org/lwjgl/test/openal/OpenALInfo.java 2010-07-14 13:12:24 UTC (rev 3380)
@@ -191,7 +191,7 @@
effects.put("Compressor", new Integer(EFX10.AL_EFFECT_COMPRESSOR));
effects.put("Equalizer", new Integer(EFX10.AL_EFFECT_EQUALIZER));
- entries = filters.entrySet();
+ entries = effects.entrySet();
for(Iterator i = entries.iterator(); i.hasNext();) {
Map.Entry entry = (Entry) i.next();
int value = ((Integer)entry.getValue()).intValue();
Modified: trunk/LWJGL/src/native/common/org_lwjgl_openal_ALC10.c
===================================================================
--- trunk/LWJGL/src/native/common/org_lwjgl_openal_ALC10.c 2010-07-12 20:19:21 UTC (rev 3379)
+++ trunk/LWJGL/src/native/common/org_lwjgl_openal_ALC10.c 2010-07-14 13:12:24 UTC (rev 3380)
@@ -86,7 +86,7 @@
int length;
int i=1;
- if(alcString == NULL) {
+ if (alcString == NULL) {
return NULL;
}
@@ -94,14 +94,21 @@
// These are encoded using \0 between elements and a finishing \0\0
switch(token) {
case 0x1005: // ALC_DEVICE_SPECIFIER
- case 0x310: // ALC_CAPTURE_DEVICE_SPECIFIER
+ case 0x310: // ALC_CAPTURE_DEVICE_SPECIFIER
+ // If deviceaddress is not 0, OpenAL returns a single device terminated by a
+ // single \0 character, if token is ALC_DEVICE_SPECIFIER or
+ // ALC_CAPTURE_DEVICE_SPECIFIER.
+ if (deviceaddress != 0) {
+ length = strlen(alcString);
+ break;
+ }
case 0x1013: // ALC_ALL_DEVICES_SPECIFIER
while (alcString[i - 1] != '\0' || alcString[i] != '\0') {
i++;
}
length = i + 1;
break;
- default:
+ default: // e.g. ALC_DEFAULT_ALL_DEVICES_SPECIFIER
length = strlen(alcString);
}
return NewStringNativeWithLength(env, alcString, length);
Modified: trunk/LWJGL/src/templates/org/lwjgl/openal/AL10.java
===================================================================
--- trunk/LWJGL/src/templates/org/lwjgl/openal/AL10.java 2010-07-12 20:19:21 UTC (rev 3379)
+++ trunk/LWJGL/src/templates/org/lwjgl/openal/AL10.java 2010-07-14 13:12:24 UTC (rev 3380)
@@ -250,35 +250,28 @@
int AL_FREQUENCY = 0x2001;
/**
- * Sound buffers: frequency, in units of Hertz [Hz].
- * This is the number of samples per second. Half of the
- * sample frequency marks the maximum significant
- * frequency component.
+ * Sound buffers: The number of bits per sample for the
+ * data contained in the buffer.
*/
int AL_BITS = 0x2002;
/**
- * Sound buffers: frequency, in units of Hertz [Hz].
- * This is the number of samples per second. Half of the
- * sample frequency marks the maximum significant
- * frequency component.
+ * Sound buffers: The number of channels for the data
+ * contained in the buffer.
*/
int AL_CHANNELS = 0x2003;
/**
- * Sound buffers: frequency, in units of Hertz [Hz].
- * This is the number of samples per second. Half of the
- * sample frequency marks the maximum significant
- * frequency component.
+ * Sound buffers: Size in bytes of the buffer data.
*/
int AL_SIZE = 0x2004;
/**
- * Sound buffers: frequency, in units of Hertz [Hz].
- * This is the number of samples per second. Half of the
- * sample frequency marks the maximum significant
- * frequency component.
+ * @deprecated This token is a relict of the early OpenAL days and is
+ * no longer supported. Neither the OpenAL spec nor OpenAL Soft define
+ * it.
*/
+ @Deprecated
int AL_DATA = 0x2005;
/**
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ka...@us...> - 2010-07-12 20:19:27
|
Revision: 3379
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3379&view=rev
Author: kappa1
Date: 2010-07-12 20:19:21 +0000 (Mon, 12 Jul 2010)
Log Message:
-----------
AppletLoader: slightly more meaningful and friendly error message.
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java
Modified: trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java 2010-07-12 20:01:56 UTC (rev 3378)
+++ trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java 2010-07-12 20:19:21 UTC (rev 3379)
@@ -1535,7 +1535,7 @@
*/
protected void fatalErrorOccured(String error, Exception e) {
fatalError = true;
- fatalErrorDescription = "Fatal error occured (" + state + "): " + error;
+ fatalErrorDescription = "This occurred while '" + getDescriptionForState() + "'";
System.out.println(fatalErrorDescription);
if(e != null) {
System.out.println(generateStacktrace(e));
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ka...@us...> - 2010-07-12 20:02:02
|
Revision: 3378
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3378&view=rev
Author: kappa1
Date: 2010-07-12 20:01:56 +0000 (Mon, 12 Jul 2010)
Log Message:
-----------
AppletLoader: Remove the boxerrorcolor parameter, there is not much advantage in having different color error message font, its better to have a nice consistent error message then to try scare the user. Also simplifies the AppletLoader api by reducing the number of parameters.
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java
Modified: trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java 2010-07-12 12:04:56 UTC (rev 3377)
+++ trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java 2010-07-12 20:01:56 UTC (rev 3378)
@@ -110,7 +110,7 @@
* <ul>
* <li>al_version - [int or float] Version of deployment. If this is specified, the jars will be cached and
* reused if the version matches. If version doesn't match all of the files are reloaded.</li>
- * <li>al_cache - [boolean] Whether to use cache system. If al_version is used then cache is not used. <i>Default: true</i>.</li>
+ * <li>al_cache - [boolean] Whether to use cache system. <i>Default: true</i>.</li>
* <li>al_debug - [boolean] Whether to enable debug mode. <i>Default: false</i>.</li>
* <li>al_prepend_host - [boolean] Whether to limit caching to this domain, disable if your applet is hosted on multple domains and needs to share the cache. <i>Default: true</i>.</li>
* <ul>
@@ -121,7 +121,6 @@
* <ul>
* <li>boxbgcolor - [String] any String AWT color ("red", "blue", etc), RGB (0-255) or hex formated color (#RRGGBB) to use as background. <i>Default: #ffffff</i>.</li>
* <li>boxfgcolor - [String] any String AWT color ("red", "blue", etc), RGB (0-255) or hex formated color (#RRGGBB) to use as foreground. <i>Default: #000000</i>.</li>
- * <li>boxerrorcolor - [String] any String AWT color ("red", "blue", etc), RGB (0-255) or hex formated color (#RRGGBB) to use as foreground color on error. <i>Default: #ff0000</i>.</li>
* </ul>
* </p>
* @author kappaOne
@@ -190,9 +189,6 @@
/** background color of applet */
protected Color bgColor = Color.white;
-
- /** Color to write errors in */
- protected Color errorColor = Color.red;
/** color to write foreground in */
protected Color fgColor = Color.black;
@@ -288,10 +284,8 @@
// get colors of applet
bgColor = getColor("boxbgcolor", Color.white);
setBackground(bgColor);
+ fgColor = getColor("boxfgcolor", Color.black);
- fgColor = getColor("boxfgcolor", Color.black);
- errorColor = getColor("boxerrorcolor", Color.red);
-
// load logos
logo = getImage(getParameter("al_logo"));
progressbar = getImage(getParameter("al_progressbar"));
@@ -462,7 +456,6 @@
int messageX = (offscreen.getWidth(null) - fm.stringWidth(errorMessage[i])) / 2;
int messageY = (offscreen.getHeight(null) - (fm.getHeight() * errorMessage.length)) / 2;
- og.setColor(errorColor);
og.drawString(errorMessage[i], messageX, messageY + i*fm.getHeight());
}
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ma...@us...> - 2010-07-12 12:05:02
|
Revision: 3377
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3377&view=rev
Author: matzon
Date: 2010-07-12 12:04:56 +0000 (Mon, 12 Jul 2010)
Log Message:
-----------
fixed issue with single-line if
Modified Paths:
--------------
trunk/LWJGL/src/native/windows/context.c
Modified: trunk/LWJGL/src/native/windows/context.c
===================================================================
--- trunk/LWJGL/src/native/windows/context.c 2010-07-11 20:25:24 UTC (rev 3376)
+++ trunk/LWJGL/src/native/windows/context.c 2010-07-12 12:04:56 UTC (rev 3377)
@@ -221,8 +221,9 @@
if (pbuffer) {
putAttrib(&attrib_list, WGL_DRAW_TO_PBUFFER_ARB); putAttrib(&attrib_list, TRUE);
}
- if (!getBooleanProperty(env, "org.lwjgl.opengl.Display.allowSoftwareOpenGL"))
+ if (!getBooleanProperty(env, "org.lwjgl.opengl.Display.allowSoftwareOpenGL")) {
putAttrib(&attrib_list, WGL_ACCELERATION_ARB); putAttrib(&attrib_list, WGL_FULL_ACCELERATION_ARB);
+ }
putAttrib(&attrib_list, WGL_PIXEL_TYPE_ARB); putAttrib(&attrib_list, pixel_type);
putAttrib(&attrib_list, WGL_DOUBLE_BUFFER_ARB); putAttrib(&attrib_list, double_buffer ? TRUE : FALSE);
putAttrib(&attrib_list, WGL_SUPPORT_OPENGL_ARB); putAttrib(&attrib_list, TRUE);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ka...@us...> - 2010-07-11 20:25:30
|
Revision: 3376
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3376&view=rev
Author: kappa1
Date: 2010-07-11 20:25:24 +0000 (Sun, 11 Jul 2010)
Log Message:
-----------
fix: Keyboard focus handling broken when using Display.setParent() applets on Ubunutu (strangly worked on OpenSuse), hopefully should be fixed now.
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/opengl/LinuxDisplay.java
Modified: trunk/LWJGL/src/java/org/lwjgl/opengl/LinuxDisplay.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opengl/LinuxDisplay.java 2010-07-11 15:26:33 UTC (rev 3375)
+++ trunk/LWJGL/src/java/org/lwjgl/opengl/LinuxDisplay.java 2010-07-11 20:25:24 UTC (rev 3376)
@@ -880,12 +880,12 @@
setInputFocusUnsafe(current_window);
}
else if (xembedded) {
- setInputFocusUnsafe(0);
+ setInputFocusUnsafe(1);
}
}
- else if (parent_focus && !focused) {
- setInputFocusUnsafe(current_window);
- }
+ //else if (parent_focus && !focused && !xembedded) {
+ // setInputFocusUnsafe(current_window);
+ //}
}
private void setFocused(boolean got_focus, int focus_detail) {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ka...@us...> - 2010-07-11 15:26:39
|
Revision: 3375
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3375&view=rev
Author: kappa1
Date: 2010-07-11 15:26:33 +0000 (Sun, 11 Jul 2010)
Log Message:
-----------
AppletLoader: fix issue with caching and lzma/pack200 files
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java
Modified: trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java 2010-07-11 13:54:52 UTC (rev 3374)
+++ trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java 2010-07-11 15:26:33 UTC (rev 3375)
@@ -1251,6 +1251,10 @@
float increment = (float) 10.0 / urlList.length;
// extract all lzma and pack.lzma files
for (int i = 0; i < urlList.length; i++) {
+
+ // if file has not changed, skip it
+ if (fileSizes[i] == -2) continue;
+
percentage = 55 + (int) (increment * (i+1));
String filename = getFileName(urlList[i]);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|