In the absence of useful release notes for 3.1, perhaps it's time for us to pool our experience. What changes have you found necessary when porting projects from jME3.0 to jME 3.1?
Here's my list so far:
Libraries: the libraries you need depend on your platform and the features you use. For my projects, I find I need ten libraries in 3.1 (jme3-core, -bullet, -bullet-native, -blender, -desktop, -effects, -jogg, -lwjgl, -plugins, and -terrain) where in 3.0 I used three (jme3, jme3-libraries, and -libraries-blender). Omission of some libraries results in a crash, in other cases, you may just get a warning.
Interpolation methods: in 3.0 the Vector2f, Vector3f, Vector4f, and ColorRGBA classes defined "interpolate()" methods. These were renamed to "interpolateLocal()" in 3.1.
Importing models from Blender3D: if the model contains polygons with >3 sides, the import usually generates warnings from "Face.triangulate()". These can be avoided by triangulating in Blender3D prior to import.
Bone animations default to hardware skinning in 3.1, whereas in 3.0 they defaulted to CPU skinning. If this doesn't work for your app, override this using SkeletonControl.setHardwareSkinningPreferred(false)
Filter post-processors default to R11G11B10 texture format in 3.1, whereas in 3.0 they defaulted to RGBA8. If your filters need an alpha channel, override this using FilterPostProcessor.setFrameBufferFormat()
NiftyGUI upreved from 1.3.3 to 1.4.1, which required:
(a) in XML definitions changing
(b) taking greater care not to refer to non-existent elements or redefine styles or apply styles
to elements not yet bound to any screen -- 1.4.1 is a lot fussier than 1.3.3
(c) specify text or width for all labels -- default width changed (to 0?) for labels with no text specified
I'm also seeing different physics behaviors, which I am still trying to pin down.
Does anyone else have 3.0 -> 3.1 porting tips to share?