LWJGL 0.7 (pre) released!

Started by Matzon, July 16, 2003, 23:39:40

Previous topic - Next topic

Matzon

this is just a small notice to  notify you guys that a prerelease of 0.7 has been released!
get it while it's hot:
http://www.lwjgl.org/

changelog:
Quote2003-07-16   matzon
   * src/java/org/lwjgl/openal/eax/EAX.java 1.4:
   * src/java/org/lwjgl/openal/eax/EAXBufferProperties.java 1.8:
   * src/java/org/lwjgl/openal/eax/EAXListenerProperties.java 1.7:
   * src/native/common/org_lwjgl_openal_eax_CoreEAX.cpp 1.7:
      "fix": deactivate EAX for this test release

   * src/java/org/lwjgl/Window.java 1.13:
      fix: isClosedRequested now sets flag to false after call
      added support for isFocused

   * src/native/win32/org_lwjgl_Window.cpp 1.14:
      added support for isFocused

   * src/java/org/lwjgl/test/openal/ALTest.java 1.9:
   * src/java/org/lwjgl/test/openal/MovingSoundTest.java 1.12:
      fix: make it compile

2003-07-16   elias_naur
   * src/native/linux/org_lwjgl_Window.cpp 1.5:
      Added linux focus support

2003-07-15   elias_naur
   * src/native/linux/org_lwjgl_opengl_BaseGL.cpp 1.20:
      Small error message fix

2003-07-10   matzon
   * website/index.html 1.4:
      fix: http

   * website/index.html 1.3:
      small changes for lwjgl.org

2003-07-06   matzon
   * src/java/org/lwjgl/openal/CoreAL.java 1.16:
      fix: javadoc typo

2003-07-06   elias_naur
   * src/java/org/lwjgl/opengl/BaseGL.java 1.22:
   * src/java/org/lwjgl/opengl/CoreGL.java 1.18:
   * src/java/org/lwjgl/opengl/GL.java 1.27:
      Reverted change

   * src/native/common/Makefile.am 1.6:
      Linux build fix

   * src/java/org/lwjgl/opengl/BaseGL.java 1.21:
   * src/java/org/lwjgl/opengl/CoreGL.java 1.17:
   * src/java/org/lwjgl/opengl/GL.java 1.26:
   * src/native/configure.in 1.16:
      Converted ogl to static constructor

2003-07-05   matzon
   * src/java/org/lwjgl/openal/CoreAL.java 1.15:
   * src/java/org/lwjgl/test/openal/ALTest.java 1.8:
      fix: using type specific buffers

   * src/native/common/MatrixOpCommon.cpp 1.2:
   * src/native/common/MatrixOpCommon.h 1.2:
      removing parts of Math

   * src/java/org/lwjgl/Math.java 1.13:
   * src/native/common/org_lwjgl_Math_MatrixOpAdd_MatrixOpDirect.cpp 1.2:
   * src/native/common/org_lwjgl_Math_MatrixOpAdd_MatrixOpDirect.h 1.3:
   * src/native/common/org_lwjgl_Math_MatrixOpAdd_MatrixOpSafe.cpp 1.2:
   * src/native/common/org_lwjgl_Math_MatrixOpAdd_MatrixOpSafe.h 1.3:
   * src/native/common/org_lwjgl_Math_MatrixOpCopy_MatrixOpDirect.cpp 1.2:
   * src/native/common/org_lwjgl_Math_MatrixOpCopy_MatrixOpDirect.h 1.3:
   * src/native/common/org_lwjgl_Math_MatrixOpCopy_MatrixOpSafe.cpp 1.2:
   * src/native/common/org_lwjgl_Math_MatrixOpCopy_MatrixOpSafe.h 1.3:
   * src/native/common/org_lwjgl_Math_MatrixOpInvert_MatrixOpDirect.cpp 1.2:
   * src/native/common/org_lwjgl_Math_MatrixOpInvert_MatrixOpDirect.h 1.3:
   * src/native/common/org_lwjgl_Math_MatrixOpInvert_MatrixOpSafe.cpp 1.2:
   * src/native/common/org_lwjgl_Math_MatrixOpInvert_MatrixOpSafe.h 1.3:
   * src/native/common/org_lwjgl_Math_MatrixOpMultiply_MatrixOpDirect.cpp 1.2:
   * src/native/common/org_lwjgl_Math_MatrixOpMultiply_MatrixOpDirect.h 1.3:
   * src/native/common/org_lwjgl_Math_MatrixOpMultiply_MatrixOpSafe.cpp 1.2:
   * src/native/common/org_lwjgl_Math_MatrixOpMultiply_MatrixOpSafe.h 1.3:
   * src/native/common/org_lwjgl_Math_MatrixOpNegate_MatrixOpDirect.cpp 1.2:
   * src/native/common/org_lwjgl_Math_MatrixOpNegate_MatrixOpDirect.h 1.3:
   * src/native/common/org_lwjgl_Math_MatrixOpNegate_MatrixOpSafe.cpp 1.2:
   * src/native/common/org_lwjgl_Math_MatrixOpNegate_MatrixOpSafe.h 1.3:
   * src/native/common/org_lwjgl_Math_MatrixOpNormalise_MatrixOpDirect.cpp 1.2:
   * src/native/common/org_lwjgl_Math_MatrixOpNormalise_MatrixOpDirect.h 1.3:
   * src/native/common/org_lwjgl_Math_MatrixOpNormalise_MatrixOpSafe.cpp 1.2:
   * src/native/common/org_lwjgl_Math_MatrixOpNormalise_MatrixOpSafe.h 1.3:
   * src/native/common/org_lwjgl_Math_MatrixOpSubtract_MatrixOpDirect.cpp 1.2:
   * src/native/common/org_lwjgl_Math_MatrixOpSubtract_MatrixOpDirect.h 1.3:
   * src/native/common/org_lwjgl_Math_MatrixOpSubtract_MatrixOpSafe.cpp 1.2:
   * src/native/common/org_lwjgl_Math_MatrixOpSubtract_MatrixOpSafe.h 1.3:
      removing parts of Math
      removing examples
      removed small doc

