Without too much fanfare, the JME 3.1 alpha 3 release has been uploaded to the various places, including jcenter. If you reference version="[3.1,)" in your gradle or maven projects then you should get an update automatically when they recheck.
Highlights:
- SDK was moved to its own project
- Some cloning cleanup in prep for replacing spatial and control cloning in alpha 4
- added a cloning util package
- J3MExporter
- various other bug fixes
Alpha 4 is scheduled for two weeks and may have some breaking changes. After that if necessary there will be an alpha 5 two weeks after that to resolve any alpha 4 bugs⊠then we hope for beta.
So if you arenât already, please start using and testing these releases as itâs the only way the bugs will get fixed before they break your games.
Complete change log from alpha 2 to alpha 3:
commit + 0b487ee9f3fe96b6c4725945344b1c679c9eae31
Author: Paul Speed <pspeed42@users.noreply.github.com>
Date: Sun Mar 13 04:44:54 2016 -0400
Moved the file writing in screen shot app state to its own
method... 1) because it's a little cleaner, 2) because it means
subclasses can hook it if desired.
M jme3-core/src/main/java/com/jme3/app/state/ScreenshotAppState.java
commit + f391b9c3aaa73a2a4a69903d401981b0a21e5298
Author: Nehon <remy.bouquet@gmail.com>
Date: Sat Mar 12 19:07:19 2016 +0100
Made AbstractControl Implement Cloneable
M jme3-core/src/main/java/com/jme3/scene/control/AbstractControl.java
commit + e0ffff3af00145185e62d226cbb265c3867ef5e2
Author: Nehon <remy.bouquet@gmail.com>
Date: Fri Mar 11 21:27:46 2016 +0100
Better test for material loading, also ensured that the J3MExporter writes UTF-8 files
M jme3-plugins/src/main/java/com/jme3/material/plugin/export/material/J3MExporter.java
M jme3-plugins/src/test/java/com/jme3/material/plugin/TestMaterialWrite.java
D jme3-plugins/src/test/resources/testMat.j3m
commit + 5c1d442b006b461eaf4d014d37ae1b222208a19a
Author: NemesisMate <nemesismatedev@gmail.com>
Date: Fri Mar 11 18:11:33 2016 +0000
Missing getHeight present on jbullet
Well, I found that I'm using this on my code with jbullet but is not present on bullet version so here it is.
M jme3-bullet/src/main/java/com/jme3/bullet/collision/shapes/ConeCollisionShape.java
commit + 3245c9ac891b43e89f43edb42820a4d229a52227
Author: Nehon <remy.bouquet@gmail.com>
Date: Fri Mar 11 18:58:53 2016 +0100
Silence test...anyway who does tests?
M jme3-plugins/src/test/java/com/jme3/material/plugin/TestMaterialWrite.java
commit + d1e707feb0a60c8962ae7cc8423961685d16aeae
Author: Nehon <remy.bouquet@gmail.com>
Date: Fri Mar 11 18:36:53 2016 +0100
Testing something so the Test can properly Test the Test I want it to Test
M jme3-plugins/src/test/java/com/jme3/material/plugin/TestMaterialWrite.java
commit + bcea9bfe5148c15a976bdfa4ca3d2ad384a141ed
Author: Nehon <remy.bouquet@gmail.com>
Date: Fri Mar 11 18:16:48 2016 +0100
Better regex testing in TestMaterialWrite
M jme3-plugins/src/test/java/com/jme3/material/plugin/TestMaterialWrite.java
commit + 5e6d2e8ca382aff236df5f0e5cbff7fa0eb2355d
Author: Nehon <remy.bouquet@gmail.com>
Date: Fri Mar 11 17:44:00 2016 +0100
J3MExporter : allows to save Materials to j3m files.
Added proper test in jme3-plugins
M jme3-plugins/build.gradle
A jme3-plugins/src/main/java/com/jme3/material/plugin/export/material/J3MExporter.java
A jme3-plugins/src/main/java/com/jme3/material/plugin/export/material/J3MOutputCapsule.java
A jme3-plugins/src/main/java/com/jme3/material/plugin/export/material/J3MRenderStateOutputCapsule.java
A jme3-plugins/src/main/java/com/jme3/material/plugin/export/material/J3MRootOutputCapsule.java
A jme3-plugins/src/test/java/com/jme3/material/plugin/TestMaterialWrite.java
A jme3-plugins/src/test/resources/testMat.j3m
commit + cb56fd88ebfb944b5ac76260995175e148cd2f21
Author: Nehon <remy.bouquet@gmail.com>
Date: Wed Mar 9 22:31:46 2016 +0100
For some reason the J3MLoader never loads the material name. Not that it's really important, but since we have the name field... let's read it...
M jme3-core/src/plugins/java/com/jme3/material/plugins/J3MLoader.java
commit + f83c7006f0e45ceb32b512789f3040207a2a9e7a
Author: Paul Speed <pspeed42@users.noreply.github.com>
Date: Fri Mar 11 05:46:31 2016 -0500
Removed some cloneForSpatial() methods that weren't doing anything
that the super class would do.
Adding @Override to cloneForSpatial() methods in jme3-core controls
and CloneableTracks.
M jme3-core/src/main/java/com/jme3/animation/AnimControl.java
M jme3-core/src/main/java/com/jme3/animation/AudioTrack.java
M jme3-core/src/main/java/com/jme3/animation/EffectTrack.java
M jme3-core/src/main/java/com/jme3/animation/SkeletonControl.java
M jme3-core/src/main/java/com/jme3/app/StatsView.java
M jme3-core/src/main/java/com/jme3/cinematic/events/MotionEvent.java
M jme3-core/src/main/java/com/jme3/effect/ParticleEmitter.java
M jme3-core/src/main/java/com/jme3/input/ChaseCamera.java
M jme3-core/src/main/java/com/jme3/scene/control/BillboardControl.java
M jme3-core/src/main/java/com/jme3/scene/control/CameraControl.java
M jme3-core/src/main/java/com/jme3/scene/control/LightControl.java
M jme3-core/src/main/java/com/jme3/scene/control/UpdateControl.java
commit + eb2e2f4cdc91a765bac2d1dab69143ad27023b6e
Author: Paul Speed <pspeed42@users.noreply.github.com>
Date: Fri Mar 11 05:45:18 2016 -0500
Adding @Override to cloneForSpatial() methods in examples.
M jme3-examples/src/main/java/jme3test/bullet/PhysicsHoverControl.java
M jme3-examples/src/main/java/jme3test/light/TestPssmShadow.java
commit + 2b8101166848bbe78f098029eacf72256e58920d
Author: Paul Speed <pspeed42@users.noreply.github.com>
Date: Fri Mar 11 05:38:32 2016 -0500
Adding @Override to cloneForSpatial() methods in terrain lib.
M jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/NormalRecalcControl.java
M jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/TerrainLodControl.java
commit + 20f62cbd6485be27334125bf932806e42bb94609
Author: Paul Speed <pspeed42@users.noreply.github.com>
Date: Fri Mar 11 05:37:07 2016 -0500
Adding @Override to cloneForSpatial() methods in bullet lib.
M jme3-bullet/src/common/java/com/jme3/bullet/control/BetterCharacterControl.java
M jme3-bullet/src/common/java/com/jme3/bullet/control/CharacterControl.java
M jme3-bullet/src/common/java/com/jme3/bullet/control/GhostControl.java
M jme3-bullet/src/common/java/com/jme3/bullet/control/KinematicRagdollControl.java
M jme3-bullet/src/common/java/com/jme3/bullet/control/RigidBodyControl.java
M jme3-bullet/src/common/java/com/jme3/bullet/control/VehicleControl.java
commit + 10947e8b5096f6d7e2bf0e327faa43b275adeb34
Author: Paul Speed <pspeed42@users.noreply.github.com>
Date: Thu Mar 10 04:25:43 2016 -0500
Modified the JmeCloneable's clone() method to be jmeClone() so that
implementing objects will still be able to keep a regular public
clone() method that may do their own selective deep cloning. This
allows explicit demarcation between the normal 'user' facing clone()
and the two step cloning process used by Cloner.
Specifically, this will let Spatial continue to have a clone() method
that operates as it does today... with its new guts essentially calling
a properly configured Cloner.
M jme3-core/src/main/java/com/jme3/util/clone/Cloner.java
M jme3-core/src/main/java/com/jme3/util/clone/JmeCloneable.java
M jme3-examples/src/main/java/jme3test/app/TestCloner.java
commit + 68425480cb63688be6d289c99a4d953414eb5bfd
Author: Paul Speed <pspeed42@users.noreply.github.com>
Date: Thu Mar 10 03:45:11 2016 -0500
Removed a bit of commented out dead code.
M jme3-core/src/main/java/com/jme3/util/clone/Cloner.java
commit + 8bc234804637ccedc4d051dfe380e42eba329e95
Author: Paul Speed <pspeed42@users.noreply.github.com>
Date: Wed Mar 9 00:59:51 2016 -0500
Removed some commented out code I forgot to remove.
M jme3-examples/src/main/java/jme3test/app/TestCloner.java
commit + 90af571f76a63aa2afb80a2d436174886102fa97
Author: Paul Speed <pspeed42@users.noreply.github.com>
Date: Wed Mar 9 00:59:21 2016 -0500
Added a test/demo showing how to use the cloner with various examples
of the kinds of classes it can work with.
A jme3-examples/src/main/java/jme3test/app/TestCloner.java
commit + 70154f1b1d4c4309ad3e6e73a4b115eef3cc0464
Author: Paul Speed <pspeed42@users.noreply.github.com>
Date: Wed Mar 9 00:54:01 2016 -0500
Added a simple deep cloning that can replace all of our odd post-fixup
piece-meal stuff with proper full-object-graph shared reference cloning.
A jme3-core/src/main/java/com/jme3/util/clone/CloneFunction.java
A jme3-core/src/main/java/com/jme3/util/clone/Cloner.java
A jme3-core/src/main/java/com/jme3/util/clone/IdentityCloneFunction.java
A jme3-core/src/main/java/com/jme3/util/clone/JmeCloneable.java
A jme3-core/src/main/java/com/jme3/util/clone/ListCloneFunction.java
commit + 35de6bd6d3aa4ec14b6f203de8ede3b9e057c9a1
Author: Paul Speed <pspeed42@users.noreply.github.com>
Date: Wed Mar 9 00:52:39 2016 -0500
Upping source compatibility to 1.7. Even 1.7 is end-of-lifed by now
but at least it's newer than the ancient 1.6.
M common.gradle
commit + 838978ed156fa9787b10837ff70aad4e627e53c6
Author: Nehon <remy.bouquet@gmail.com>
Date: Tue Mar 8 20:59:52 2016 +0100
Null check for the renderFrameBuffer of the fpp when cleaning up the fpp. It may be null if multisampling is enabled.
M jme3-core/src/main/java/com/jme3/post/FilterPostProcessor.java
commit + bdc3ff8434289ba785e92be6e3022e167c1e9385
Author: Paul Speed <pspeed42@users.noreply.github.com>
Date: Mon Mar 7 17:33:31 2016 -0500
Fixed a bug in server initialization related to serializer registration.
Lowered the logging level so that these both spew all of the lowest
level network logging. Useful for seeing what's going on and finding
issues.
M jme3-examples/src/main/java/jme3test/network/TestChatClient.java
M jme3-examples/src/main/java/jme3test/network/TestChatServer.java
commit + 870f84c6c6ba2670dcda82144e771121b5354376
Author: MeFisto94 <MeFisto94@users.noreply.github.com>
Date: Mon Mar 7 23:28:25 2016 +0100
Fixes #442 - Add 64bit detection for the armv7 platform
M jme3-core/src/main/java/com/jme3/system/JmeSystemDelegate.java
commit + 57bcb3967f2c2cfae543b0f10b4ceca072731b38
Author: Paul Speed <pspeed42@users.noreply.github.com>
Date: Mon Mar 7 16:35:15 2016 -0500
Fix the test chooser to not instantiate the class if it's just
going to call it's static main method anyway. Also, call the static
main method on the class instead of an instantiated object.
M jme3-examples/src/main/java/jme3test/TestChooser.java
commit + 9f9cb824cd5d8b77e614b7dad3913bcb3cd534d3
Author: Daniel Johansson <daniel.johansson@wireweb.co.uk>
Date: Mon Mar 7 16:38:43 2016 +0000
Fixed an issue with J3MLoader thinking certain texture path patterns with new texture options still looked like old style and hence ignoring new options and getting the texture path wrong.
M jme3-core/src/plugins/java/com/jme3/material/plugins/J3MLoader.java
M jme3-core/src/test/java/com/jme3/material/plugins/J3MLoaderTest.java
M jme3-core/src/test/resources/texture-parameters-newstyle.j3m
commit + 93ac80d44fc9af5afcac9884543807189fc2b499
Author: Daniel Johansson <daniel.johansson@wireweb.co.uk>
Date: Mon Mar 7 16:33:57 2016 +0000
Fixed an issue with SSAO normal.vert throwing an error when using instancing.
M jme3-effects/src/main/resources/Common/MatDefs/SSAO/normal.vert
commit + f14e6092874a59081b17c263ed45fcdba58c5096
Author: Nehon <remy.bouquet@gmail.com>
Date: Mon Mar 7 00:30:20 2016 +0100
Updated MatParam.getAsString to reflect recent change on j3m texture parameter format
M jme3-core/src/main/java/com/jme3/material/MatParam.java
commit + 763763503b89d3b00b13113ebc3518c422395f63
Author: Daniel Johansson <daniel.johansson@wireweb.co.uk>
Date: Sun Mar 6 20:32:42 2016 +0000
Updated lwjgl dependencies to version 3.0.0b
M jme3-lwjgl3/build.gradle
commit + eea4d54be79ce9e88e52ccb04c0c8c92e6528a59
Author: ReĂÂmy Bouquet <rebouquet@airfrance.fr>
Date: Sat Mar 5 18:04:06 2016 +0100
removed sdks compilation form the engine compilation
M gradle.properties
M settings.gradle
commit + 6ff69d907f039bb5d847b9dd306c065c26cf91fc
Author: ReĂÂmy Bouquet <rebouquet@airfrance.fr>
Date: Sat Mar 5 17:43:05 2016 +0100
Removed SDK from the Engine repo as it's been extracted in its own repo
D sdk
commit + b431d16981980ea8d9dd78e1e03ebe0559eca008
Author: Kirill Vainer <shadowislord@gmail.com>
Date: Fri Mar 4 19:51:18 2016 -0500
Cylinder: fix incorrect axis samples for closed
M jme3-core/src/main/java/com/jme3/scene/shape/Cylinder.java
commit + b746c71441b0b9846ec08bd00c32d4aee68de097
Author: ReĂÂmy Bouquet <rebouquet@airfrance.fr>
Date: Fri Mar 4 14:12:33 2016 +0100
Used the instancing transformation method for the normal pass in SSAO as it was producing a crash when instancing was enabled.
M jme3-effects/src/main/resources/Common/MatDefs/SSAO/normal.vert
commit + ab3ee87b173202738dfe469e50c4162eb76e9d94
Author: MeFisto94 <MeFisto94@users.noreply.github.com>
Date: Fri Mar 4 12:16:49 2016 +0100
WelcomeScreen sometimes didn't appear due to a fault
M sdk/jme3-welcome-screen/src/com/jme3/gde/welcome/WelcomeScreenTopComponent.java
commit + 6c9cd46e11bca85c20a074f12a42661dffb96316
Author: InShadow <tomo.cesnik@gmail.com>
Date: Thu Mar 3 21:57:19 2016 -0800
Corrected spelling mistake.
M jme3-core/src/main/java/com/jme3/scene/BatchNode.java
M jme3-core/src/main/java/com/jme3/scene/Geometry.java
M jme3-core/src/main/java/com/jme3/scene/GeometryGroupNode.java
M jme3-core/src/main/java/com/jme3/scene/instancing/InstancedNode.java
commit + a22f6772e695b22a8320c49f6c130cc416af3bd4
Author: RĂ©my Bouquet <bouquet@dinbs-MacBook-Pro-2.local>
Date: Sat Jul 18 21:49:27 2015 +0200
fixed a NPE in the shader node editor when the navigator panel is collapsed
M sdk/jme3-materialeditor/src/com/jme3/gde/materialdefinition/editor/MatDefEditorlElement.java
commit + 5468a48050d2cac1a31ce0085995d200b538049c
Author: Teencrusher <jfrenaud@123certification.com>
Date: Thu Mar 3 13:23:04 2016 -0500
Removed the modification of the input parameter that lead to a wrong axisSamples member then the cylinder was closed
M jme3-core/src/main/java/com/jme3/scene/shape/Cylinder.java
commit + eada244b343bea8d4a79d49c7892ca0adeb9f54c
Author: Kirill Vainer <shadowislord@gmail.com>
Date: Wed Mar 2 16:36:12 2016 -0500
lwjgl3: re-enable native loading for native bullet
M jme3-lwjgl3/src/main/java/com/jme3/system/lwjgl/LwjglContext.java
M jme3-lwjgl3/src/main/java/com/jme3/system/lwjgl/LwjglWindow.java
commit + f925e3eb81b1c9d6cc4f884e5fdb27c72b6b1457
Author: Alrik <s9228788@mail.zih.tu-dresden.de>
Date: Wed Mar 2 21:44:51 2016 +0100
- revert mistake
M jme3-core/src/main/java/com/jme3/animation/Bone.java
commit + 546850130d6b08084f4836da8f70981b8bd5df03
Author: Alrik <s9228788@mail.zih.tu-dresden.de>
Date: Wed Mar 2 21:43:45 2016 +0100
- make the comment more precise because user control and world inverse /
local bind pose transforms are also copied
M jme3-core/src/main/java/com/jme3/animation/Bone.java
commit + 54d563dde23f41c21f4bcd252357996bbea99470
Author: Alrik <s9228788@mail.zih.tu-dresden.de>
Date: Wed Mar 2 21:32:04 2016 +0100
- remove unnecessary comment
M jme3-core/src/main/java/com/jme3/animation/Bone.java
commit + e541a5a147e0dc8acefee694fce4d7f8a616a5be
Author: Kirill Vainer <shadowislord@gmail.com>
Date: Wed Mar 2 13:49:28 2016 -0500
lwjgl3: start jME3 on main thread (needed for mac)
M jme3-examples/build.gradle
M jme3-lwjgl3/src/main/java/com/jme3/system/lwjgl/LwjglWindow.java
commit + c77905a4a32fd3c8553768f320bd7e92183ba6fd
Author: Kirill Vainer <shadowislord@gmail.com>
Date: Wed Mar 2 13:47:17 2016 -0500
lwjgl3: fix syntax error
M jme3-lwjgl3/src/main/java/com/jme3/system/lwjgl/LwjglWindow.java
commit + 91974a68000ffab22f6fea88004eb7f3c646441a
Author: Kirill Vainer <shadowislord@gmail.com>
Date: Wed Mar 2 13:45:50 2016 -0500
lwjgl3: use lwjgl's native loader
M jme3-lwjgl3/src/main/java/com/jme3/system/lwjgl/LwjglContext.java
commit + 449bc443b3891901fcc23e5024ed8b6ac1efe89d
Author: TehLeo <i.the.leo.i@gmail.com>
Date: Wed Mar 2 16:05:14 2016 +0100
Update BufferUtils.java
Fixes #395
M jme3-core/src/main/java/com/jme3/util/BufferUtils.java
commit + e33e226959ae3f1345a7771d3c46a656398dbf7f
Author: MeFisto94 <MeFisto94@users.noreply.github.com>
Date: Wed Mar 2 14:11:35 2016 +0100
Removed duplicate code and placed it into JmeControl instead
M sdk/jme3-core/src/com/jme3/gde/core/sceneexplorer/nodes/JmeAnimControl.java
M sdk/jme3-core/src/com/jme3/gde/core/sceneexplorer/nodes/JmeCharacterControl.java
A sdk/jme3-core/src/com/jme3/gde/core/sceneexplorer/nodes/JmeControl.java
M sdk/jme3-core/src/com/jme3/gde/core/sceneexplorer/nodes/JmeGenericControl.java
M sdk/jme3-core/src/com/jme3/gde/core/sceneexplorer/nodes/JmeGhostControl.java
M sdk/jme3-core/src/com/jme3/gde/core/sceneexplorer/nodes/JmeRigidBodyControl.java
M sdk/jme3-core/src/com/jme3/gde/core/sceneexplorer/nodes/JmeSkeletonControl.java
M sdk/jme3-core/src/com/jme3/gde/core/sceneexplorer/nodes/JmeTerrainLodControl.java
M sdk/jme3-core/src/com/jme3/gde/core/sceneexplorer/nodes/JmeVehicleControl.java
commit + 2297520cf75aa757503776294074cac2299dc407
Author: MeFisto94 <MeFisto94@users.noreply.github.com>
Date: Tue Mar 1 23:46:06 2016 +0100
Fixed the Issue where removing a Control didn't set the dirty flag (made the Model Savable)
M sdk/jme3-core/src/com/jme3/gde/core/sceneexplorer/nodes/JmeAnimControl.java
M sdk/jme3-core/src/com/jme3/gde/core/sceneexplorer/nodes/JmeCharacterControl.java
M sdk/jme3-core/src/com/jme3/gde/core/sceneexplorer/nodes/JmeGenericControl.java
M sdk/jme3-core/src/com/jme3/gde/core/sceneexplorer/nodes/JmeGhostControl.java
M sdk/jme3-core/src/com/jme3/gde/core/sceneexplorer/nodes/JmeRigidBodyControl.java
M sdk/jme3-core/src/com/jme3/gde/core/sceneexplorer/nodes/JmeSkeletonControl.java
M sdk/jme3-core/src/com/jme3/gde/core/sceneexplorer/nodes/JmeTerrainLodControl.java
M sdk/jme3-core/src/com/jme3/gde/core/sceneexplorer/nodes/JmeVehicleControl.java
commit + 03b351f26c686f2be3cd06aa14ae8cb75bf0d268
Author: Alrik <s9228788@mail.zih.tu-dresden.de>
Date: Tue Mar 1 22:58:43 2016 +0100
- fix Bone constructor doesn't clone the given Bone object parameter
M jme3-core/src/main/java/com/jme3/animation/Bone.java
commit + a3372284e9a44134f1a4c6a77e214f1a4c5f91c6
Author: MeFisto94 <MeFisto94@users.noreply.github.com>
Date: Tue Mar 1 09:48:23 2016 +0100
Be more verbose when the Asset Path is outside of the root.
M jme3-core/src/main/java/com/jme3/asset/AssetKey.java
commit + 01a6a0e8a00acf302a48851d7e92e9018fd406e9
Author: Dokthar <jmaselbas@gmail.com>
Date: Tue Feb 23 13:57:06 2016 +0100
sdk filters : modification of the lookup for JmeFilter
M sdk/jme3-core/src/com/jme3/gde/core/filters/FilterPostProcessorNode.java
commit + bc6ced1ed4cd9124b240d0dc5ce0e7a2859ef0ef
Author: Dokthar <jmaselbas@gmail.com>
Date: Tue Feb 23 13:51:36 2016 +0100
sdk filters : replaced all Jme*Filter by a unique JmeFilter
D sdk/jme3-core/src/com/jme3/gde/core/filters/impl/JmeBloomFilter.java
D sdk/jme3-core/src/com/jme3/gde/core/filters/impl/JmeCartoonEdgeFilter.java
D sdk/jme3-core/src/com/jme3/gde/core/filters/impl/JmeColorOverlayFilter.java
D sdk/jme3-core/src/com/jme3/gde/core/filters/impl/JmeCrossHatchFilter.java
D sdk/jme3-core/src/com/jme3/gde/core/filters/impl/JmeDepthOfFieldFilter.java
D sdk/jme3-core/src/com/jme3/gde/core/filters/impl/JmeFXAAFilter.java
A sdk/jme3-core/src/com/jme3/gde/core/filters/impl/JmeFilter.java
D sdk/jme3-core/src/com/jme3/gde/core/filters/impl/JmeFogFilter.java
D sdk/jme3-core/src/com/jme3/gde/core/filters/impl/JmeLightScatteringFilter.java
D sdk/jme3-core/src/com/jme3/gde/core/filters/impl/JmePosterizationFilter.java
D sdk/jme3-core/src/com/jme3/gde/core/filters/impl/JmeSSAOFilter.java
D sdk/jme3-core/src/com/jme3/gde/core/filters/impl/JmeWaterFilter.java