Releases: jMonkeyEngine/jmonkeyengine
Releases · jMonkeyEngine/jmonkeyengine
jMonkeyEngine 3.10.0-alpha3
What's Changed
- Fix a regression in 3.10.0-alpha2 that caused an Exception when registering classes to the Serializer (Commit f4a0bad & Commit 44ced3d)
- Hardened memory allocator for jme by @riccardobl in #2639
- Fix SPTerrainLighting.frag missing SpecularMap support by @Copilot in #2654
- LWJGL 3.4.1 by @yaRnMcDonuts in #2598
- #2582 Correct thread warden so it can cope with multiple threaded JME apps by @richardTingle in #2583
- Feature - Mouse devices on android by @joliver82 in #2597
- Add glTF draco support by @javagl in #2591
- Replaces fullscreen quad with a viewport covering triangle by @zzuegg in #2589
- Introduce cachedLocalMat and update cloning logic by @capdevon in #2612
- Multi scenario screenshot test by @richardTingle in #2590
- Implement cleanUpFilter method in SoftBloomFilter by @capdevon in #2611
- fix crash when default framebuffer sizes are too small by @riccardobl in #2619
- Removed references to removed jme3-vr project by @aegroto in #2629
- Fix noiselib to properly compile on android (float literals). Also fixed NoiseLib.glsllib code indent by @joliver82 in #2622
- catch every exception from audio context initialization by @riccardobl in #2625
- fix regression that disabled custom fpp color format in some platforms by @riccardobl in #2623
- Fix AssertionError crash when audio source finishes while paused by @Copilot in #2633
- Rename FastMath.toMultipleOf to alignToPowerOfTwo and provide generic implementation by @Copilot in #2606
- Fix InstancedNode losing InstanceNodeControl after deserialization by @Copilot in #2605
- Fix RenderState hash invalidation in stencil setters and flipFaceCull by @Copilot in #2603
- Add GL_ES precision qualifiers to Glsl150ShaderGenerator for GLES3 compatibility by @Copilot in #2634
- Throw exception when unsupported extension is required by @javagl in #2628
- Reduce object allocations in AudioListener by @capdevon in #2501
- update the Gradle build tool to v8.14.4 by @stephengold in #2641
- Fix depth in SDSM shadows by @jeannekamikaze in #2630
- Fix for issue #2302 - NativeLibraryLoader fails due to no write permissions by @terranprog in #2303
- Fix 2631 by @codex128 in #2632
- fix: Issue 89 resolved #2602 - upgrade lwjglx (jme3) by @JNightRider in #2645
- WIP/Fix: correct parallel projection frustum plane normals for left/right by @zzuegg in #2640
- VectorEffects by @yaRnMcDonuts in #2577
- Fix type confusion in Serializer.getSerializerRegistration by @Copilot in #2604
- Update gradle/actions/wrapper-validation from v3 to v4 by @Copilot in #2651
- Fix memory leaks caused by reused arrays of Spatials by @parysto in #2642
- fix: Native platform - LwjglCanvas (example) by @JNightRider in #2646
- Auto-scale singlePassLightBatchSize exponentially up to hardware-clamped maximum by @Copilot in #2649
- Fix singlepass lighting artifacts and make it the default by @riccardobl in #2652
- break the sp lighting loop early in modern gl(es) by @riccardobl in #2655
- Add support for global lights by @riccardobl in #2548
- Add HSVUtils.glsllib by @yaRnMcDonuts in #2644
Full Changelog: v3.10.0-alpha1...v3.10.0-alpha3
jMonkeyEngine 3.10.0-alpha2
NOTE: This version contains a major regression that may cause Exceptions when registering classes to the Serializer. An alpha3 release has been deployed to fix this, and you should use that instead.
What's Changed
- LWJGL 3.4.1 by @yaRnMcDonuts in #2598
- #2582 Correct thread warden so it can cope with multiple threaded JME apps by @richardTingle in #2583
- Feature - Mouse devices on android by @joliver82 in #2597
- Add glTF draco support by @javagl in #2591
- Replaces fullscreen quad with a viewport covering triangle by @zzuegg in #2589
- Introduce cachedLocalMat and update cloning logic by @capdevon in #2612
- Multi scenario screenshot test by @richardTingle in #2590
- Implement cleanUpFilter method in SoftBloomFilter by @capdevon in #2611
- fix crash when default framebuffer sizes are too small by @riccardobl in #2619
- Removed references to removed jme3-vr project by @aegroto in #2629
- Fix noiselib to properly compile on android (float literals). Also fixed NoiseLib.glsllib code indent by @joliver82 in #2622
- catch every exception from audio context initialization by @riccardobl in #2625
- fix regression that disabled custom fpp color format in some platforms by @riccardobl in #2623
- Fix AssertionError crash when audio source finishes while paused by @Copilot in #2633
- Rename FastMath.toMultipleOf to alignToPowerOfTwo and provide generic implementation by @Copilot in #2606
- Fix InstancedNode losing InstanceNodeControl after deserialization by @Copilot in #2605
- Fix RenderState hash invalidation in stencil setters and flipFaceCull by @Copilot in #2603
- Add GL_ES precision qualifiers to Glsl150ShaderGenerator for GLES3 compatibility by @Copilot in #2634
- Throw exception when unsupported extension is required by @javagl in #2628
- Reduce object allocations in AudioListener by @capdevon in #2501
- update the Gradle build tool to v8.14.4 by @stephengold in #2641
- Fix depth in SDSM shadows by @jeannekamikaze in #2630
- Fix for issue #2302 - NativeLibraryLoader fails due to no write permissions by @terranprog in #2303
- Fix 2631 by @codex128 in #2632
- fix: Issue 89 resolved #2602 - upgrade lwjglx (jme3) by @JNightRider in #2645
- WIP/Fix: correct parallel projection frustum plane normals for left/right by @zzuegg in #2640
- VectorEffects by @yaRnMcDonuts in #2577
- Fix type confusion in Serializer.getSerializerRegistration by @Copilot in #2604
- Update gradle/actions/wrapper-validation from v3 to v4 by @Copilot in #2651
- Fix memory leaks caused by reused arrays of Spatials by @parysto in #2642
- fix: Native platform - LwjglCanvas (example) by @JNightRider in #2646
- Auto-scale singlePassLightBatchSize exponentially up to hardware-clamped maximum by @Copilot in #2649
- Fix singlepass lighting artifacts and make it the default by @riccardobl in #2652
- break the sp lighting loop early in modern gl(es) by @riccardobl in #2655
- Add support for global lights by @riccardobl in #2548
- Add HSVUtils.glsllib by @yaRnMcDonuts in #2644
New Contributors
- @javagl made their first contribution in #2591
- @aegroto made their first contribution in #2629
- @Copilot made their first contribution in #2633
- @jeannekamikaze made their first contribution in #2630
- @terranprog made their first contribution in #2303
- @parysto made their first contribution in #2642
Full Changelog: v3.10.0-alpha1...v3.10.0-alpha2
v3.10.0-alpha1
What's Changed
- Fix misuse of read and skipBytes by @riccardobl in #2557
- Camera: Add optimized screenPointToRay(Vector2f) for efficient raycasting by @capdevon in #2479
- Feat: Add receivesShadows serialization for Material by @capdevon in #2482
- Make TempVars closeable by @riccardobl in #2580
- #2460: Fix getBoolean(GLExt.GL_FRAMEBUFFER_SRGB_CAPABLE_EXT) causes error 1280 (invalid enum) by @capdevon in #2461
- Implement an Sample-Distribution Shadow Mapping filter by @ScottPeterJohnson in #2578
- Bug: PBRLightingUtils.glsllib - Typo in GlossinessMap by @capdevon in #2586
- LWJGL 3.4.0 and Remove OpenVR by @yaRnMcDonuts in #2581
- Fix PointLight infinite radius shader overflow(#2566) by @hayden9329 in #2570
- Reduce object allocations in ShadowUtility by @capdevon in #2481
- AbstractShadowRenderer: fix displayFrustum by @capdevon in #2561
- Reduce object allocations in DirectionalLightShadowRenderer by @capdevon in #2513
- Fix gamepads with Xbox-like remapping and SDL in lwjgl3 backend by @riccardobl in #2579
- Reduce object allocations in SpotLightShadowRenderer by @capdevon in #2515
New Contributors
- @ScottPeterJohnson made their first contribution in #2578
- @hayden9329 made their first contribution in #2570
Full Changelog: v3.9.0-beta1...v3.10.0-alpha1
v3.9.0-stable
What's Changed (since v3.8)
- Improved fix for IndexOutOfBoundsException by @tonihele in #2403
- Fix NPE on AbstractShadowFilter deserialization by @capdevon in #2405
- Update gradle.properties by @yaRnMcDonuts in #2415
- Create additional screenshot tests and add an auto message on screenshot test failure by @richardTingle in #2413
- #2416 pbr screenshot tests by @richardTingle in #2417
- Fix #2408 - com.jme3.audio.LowPassFilter not cloneable by @capdevon in #2410
- com.jme3.audio.Listener: format code + javadoc by @capdevon in #2414
- jme3-examples: TestPostWater code cleanup by @capdevon in #2418
- jme3-examples: TestReverb code cleanup by @capdevon in #2419
- Add InstanceNode test using PBRLighting by @yaRnMcDonuts in #2437
- jme3-examples: TestAmbient - test code optimization by @capdevon in #2429
- jme3-examples: TestOgg - added additional parameter tests by @capdevon in #2425
- jme3-examples: add TestDeviceDisconnect class by @capdevon in #2433
- com.jme3.audio.Environment: javadoc by @capdevon in #2428
- LwjglCanvas: typo in getPrintContextInitInfo() method by @capdevon in #2434
- Update DebugValuesMode documentation in PBRLighting.j3md by @yaRnMcDonuts in #2427
- jme3-examples: TestWav - test code optimization by @capdevon in #2430
- jme3-examples: TestDoppler - test code optimization by @capdevon in #2431
- jme3-examples: add TestAudioDirectional class by @capdevon in #2432
- DefaultParticleInfluencer: incorrect cloning of variables by @capdevon in #2407
- EmitterShape: javadoc improvements by @capdevon in #2420
- ALAudioRenderer: code improvements by @capdevon in #2423
- #2442 Automate test TestInstanceNodeWithPbr by @richardTingle in #2443
- com.jme3.audio.LowPassFilter lacks the required no-argument constructor for jME deserialization by @capdevon in #2441
- FastMath: new utility methods by @capdevon in #2450
- Add makeGeometry() method to WireSphere for consistency with WireBox by @capdevon in #2458
- CameraEvent: javadoc by @capdevon in #2448
- PBR Fixes: Apply band factor to spherical harmonic coefficients in accelerated baker light and prevent fireflies artifacts by @riccardobl in #2439
- Update PBR Screenshot Tests by @yaRnMcDonuts in #2462
- New audio filters: HighPassFilter and BandPassFilter by @capdevon in #2444
- Undeprecate LoopMode by @capdevon in #2477
- MorphTarget: Add Missing License and Javadoc by @capdevon in #2464
- Return normal of sphere shaped emitter by @riccardobl in #2469
- Fix bbox validation check in particle emitter by @riccardobl in #2468
- Add Missing Joystick Button Definitions by @capdevon in #2474
- Enhance Material Javadoc by @capdevon in #2459
- Revert Static keyword in JoystickButton by @yaRnMcDonuts in #2484
- Reduce object allocations in MotionEvent's direction computation by @capdevon in #2447
- Improve LightControl Javadoc & Add Light Type Validation by @capdevon in #2451
- Add TextureMultisample cap to macos with gl > 3.2 by @riccardobl in #2475
- WireFrustum: javadoc + add makeGeometry(Camera) method by @capdevon in #2480
- Fix framebuffer initialization when cap TextureMultisample is missing by @riccardobl in #2476
- jme3-examples: TestLodGeneration - test code optimization by @capdevon in #2457
- SSAOFilter: javadoc + fix approximateNormals serialization by @capdevon in #2486
- Wayland fullscreen issue fixed by @JNightRider in #2492
- Materials: new material definitions for common shaders by @capdevon in #2485
- Add new screenshot tests for bill boarding, cartoons, fog and scattering by @richardTingle in #2518
- Refactor: optimize FlyByCamera and reduce object allocations + javadoc by @capdevon in #2498
- Feat: ConstantVerifierState - expand JME constant verification, fix logger name + javadoc by @capdevon in #2499
- Refactor: optimize ColorRGBA class + reduce code duplication by @capdevon in #2507
- Fix #2355 - VertexBuffer doesn't serialize the 'name' field by @capdevon in #2508
- AudioNode: add getAudioKey() method by @capdevon in #2512
- Consistent toString() for Lights by @capdevon in #2473
- ShaderNodeDefinitionLoader: Ensures clean instance state by @capdevon in #2510
- MatrixJointModelTransform: missing license + javadoc by @capdevon in #2511
- Refactor: LightsDebugState optimization, javadoc, performance by @capdevon in #2467
- Feat: WAVLoader: Ensures clean instance state, optimization + javadoc by @capdevon in #2496
- Refactor: SkinningControl optimization + javadoc by @capdevon in #2504
- feat: Improve ArmatureDebugAppState by @capdevon in #2491
- Feat: Improve ArmatureDebugger by @capdevon in #2493
- new process for publishing snapshots and releases to Sonatype by @stephengold in #2535
- better location for the "uploadToCentral.sh" build script by @stephengold in #2536
- VarType: javadoc by @capdevon in #2519
- Refactor: AbstractShadowFilter reduce object allocations by @capdevon in #2516
- Feat: EmitterMeshFaceShape - enhance particle emission uniformity by @capdevon in #2503
- Support for switching platforms (from Wayland EGL to X11 GLX) by @JNightRider in #2500
- AWTSettingsDialog: javadoc + add AppSettings Preference logging by @capdevon in #2478
- #2541 move screenshots to docker by @richardTingle in #2542
- Changes pipeline lists to from LinkedList to ArrayList by @codex128 in #2543
- Fixed stencil reference handling in RenderState #2538 by @theMinka in #2539
- Fix inverted axis in gltf loader by @riccardobl in #2546
- Enhance BitmapFont and BitmapText Javadoc by @capdevon in #2534
- ArmatureDebugAppState: minor fix and improvements by @capdevon in #2531
- Refactor: PointLightShadowRenderer reduce object allocations by @capdevon in #2514
- Refactor: BinaryExporter optimization + javadoc by @capdevon in #2524
- Refactor: NewtonianParticleInfluencer reduce object allocations by @capdevon in #2506
- Android 16kb openalsoft update by @joliver82 in #2552
- #2562 thread warden by @richardTingle in #2563
- Refactor RenderManager for improved Type Safety, ...
jMonkeyEngine 3.9.0-beta1
What's Changed
- Android 16kb fix by @joliver82 in #2573
- solve issue #2571 (RendererException with hw skinning disabled) by @stephengold in #2574
- Improve memory efficiency and speed of gltf importer by @riccardobl in #2553
- perform json element autoCast when loading user data in gltf loader by @riccardobl in #2558
- Make initial velocity influence newtornian particles by @riccardobl in #2470
- iOS support by @joliver82 in #2411
- Refactor: optimize AbstractShadowRenderer by @capdevon in #2517
- Refactor: FilterPostProcessor javadoc by @capdevon in #2502
- JmeSystem: code improvements by @capdevon in #2421
- Refactor: SimpleApplication optimization + javadoc by @capdevon in #2490
- KHR pbr neutral tonemap by @riccardobl in #2547
Full Changelog: v3.9.0-alpha5...v3.9.0-beta1
jMonkeyEngine 3.9.0-alpha5
What's Changed
- Refactor: PointLightShadowRenderer reduce object allocations by @capdevon in #2514
- Refactor: BinaryExporter optimization + javadoc by @capdevon in #2524
- Refactor: NewtonianParticleInfluencer reduce object allocations by @capdevon in #2506
- Android 16kb openalsoft update by @joliver82 in #2552
- #2562 thread warden by @richardTingle in #2563
- Refactor RenderManager for improved Type Safety, javadoc, and code clarity by @capdevon in #2530
- Added convenience method worldToLocal(Quaternion) to spatial. by @zzuegg in #2559
Full Changelog: v3.9.0-alpha4...v3.9.0-alpha5
jMonkeyEngine 3.9.0-alpha4
What's Changed
- VarType: javadoc by @capdevon in #2519
- Refactor: AbstractShadowFilter reduce object allocations by @capdevon in #2516
- Feat: EmitterMeshFaceShape - enhance particle emission uniformity by @capdevon in #2503
- Support for switching platforms (from Wayland EGL to X11 GLX) by @JNightRider in #2500
- AWTSettingsDialog: javadoc + add AppSettings Preference logging by @capdevon in #2478
- #2541 move screenshots to docker by @richardTingle in #2542
- Changes pipeline lists to from LinkedList to ArrayList by @codex128 in #2543
- Fixed stencil reference handling in RenderState #2538 by @theMinka in #2539
- Fix inverted axis in gltf loader by @riccardobl in #2546
- Enhance BitmapFont and BitmapText Javadoc by @capdevon in #2534
- ArmatureDebugAppState: minor fix and improvements by @capdevon in #2531
Full Changelog: v3.9.0-alpha3...v3.9.0-alpha4
jMonkeyEngine 3.9.0-alpha3
What's Changed
- new process for publishing snapshots and releases to Sonatype by @stephengold in #2535
- better location for the "uploadToCentral.sh" build script by @stephengold in #2536
Full Changelog: v3.9.0-alpha2...v3.9.0-alpha3
jMonkeyEngine 3.9.0-alpha2
What's Changed
- Undeprecate LoopMode by @capdevon in #2477
- MorphTarget: Add Missing License and Javadoc by @capdevon in #2464
- Return normal of sphere shaped emitter by @riccardobl in #2469
- Fix bbox validation check in particle emitter by @riccardobl in #2468
- Add Missing Joystick Button Definitions by @capdevon in #2474
- Enhance Material Javadoc by @capdevon in #2459
- Revert Static keyword in JoystickButton by @yaRnMcDonuts in #2484
- Reduce object allocations in MotionEvent's direction computation by @capdevon in #2447
- Improve LightControl Javadoc & Add Light Type Validation by @capdevon in #2451
- Add TextureMultisample cap to macos with gl > 3.2 by @riccardobl in #2475
- WireFrustum: javadoc + add makeGeometry(Camera) method by @capdevon in #2480
- Fix framebuffer initialization when cap TextureMultisample is missing by @riccardobl in #2476
- jme3-examples: TestLodGeneration - test code optimization by @capdevon in #2457
- SSAOFilter: javadoc + fix approximateNormals serialization by @capdevon in #2486
- Wayland fullscreen issue fixed by @JNightRider in #2492
- Materials: new material definitions for common shaders by @capdevon in #2485
- Add new screenshot tests for bill boarding, cartoons, fog and scattering by @richardTingle in #2518
- Refactor: optimize FlyByCamera and reduce object allocations + javadoc by @capdevon in #2498
- Feat: ConstantVerifierState - expand JME constant verification, fix logger name + javadoc by @capdevon in #2499
- Refactor: optimize ColorRGBA class + reduce code duplication by @capdevon in #2507
- Fix #2355 - VertexBuffer doesn't serialize the 'name' field by @capdevon in #2508
- AudioNode: add getAudioKey() method by @capdevon in #2512
- Consistent toString() for Lights by @capdevon in #2473
- ShaderNodeDefinitionLoader: Ensures clean instance state by @capdevon in #2510
- MatrixJointModelTransform: missing license + javadoc by @capdevon in #2511
- Refactor: LightsDebugState optimization, javadoc, performance by @capdevon in #2467
- Feat: WAVLoader: Ensures clean instance state, optimization + javadoc by @capdevon in #2496
- Refactor: SkinningControl optimization + javadoc by @capdevon in #2504
- feat: Improve ArmatureDebugAppState by @capdevon in #2491
- Feat: Improve ArmatureDebugger by @capdevon in #2493
Full Changelog: v3.9.0-alpha1...v3.9.0-alpha2
jMonkeyEngine 3.9.0-alpha1
What's Changed
- Improved fix for IndexOutOfBoundsException by @tonihele in #2403
- Fix NPE on AbstractShadowFilter deserialization by @capdevon in #2405
- Update gradle.properties by @yaRnMcDonuts in #2415
- Create additional screenshot tests and add an auto message on screenshot test failure by @richardTingle in #2413
- #2416 pbr screenshot tests by @richardTingle in #2417
- Fix #2408 - com.jme3.audio.LowPassFilter not cloneable by @capdevon in #2410
- com.jme3.audio.Listener: format code + javadoc by @capdevon in #2414
- jme3-examples: TestPostWater code cleanup by @capdevon in #2418
- jme3-examples: TestReverb code cleanup by @capdevon in #2419
- Add InstanceNode test using PBRLighting by @yaRnMcDonuts in #2437
- jme3-examples: TestAmbient - test code optimization by @capdevon in #2429
- jme3-examples: TestOgg - added additional parameter tests by @capdevon in #2425
- jme3-examples: add TestDeviceDisconnect class by @capdevon in #2433
- com.jme3.audio.Environment: javadoc by @capdevon in #2428
- LwjglCanvas: typo in getPrintContextInitInfo() method by @capdevon in #2434
- Update DebugValuesMode documentation in PBRLighting.j3md by @yaRnMcDonuts in #2427
- jme3-examples: TestWav - test code optimization by @capdevon in #2430
- jme3-examples: TestDoppler - test code optimization by @capdevon in #2431
- jme3-examples: add TestAudioDirectional class by @capdevon in #2432
- DefaultParticleInfluencer: incorrect cloning of variables by @capdevon in #2407
- EmitterShape: javadoc improvements by @capdevon in #2420
- ALAudioRenderer: code improvements by @capdevon in #2423
- #2442 Automate test TestInstanceNodeWithPbr by @richardTingle in #2443
- com.jme3.audio.LowPassFilter lacks the required no-argument constructor for jME deserialization by @capdevon in #2441
- FastMath: new utility methods by @capdevon in #2450
- Add makeGeometry() method to WireSphere for consistency with WireBox by @capdevon in #2458
- CameraEvent: javadoc by @capdevon in #2448
- PBR Fixes: Apply band factor to spherical harmonic coefficients in accelerated baker light and prevent fireflies artifacts by @riccardobl in #2439
- Update PBR Screenshot Tests by @yaRnMcDonuts in #2462
- New audio filters: HighPassFilter and BandPassFilter by @capdevon in #2444
Full Changelog: v3.8.1-stable...v3.9.0-alpha1