2003-07-05   elias_naur
   * src/native/common/org_lwjgl_openal_ALC.cpp 1.9:
   * src/native/common/org_lwjgl_openal_eax_CoreEAX.cpp 1.6:
      fixed compiler warning

   * src/native/configure.in 1.15:
      linux build fix

2003-07-04   matzon
   * src/native/common/extal.cpp 1.7:
      fix: removed debug

2003-07-02   matzon
   * src/native/win32/org_lwjgl_input_Cursor.cpp 1.4:
      fix: compiler whining

   * src/java/org/lwjgl/Sys.java 1.21:
   * src/java/org/lwjgl/opengl/GLU.java 1.11:
      bugger off buffer!

   * src/java/org/lwjgl/openal/AL.java 1.9:
   * src/java/org/lwjgl/openal/ALC.java 1.8:
   * src/java/org/lwjgl/openal/ALCcontext.java 1.4:
   * src/java/org/lwjgl/openal/ALCdevice.java 1.4:
   * src/java/org/lwjgl/openal/BaseAL.java 1.15:
   * src/java/org/lwjgl/openal/BaseALConstants.java 1.6:
   * src/java/org/lwjgl/openal/CoreAL.java 1.14:
   * src/java/org/lwjgl/openal/eax/BaseEAX.java 1.5:
   * src/java/org/lwjgl/openal/eax/BaseEAXConstants.java 1.5:
   * src/java/org/lwjgl/openal/eax/CoreEAX.java 1.3:
   * src/java/org/lwjgl/openal/eax/EAX.java 1.3:
   * src/java/org/lwjgl/openal/eax/EAXBufferProperties.java 1.7:
   * src/java/org/lwjgl/openal/eax/EAXListenerProperties.java 1.6:
   * src/java/org/lwjgl/test/input/ControllerCreationTest.java 1.7:
   * src/java/org/lwjgl/test/input/ControllerTest.java 1.5:
   * src/java/org/lwjgl/test/input/HWCursorTest.java 1.4:
   * src/java/org/lwjgl/test/input/KeyboardTest.java 1.2:
   * src/java/org/lwjgl/test/input/MouseCreationTest.java 1.10:
   * src/java/org/lwjgl/test/input/MouseTest.java 1.12:
   * src/java/org/lwjgl/test/openal/ALCTest.java 1.7:
   * src/java/org/lwjgl/test/openal/ALTest.java 1.7:
   * src/java/org/lwjgl/test/openal/BasicTest.java 1.8:
   * src/java/org/lwjgl/test/openal/EAXTest.java 1.6:
   * src/java/org/lwjgl/test/openal/MovingSoundTest.java 1.11:
   * src/java/org/lwjgl/test/openal/OpenALCreationTest.java 1.4:
   * src/java/org/lwjgl/test/openal/PlayTest.java 1.7:
   * src/java/org/lwjgl/test/openal/PlayTestMemory.java 1.7:
   * src/java/org/lwjgl/test/openal/SourceLimitTest.java 1.6:
   * src/java/org/lwjgl/test/openal/StressTest.java 1.5:
   * src/java/org/lwjgl/test/openal/WaveData.java 1.7:
   * src/java/org/lwjgl/test/opengl/FullScreenWindowedTest.java 1.5:
   * src/java/org/lwjgl/test/opengl/Game.java 1.14:
   * src/java/org/lwjgl/test/opengl/Grass.java 1.13:
   * src/java/org/lwjgl/test/opengl/PbufferTest.java 1.2:
   * src/native/common/extal.cpp 1.6:
   * src/native/common/org_lwjgl_openal_ALC.cpp 1.8:
   * src/native/common/org_lwjgl_openal_ALC.h 1.5:
   * src/native/common/org_lwjgl_openal_BaseAL.cpp 1.6:
   * src/native/common/org_lwjgl_openal_BaseAL.h 1.4:
   * src/native/common/org_lwjgl_openal_CoreAL.cpp 1.5:
   * src/native/common/org_lwjgl_openal_CoreAL.h 1.10:
   * src/native/common/org_lwjgl_openal_eax_BaseEAX.cpp 1.2:
   * src/native/common/org_lwjgl_openal_eax_BaseEAX.h 1.2:
   * src/native/common/org_lwjgl_openal_eax_CoreEAX.cpp 1.5:
   * src/native/common/org_lwjgl_openal_eax_CoreEAX.h 1.2:
   * src/native/common/org_lwjgl_openal_eax_EAXBufferProperties.cpp 1.3:
   * src/native/common/org_lwjgl_openal_eax_EAXBufferProperties.h 1.2:
   * src/native/common/org_lwjgl_openal_eax_EAXListenerProperties.cpp 1.3:
   * src/native/common/org_lwjgl_openal_eax_EAXListenerProperties.h 1.2:
      static implementation - work in progress

2003-06-24   elias_naur
   * src/java/org/lwjgl/Display.java 1.30:
   * src/java/org/lwjgl/Sys.java 1.20:
   * src/java/org/lwjgl/input/Cursor.java 1.6:
   * src/java/org/lwjgl/input/Keyboard.java 1.23:
   * src/java/org/lwjgl/input/Mouse.java 1.21:
   * src/java/org/lwjgl/opengl/CoreGL.java 1.16:
   * src/java/org/lwjgl/opengl/CoreGLConstants.java 1.7:
   * src/java/org/lwjgl/opengl/GL.java 1.25:
   * src/java/org/lwjgl/opengl/GLU.java 1.10:
   * src/java/org/lwjgl/opengl/GLUConstants.java 1.9:
   * src/java/org/lwjgl/opengl/arb/ARBCubeMap.java 1.3:
   * src/java/org/lwjgl/opengl/arb/ARBDepthTexture.java 1.3:
   * src/java/org/lwjgl/opengl/arb/ARBMatrixPalette.java 1.3:
   * src/java/org/lwjgl/opengl/arb/ARBMultisample.java 1.3:
   * src/java/org/lwjgl/opengl/arb/ARBMultitexture.java 1.3:
   * src/java/org/lwjgl/opengl/arb/ARBPointParameters.java 1.3:
   * src/java/org/lwjgl/opengl/arb/ARBShadow.java 1.3:
   * src/java/org/lwjgl/opengl/arb/ARBShadowAmbient.java 1.3:
   * src/java/org/lwjgl/opengl/arb/ARBTextureBorderClamp.java 1.3:
   * src/java/org/lwjgl/opengl/arb/ARBTextureCompression.java 1.3:
   * src/java/org/lwjgl/opengl/arb/ARBTextureEnvCombine.java 1.3:
   * src/java/org/lwjgl/opengl/arb/ARBTextureEnvDot3.java 1.3:
   * src/java/org/lwjgl/opengl/arb/ARBTextureMirroredRepeat.java 1.3:
   * src/java/org/lwjgl/opengl/arb/ARBTransposeMatrix.java 1.3:
   * src/java/org/lwjgl/opengl/arb/ARBVertexBlend.java 1.3:
   * src/java/org/lwjgl/opengl/arb/ARBVertexBufferObject.java 1.2:
   * src/java/org/lwjgl/opengl/arb/ARBVertexProgram.java 1.3:
   * src/java/org/lwjgl/opengl/ati/ATIElementArray.java 1.3:
   * src/java/org/lwjgl/opengl/ati/ATIEnvmapBumpmap.java 1.3:
   * src/java/org/lwjgl/opengl/ati/ATIFragmentShader.java 1.3:
   * src/java/org/lwjgl/opengl/ati/ATIPnTriangles.java 1.3:
   * src/java/org/lwjgl/opengl/ati/ATITextureMirrorOnce.java 1.3:
   * src/java/org/lwjgl/opengl/ati/ATIVertexArrayObject.java 1.3:
   * src/java/org/lwjgl/opengl/ati/ATIVertexStreams.java 1.3:
   * src/java/org/lwjgl/opengl/atix/ATIXPointSprites.java 1.3:
   * src/java/org/lwjgl/opengl/atix/ATIXTextureEnvRoute.java 1.3:
   * src/java/org/lwjgl/opengl/ext/EXTAbgr.java 1.4:
   * src/java/org/lwjgl/opengl/ext/EXTBgra.java 1.5:
   * src/java/org/lwjgl/opengl/ext/EXTBlendColor.java 1.5:
   * src/java/org/lwjgl/opengl/ext/EXTBlendMinmax.java 1.5:
   * src/java/org/lwjgl/opengl/ext/EXTBlendSubtract.java 1.5:
   * src/java/org/lwjgl/opengl/ext/EXTCompiledVertexArray.java 1.3:
   * src/java/org/lwjgl/opengl/ext/EXTDrawRangeElements.java 1.3:
   * src/java/org/lwjgl/opengl/ext/EXTFogCoord.java 1.3:
   * src/java/org/lwjgl/opengl/ext/EXTLightMaxExponent.java 1.5:
   * src/java/org/lwjgl/opengl/ext/EXTPackedPixels.java 1.5:
   * src/java/org/lwjgl/opengl/ext/EXTPointParameters.java 1.3:
   * src/java/org/lwjgl/opengl/ext/EXTRescaleNormal.java 1.5:
   * src/java/org/lwjgl/opengl/ext/EXTSecondaryColor.java 1.3:
   * src/java/org/lwjgl/opengl/ext/EXTSeparateSpecularColor.java 1.4:
   * src/java/org/lwjgl/opengl/ext/EXTSharedTexturePalette.java 1.5:
   * src/java/org/lwjgl/opengl/ext/EXTStencilTwoSide.java 1.3:
   * src/java/org/lwjgl/opengl/ext/EXTStencilWrap.java 1.3:
   * src/java/org/lwjgl/opengl/ext/EXTTextureCompressionS3TC.java 1.3:
   * src/java/org/lwjgl/opengl/ext/EXTTextureEnvCombine.java 1.5:
   * src/java/org/lwjgl/opengl/ext/EXTTextureEnvDot3.java 1.5:
   * src/java/org/lwjgl/opengl/ext/EXTTextureFilterAnisotropic.java 1.3:
   * src/java/org/lwjgl/opengl/ext/EXTTextureLODBias.java 1.3:
   * src/java/org/lwjgl/opengl/ext/EXTVertexArray.java 1.5:
   * src/java/org/lwjgl/opengl/ext/EXTVertexShader.java 1.3:
   * src/java/org/lwjgl/opengl/ext/EXTVertexWeighting.java 1.3:
   * src/java/org/lwjgl/opengl/hp/HPOcclusionTest.java 1.3:
   * src/java/org/lwjgl/opengl/nv/NVCopyDepthToColor.java 1.3:
   * src/java/org/lwjgl/opengl/nv/NVDepthClamp.java 1.3:
   * src/java/org/lwjgl/opengl/nv/NVEvaluators.java 1.3:
   * src/java/org/lwjgl/opengl/nv/NVFence.java 1.3:
   * src/java/org/lwjgl/opengl/nv/NVFogDistance.java 1.3:
   * src/java/org/lwjgl/opengl/nv/NVLightMaxExponent.java 1.3:
   * src/java/org/lwjgl/opengl/nv/NVOcclusionQuery.java 1.3:
   * src/java/org/lwjgl/opengl/nv/NVPackedDepthStencil.java 1.3:
   * src/java/org/lwjgl/opengl/nv/NVPointSprite.java 1.3:
   * src/java/org/lwjgl/opengl/nv/NVRegisterCombiners.java 1.3:
   * src/java/org/lwjgl/opengl/nv/NVRegisterCombiners2.java 1.3:
   * src/java/org/lwjgl/opengl/nv/NVTexgenReflection.java 1.3:
   * src/java/org/lwjgl/opengl/nv/NVTextureEnvCombine4.java 1.3:
   * src/java/org/lwjgl/opengl/nv/NVTextureRectangle.java 1.3:
   * src/java/org/lwjgl/opengl/nv/NVTextureShader.java 1.3:
   * src/java/org/lwjgl/opengl/nv/NVTextureShader2.java 1.3:
   * src/java/org/lwjgl/opengl/nv/NVTextureShader3.java 1.3:
   * src/java/org/lwjgl/opengl/nv/NVVertexArrayRange.java 1.3:
   * src/java/org/lwjgl/opengl/nv/NVVertexArrayRange2.java 1.3:
   * src/java/org/lwjgl/opengl/nv/NVVertexProgram.java 1.3:
   * src/java/org/lwjgl/opengl/sgis/SGISGenerateMipmap.java 1.3:
   * src/java/org/lwjgl/opengl/sgix/SGIXDepthTexture.java 1.3:
   * src/java/org/lwjgl/opengl/sgix/SGIXShadow.java 1.3:
   * src/java/org/lwjgl/opengl/wgl/WGLBufferRegion.java 1.3:
   * src/java/org/lwjgl/opengl/wgl/WGLMakeCurrentRead.java 1.3:
   * src/java/org/lwjgl/opengl/wgl/WGLMultisample.java 1.3:
   * src/java/org/lwjgl/opengl/wgl/WGLPBuffer.java 1.3:
   * src/java/org/lwjgl/opengl/wgl/WGLPixelFormat.java 1.3:
   * src/java/org/lwjgl/opengl/wgl/WGLRenderTexture.java 1.3:
   * src/native/common/callbacks/GLUQuadricCallbacks.cpp 1.4:
   * src/native/common/callbacks/GLUQuadricCallbacks.h 1.5:
   * src/native/common/org_lwjgl_Display.h 1.13:
   * src/native/common/org_lwjgl_Sys.h 1.7:
   * src/native/common/org_lwjgl_Window.h 1.4:
   * src/native/common/org_lwjgl_input_Cursor.h 1.3:
   * src/native/common/org_lwjgl_input_Keyboard.h 1.4:
   * src/native/common/org_lwjgl_opengl_BaseGL.h 1.10:
   * src/native/common/org_lwjgl_opengl_CoreGL.cpp 1.8:
   * src/native/common/org_lwjgl_opengl_CoreGL.h 1.8:
   * src/native/common/org_lwjgl_opengl_GL.cpp 1.8:
   * src/native/common/org_lwjgl_opengl_GL.h 1.5:
   * src/native/common/org_lwjgl_opengl_GLU.cpp 1.6:
   * src/native/common/org_lwjgl_opengl_GLU.h 1.6:
   * src/native/configure.in 1.14:
   * src/native/linux/org_lwjgl_Display.cpp 1.37:
   * src/native/linux/org_lwjgl_Sys.cpp 1.8:
   * src/native/linux/org_lwjgl_input_Cursor.cpp 1.3:
   * src/native/linux/org_lwjgl_input_Keyboard.cpp 1.25:
   * src/native/linux/org_lwjgl_input_Mouse.cpp 1.29:
   * src/native/win32/org_lwjgl_Display.cpp 1.41:
   * src/native/win32/org_lwjgl_Sys.cpp 1.8:
   * src/native/win32/org_lwjgl_input_Cursor.cpp 1.3:
   * src/native/win32/org_lwjgl_input_Keyboard.cpp 1.20:
   * src/native/win32/org_lwjgl_input_Mouse.cpp 1.24:
      Ported OpenGL to Buffers

2003-06-17   matzon
   * src/java/org/lwjgl/test/openal/PlayTestMemory.java 1.6:
      using classloader to load files

   * src/java/org/lwjgl/test/input/KeyboardTest.java 1.1:
      add simple keyboard test - for completeness sake - needs to be
      made better

   * website/documents/links.html 1.3:
      added AF link

   * website/index.html 1.2:
      now linking to puppygames forum

   * src/java/org/lwjgl/test/openal/MovingSoundTest.java 1.10:
   * src/java/org/lwjgl/test/openal/PlayTest.java 1.6:
      using default file on no argument (allows easier JWS interaction)
      

   * src/java/org/lwjgl/test/openal/WaveData.java 1.6:
   * src/java/org/lwjgl/test/opengl/Grass.java 1.12:
      old resource loading was buggy?

   * src/java/org/lwjgl/test/input/ControllerCreationTest.java 1.6:
   * src/java/org/lwjgl/test/input/MouseCreationTest.java 1.9:
      reset displaymode when done

2003-06-16   matzon
   * src/java/org/lwjgl/openal/BaseAL.java 1.13:
      fix: linux findLibrary failed because invalid lib name was
      passed

2003-06-16   elias_naur
   * src/java/org/lwjgl/openal/BaseAL.java 1.14:
   * src/java/org/lwjgl/opengl/CoreGL.java 1.14:
      Cleaned up JWS openal loading

   * src/java/org/lwjgl/opengl/CoreGL.java 1.15:
      *** empty log message ***

2003-06-15   matzon
   * src/java/org/lwjgl/openal/BaseAL.java 1.12:
      fix: Java Web Start loading of OpenAL

2003-06-12   cix_foo
   * src/java/org/lwjgl/Sys.java 1.19:
   * src/java/org/lwjgl/Window.java 1.12:
   * src/java/org/lwjgl/openal/BaseAL.java 1.10:
   * src/java/org/lwjgl/openal/BaseAL.java 1.11:
   * src/native/common/extal.cpp 1.4:
   * src/native/common/extal.cpp 1.5:
   * src/native/win32/org_lwjgl_Window.cpp 1.13:
      *** empty log message ***

2003-06-08   elias_naur
   * src/native/linux/org_lwjgl_input_Mouse.cpp 1.27:
   * src/native/linux/org_lwjgl_input_Mouse.cpp 1.28:
      Try to return a better minimum cursor size

2003-06-07   cix_foo
   * src/native/win32/org_lwjgl_Window.cpp 1.11:
      Minor tweaks to window creation.

   * src/java/org/lwjgl/Window.java 1.11:
   * src/java/org/lwjgl/input/Keyboard.java 1.22:
   * src/native/common/org_lwjgl_input_Keyboard.h 1.3:
   * src/native/win32/org_lwjgl_input_Keyboard.cpp 1.18:
      *** empty log message ***

   * src/native/win32/org_lwjgl_input_Mouse.cpp 1.22:
      Early exit on failed mouse read.

   * src/native/win32/org_lwjgl_Display.cpp 1.40:
   * src/native/win32/org_lwjgl_Window.cpp 1.12:
   * src/native/win32/org_lwjgl_input_Mouse.cpp 1.23:
      We now restore display settings on minimize. Hurrah!

2003-06-07   elias_naur
   * src/java/org/lwjgl/input/Cursor.java 1.5:
      Doc update

   * src/native/configure.in 1.13:
   * src/native/linux/org_lwjgl_input_Keyboard.cpp 1.24:
   * src/native/win32/org_lwjgl_input_Keyboard.cpp 1.19:
      Fixed win9x keyboard translation

2003-06-04   cix_foo
   * src/java/org/lwjgl/Window.java 1.10:
   * src/native/common/org_lwjgl_Window.h 1.3:
   * src/native/win32/org_lwjgl_Window.cpp 1.10:
   * src/native/win32/org_lwjgl_opengl_BaseGL.cpp 1.22:
      *** empty log message ***

2003-06-01   matzon
   * src/java/org/lwjgl/opengl/Pbuffer.java 1.2:
   * src/java/org/lwjgl/test/DisplayConfigurationTest.java 1.2:
   * src/java/org/lwjgl/test/input/HWCursorTest.java 1.3:
      fix: removed superfluous import statement

2003-06-01   elias_naur
   * src/native/configure.in 1.12:
   * src/native/linux/org_lwjgl_Display.cpp 1.36:
   * src/native/linux/org_lwjgl_input_Keyboard.cpp 1.23:
   * src/native/linux/org_lwjgl_input_Mouse.cpp 1.26:
      Linux fixes

   * src/java/org/lwjgl/Display.java 1.29:
      Added gamma debug output

2003-05-30   elias_naur
   * src/native/linux/org_lwjgl_opengl_BaseGL.cpp 1.18:
      Extra checks in window creation

   * src/native/linux/org_lwjgl_Display.cpp 1.35:
      More Display checks

   * src/native/linux/org_lwjgl_opengl_BaseGL.cpp 1.19:
      Added USEGLX13 to BaseGL.cpp

2003-05-27   elias_naur
   * src/java/org/lwjgl/Display.java 1.28:
   * src/java/org/lwjgl/test/DisplayConfigurationTest.java 1.1:
   * src/native/common/org_lwjgl_Display.h 1.12:
   * src/native/linux/org_lwjgl_Display.cpp 1.34:
   * src/native/win32/org_lwjgl_Display.cpp 1.39:
      Implemented gamma, brightness and contrast controls on win32 and linux
      using a simplified gamma ramp API

2003-05-26   elias_naur
   * src/java/org/lwjgl/Display.java 1.27:
      Doc fix: gamma arrays are three arrays, not one consecutive

   * src/java/org/lwjgl/Display.java 1.26:
      Doc fix: Gamma changes are undone at resetDisplayMode

2003-05-23   cfxmarvin
   * src/native/macosx/org_lwjgl_opengl_BaseGL.cpp 1.12:
      oops missed double buffer attribute

   * src/native/macosx/org_lwjgl_Display.cpp 1.15:
      fixed sporadic Bus Error in GetAvailableDisplayModes

2003-05-20   cfxmarvin
   * src/native/macosx/org_lwjgl_opengl_BaseGL.cpp 1.11:
      fixed some more initialization issues

   * src/native/common/org_lwjgl_openal_eax_EAXBufferProperties.cpp 1.2:
   * src/native/common/org_lwjgl_openal_eax_EAXListenerProperties.cpp 1.2:
   * src/native/macosx/org_lwjgl_Display.cpp 1.14:
      minor cleanup

   * src/native/macosx/org_lwjgl_Window.cpp 1.1:
      Stubs for OS X

2003-05-20   elias_naur
   * src/java/org/lwjgl/Window.java 1.9:
   * src/java/org/lwjgl/input/Cursor.java 1.4:
   * src/java/org/lwjgl/input/Mouse.java 1.20:
   * src/java/org/lwjgl/opengl/BaseGL.java 1.20:
   * src/java/org/lwjgl/opengl/Pbuffer.java 1.1:
   * src/java/org/lwjgl/test/input/HWCursorTest.java 1.2:
   * src/java/org/lwjgl/test/opengl/PbufferTest.java 1.1:
   * src/native/common/org_lwjgl_input_Cursor.h 1.2:
   * src/native/common/org_lwjgl_input_Mouse.h 1.5:
   * src/native/common/org_lwjgl_opengl_Pbuffer.h 1.1:
   * src/native/linux/Makefile.am 1.5:
   * src/native/linux/Window.h 1.3:
   * src/native/linux/org_lwjgl_input_Cursor.cpp 1.2:
   * src/native/linux/org_lwjgl_input_Mouse.cpp 1.25:
   * src/native/linux/org_lwjgl_opengl_BaseGL.cpp 1.17:
   * src/native/linux/org_lwjgl_opengl_Pbuffer.cpp 1.1:
   * src/native/win32/Window.h 1.5:
   * src/native/win32/org_lwjgl_Window.cpp 1.9:
   * src/native/win32/org_lwjgl_input_Cursor.cpp 1.2:
   * src/native/win32/org_lwjgl_input_Mouse.cpp 1.21:
   * src/native/win32/org_lwjgl_opengl_BaseGL.cpp 1.21:
   * src/native/win32/org_lwjgl_opengl_Pbuffer.cpp 1.1:
      Implemented Pbuffers on win32 and linux (render to texture will be done later)
      Implemented native cursor caps (one bit transparancy, alpha translucency and animations)

   * src/native/linux/extxcursor.cpp 1.3:
   * src/native/linux/extxcursor.cpp 1.4:
      Native cursor fixes

   * src/native/linux/extxcursor.cpp 1.2:
      Cursor fixes

2003-05-19   cfxmarvin
   * src/native/macosx/org_lwjgl_opengl_BaseGL.cpp 1.10:
      fixed some initialization issues

2003-05-19   elias_naur
   * src/java/org/lwjgl/input/Cursor.java 1.2:
   * src/java/org/lwjgl/input/Cursor.java 1.3:
   * src/java/org/lwjgl/opengl/BaseGL.java 1.19:
      Fixes

2003-05-17   elias_naur
   * src/native/linux/org_lwjgl_input_Mouse.cpp 1.24:
      Min cursor size 1, not 0

2003-05-17   cfxmarvin
   * src/native/common/extal.cpp 1.3:
   * src/native/common/extal.h 1.18:
      Mac OS X Support - untested

2003-05-16   elias_naur
   * src/java/org/lwjgl/input/Cursor.java 1.1:
   * src/java/org/lwjgl/input/Mouse.java 1.19:
   * src/java/org/lwjgl/test/input/HWCursorTest.java 1.1:
   * src/native/common/extgl.c 1.17:
   * src/native/common/org_lwjgl_input_Cursor.h 1.1:
   * src/native/common/org_lwjgl_input_Mouse.h 1.4:
   * src/native/linux/Makefile.am 1.4:
   * src/native/linux/Window.h 1.2:
   * src/native/linux/extxcursor.cpp 1.1:
   * src/native/linux/extxcursor.h 1.1:
   * src/native/linux/org_lwjgl_Window.cpp 1.4:
   * src/native/linux/org_lwjgl_input_Cursor.cpp 1.1:
   * src/native/linux/org_lwjgl_input_Keyboard.cpp 1.22:
   * src/native/linux/org_lwjgl_input_Mouse.cpp 1.23:
   * src/native/win32/Window.h 1.4:
   * src/native/win32/org_lwjgl_Window.cpp 1.8:
   * src/native/win32/org_lwjgl_input_Controller.cpp 1.12:
   * src/native/win32/org_lwjgl_input_Cursor.cpp 1.1:
   * src/native/win32/org_lwjgl_input_Keyboard.cpp 1.17:
   * src/native/win32/org_lwjgl_input_Mouse.cpp 1.20:
      Native cursors implemented

2003-05-11   elias_naur
   * src/native/common/extgl.c 1.16:
      Added debug output when dynamic library load fails

2003-05-10   gregorypierce
   * src/native/macosx/RenderingContext.cpp 1.9:
   * src/native/macosx/RenderingContext.h 1.9:
   * src/native/macosx/org_lwjgl_Display.cpp 1.10:
   * src/native/macosx/org_lwjgl_opengl_BaseGL.cpp 1.6:
      Finishing up changes to the Display and BaseGL classes.

   * src/native/macosx/org_lwjgl_Sys.cpp 1.5:
      Updated to be up to date with current release. Still no support
      for setting process priority.

   * src/native/macosx/org_lwjgl_input_Mouse.cpp 1.5:
      Updated to use CG API for mouse capture and deltas. OS handles
      Deltas itself so using that as opposed to tracking it myself.

   * src/native/macosx/org_lwjgl_Display.cpp 1.13:
      Change to use the actual refresh rate from the display in the
      init call instead of setting it to 60. It doesn't really matter
      since OSX could care less, but for others maintaining the port,
      they may want code that looks the same.

   * src/native/macosx/org_lwjgl_Display.cpp 1.12:
   * src/native/macosx/org_lwjgl_opengl_BaseGL.cpp 1.8:
      Changed the location of the CGDisplayCapture from the GL code to
      the Display code. A side effect of this is that calling
      resetDisplayMode() is required - not optional. Not calling
      resetDisplayMode() may result in a non-responsive machine.

   * src/native/macosx/org_lwjgl_opengl_BaseGL.cpp 1.9:
      Added in double buffering and added in the capability to
      actually swapBuffers with CGFlushDisplay() which will copy the
      back to the front.

   * src/native/macosx/org_lwjgl_opengl_BaseGL.cpp 1.7:
      Removed unnecessary struct. No point consuming memory for
      something that's unnecessary.

   * src/native/macosx/org_lwjgl_Display.cpp 1.11:
      Updated the display init function so that the OSX version plays
      nicely with the other versions.

2003-05-09   gregorypierce
   * src/native/macosx/org_lwjgl_input_GamePad.cpp 1.3:
   * src/native/macosx/org_lwjgl_input_Joystick.cpp 1.2:
      Removed as interface to HID devices has changed

   * src/native/macosx/RenderingContext.cpp 1.8:
   * src/native/macosx/RenderingContext.h 1.8:
   * src/native/macosx/org_lwjgl_input_Mouse.cpp 1.4:
      Updated to use CGL as opposed to AGL

2003-05-08   gregorypierce
   * src/native/macosx/RenderingContext.cpp 1.7:
   * src/native/macosx/RenderingContext.h 1.7:
   * src/native/macosx/org_lwjgl_Display.cpp 1.9:
   * src/native/macosx/org_lwjgl_Sys.cpp 1.4:
      Revamped architecture replacing AGL nastiness with cleaner CGL
      API

2003-05-08   matzon
   * src/java/org/lwjgl/input/Keyboard.java 1.21:
      back to 1.19 - silly me

   * src/java/org/lwjgl/input/Keyboard.java 1.20:
   * src/java/org/lwjgl/test/input/ControllerTest.java 1.4:
      new test, based on MouseTest

   * src/native/win32/org_lwjgl_input_Controller.cpp 1.11:
      fix: Controller now works again (window.h was being included,
      and setting dx version to 3, which doesn't support joysticks)

2003-05-07   matzon
   * src/native/win32/org_lwjgl_input_Keyboard.cpp 1.16:
      fix: increased buffersize to correct size (buffering +
      translation can increase needed size to 200 bytes at most)

PlanetMongo

ife sucks, kill yourself.

Fuseboy2

Is the 'static implementation' making all of the OpenGL functions, currently methods of GL, into static methods?

Noooo!

Fuseboy

AndersD

Hmm, why the "NOOO!"? I guess it's kind of strange "java-wise", but then opengl is not "java" - it's not even object oriented. As opengl is "static" (?) - atleast my initial reaction was that a singleton (NOOO - not that discussion again ;) class with static access methods should be fine?

Fuseboy2

I'm opining here as someone who hasn't done any of the hard work involved to bring this API to life.  Having said that, I'd love it if LWJGL made use of Java idioms as fully as possible.

As long as sufficient similarity so the C API is retained that LWJGL users can still make use of existing OpenGL resources (e.g. porting code small examples easily, making use of OpenGL books, etc.) there seem to be two big advantages to embracing Java idioms: ease of use and flexibility.

My guess is that most LWJGL users (especially future ones) are in my situation of being more familiar with Java than with OpenGL.  (Coming from J2EE, I find the extensive static code blocks in org.lwjgl.test.opengl.Game quite bizarre.)  I think the more Java-like the API, the easier it is to learn, and consequently the more likely it is to increase in popularity.

My LWJGL wish list is (it's a lot to ask, but hey, it's a wish list):

- Don't make all the methods static.  This way it leaves it accessible to extension for various purposes, but particularly mock objects-based automated unit testing.  (I have unit tests for everything else in my fledgling game, but not the graphics rendering.)  Even better, make GL into an interface - that way it can be done through a dynamic proxy much less work.

- Make the constant parameters type safe so that, apart from the usual benefits, the API is much more explorable through Javadoc.

- Wrap it with the thinnest layer of OO to encapsulate GL's "object" handles (e.g. textures, vertex programs, etc.) as Java objects.

Fuseboy

AndersD

Quote- Don't make all the methods static. This way it leaves it accessible to extension for various purposes, but particularly mock objects-based automated unit testing. (I have unit tests for everything else in my fledgling game, but not the graphics rendering.) Even better, make GL into an interface - that way it can be done through a dynamic proxy much less work.

- Extensions: I guess it's pretty hard to extend opengl from java? Maybe I don't understand your point though. :)

. Mock-objects: You've got a point, It would be trivial though with the help of e.g. Eclipse to generate a "forwarding class" from the static class (which forward an instance's method calls to the standard class static ones) - thus "simulating an object"?

Quote- Make the constant parameters type safe so that, apart from the usual benefits, the API is much more explorable through Javadoc.

Good point - probably java 1.5 enum's would be great here? (i.e. the typesafe enum pattern built into the language)

Shouldn't be that hard to build a "parser" to create an enum class with all the relevant constants and substitute method signatures to the enum type. (doesn't make it totally type safe - but it prevents missuse of ints though)

Quote- Wrap it with the thinnest layer of OO to encapsulate GL's "object" handles (e.g. textures, vertex programs, etc.) as Java objects.

Static access methods that take clearly defined java objects (textures etc) and ByteBuffers (pure "data") - I like it ;)

I'm just a newbie in opengl land though :)[/quote]

princec

There is no extension to GL through Objects. GL is not performing operations on an Object, or anything even remotely resembling an Object. GL performs operations on a thread-local context and the way you model this in Java, or any other OO language, is static methods.

If you try and make all your problems look like nails and whack them with a hammer you'll end up being a really bad brain surgeon. Just let go all this "Java" paradigm and think good and hard about what we're asking the language to achieve for us, and you'll realise that the GL-is-an-object paradigm is wholly wrong.

Cas :)

Fuseboy2

Heh.. maybe the scales will fall from my eyes at some point, but I resent the implication :-) - mainly because I think it's a design decision that isn't entirely black and white.

There are API's that use instance methods provide access to thread-local state, just as there are API's that manipulate stateful entities through static methods.

Whether GL is "truly" an "object" or not isn't my main issue; although I think the static approach has more disadvantages than benefits, I'm primarily trying to solve a practical problem.  AndersD's idea was a good one; I can use a code generator to create a forwarder (which is best done in the build script somehow, I think, rather than by an IDE, to avoid maintance issues).

Parts of GL's internal state, however, are very much object-like - there are bits of it that are instantiated and reclaimed which have attributes and operations, and are in fact referred to in the man pages as objects.

Fuseboy

princec

....and they're the things that you encapsulate. GLTexture, GLDisplayList, etc.

Cas :)

spasi

Hi,

There's a problem with LWJGL 0.7. Vertex_Buffer_Object extension, when enabled, changes the way glVertexPointer, glNormalPointer etc, work. Instead of accepting pointers, they accept offsets on the buffer. That is, instead of (in C code):

glVertexPointer(4, FLOAT, 0, data);
glColorPointer(4, UNSIGNED_BYTE, 0, data+256);

it works like this:

glVertexPointer(4, FLOAT, 0, 0);
glColorPointer(4, UNSIGNED_BYTE, 0, 256);

LWJGL defines glVertexPointer(int size, int type, int stride, Buffer pointer), which works fine the old way, but it's useless if you want to use VBO. Maybe a new method glVertexPointer(int size, int type, int stride, int offset) should be defined, just for this case.

And another suggestion, it's not really a problem, just something a personally dislike. Generally with 0.7 my code looks cleaner, except for a few cases. Especially gluUnProject really sucks! The method signature is gluUnProject(double winx, double winy, double winz, DoubleBuffer modelMatrix, DoubleBuffer projMatrix, IntBuffer viewport, DoubleBuffer objx, DoubleBuffer objy, DoubleBuffer objz). I'd really appreciate it if a new method could be defined like this:

gluUnProject(double winx, double winy, double winz, DoubleBuffer modelMatrix, DoubleBuffer projMatrix, IntBuffer viewport, DoubleBuffer obj)

that works like this (in C code):

JNIEXPORT jint JNICALL Java_org_lwjgl_opengl_GLU_gluProject(JNIEnv * env, jclass clazz, jdouble p0, jdouble p1, jdouble p2, jobject buffer, jobject buffer2, jobject buffer3, jobject buffer4)
{
   const GLdouble *address = (const GLdouble *)env->GetDirectBufferAddress(buffer);
   const GLdouble *address2 = (const GLdouble *)env->GetDirectBufferAddress(buffer2);
   const GLint *address3 = (const GLint *)env->GetDirectBufferAddress(buffer3);
   GLdouble *address4 = (GLdouble *)env->GetDirectBufferAddress(buffer4);
   jint ret = (jint) gluProject((GLdouble) p0, (GLdouble) p1, (GLdouble) p2, address, address2, address3, address4, address4 + 8, address4 + 16);
   CHECK_GL_ERROR
   return ret;
}

I hate having 3 Buffers for just 3 doubles (really 3 sliced Buffers). If you decide to make something like this, I think this could be applied to other "ugly" methods too.

elias

The VBO case is already fixed in CVS to be released in 0.7 final. The gluUnproject case looks like it be improved, what do others think? It would be nice if you provided us with a list of "ugly" methods you want improved, BTW.

- elias

princec

I'd particularly like to see all the glColor*v methods removed. And all of the other *v methods, as they are simply not relevant to a Java implementation. They were provided for performance in C but have exactly the opposite effect in Java. They also make your code fantastically ugly.

Cas :)

spasi

The only other similar method I could find is gluProject. It has the same problem. And I guess Cas is right about the *v methods.

I also found a problem with the extensions booleans (of GL class). 0.6 had a:

String ext = st.nextToken();
if (ext.startsWith("GL_"))
      ext = ext.substring(3);

which worked OK, but now it's gone and it can't match the fields, because the extensions booleans don't have the "GL_" prefix (i.e. ARB_imaging instead of GL_ARB_imaging). I guess you should either restore those 3 lines or add the "GL_" prefix (I prefer the later).

elias

Thanx, the extension names now have a GL_ prefix.

- elias

elias

And now all superfluous *v methods are removed too.

- elias