Releases: jMonkeyEngine/jmonkeyengine
jMonkeyEngine 3.4.0-beta2
A non-production release for development and testing, which will hopefully lead to a "stable" release.
Noteworthy changes relative to 3.4.0-beta1:
- Bugfix:
NullPointerException
inGLRenderer.clearVertexAttribs()
(PR #1527)
jMonkeyEngine 3.4.0-beta1
A non-production release for development and testing, which will hopefully lead to a "stable" release.
Noteworthy changes relative to 3.3.2-stable:
-
Upgrade considerations (a.k.a. potential breaking changes):
- Gamma correction is enabled by default. In apps that default the setting (don't explicitly enable/disable it), scenes may appear brighter or darker than expected. (discussion, 6ade1a0)
- Vsync is enabled by default. In apps that default the setting (don't explicitly enable/disable it), the frame rate and CPU/GPU usage may be lower than expected. (discussion, f34e660)
- Maven artifacts aren't available from JCenter. Obtain them from the Maven Central Repository instead. (issue #1468, discussion)
- The "jme3-bullet", "jme3-bullet-native", and "jme-bullet-native-android" libraries (physics using native Bullet) were removed from the Engine. For 3-D physics, use "jme3-jbullet" or Minie. (PR #1474)
- The "jme3-blender" library (Blender importer) was removed from the Engine. To import 3-D models from Blender, use glTF as an intermediate format. (discussion, 221acaa)
- Setters that had previously been deprecated to no-ops were removed. (PR #1510)
- Utility classes that previously could be instantiated were made non-instantiable. (420b959, 1031e03, 145cc1b)
- Protected the no-arg constructors for
Camera
(issue #1461, PR #1464) andInstancedNode
(6402aad). - Added range checks to
IndexBuffer.put()
methods. (issue #1427) - The "jme3-jogl" library (JOGL backend) was removed from the Engine. If you must use JOGL instead of LWJGL, contact JogAmp. (discussion, PRs #1339 and #1368)
- The "jme3tools.navigation" package was removed from the "jme3-desktop" library. If you need this package, it's available from the "jMonkeyEngine-Contributions" project. (issue #1430, PR #1450)
-
New features:
- material definitions for physically-based rendering (PBR) of terrain (PR #1478)
- map keys for non-US keyboard layouts when using LWJGL v3 (issue #942)
- de-saturation for materials based on "Unshaded.j3md" (PR #1449)
- embed a JME application in a custom UI design on Android devices (PR #1494)
- extensions to
JoystickCompatibilityMappings
(PR #1483) - flesh out the new animation system:
- more getters/setters for
Action
(PR #1489) andAnimComposer
(PR #1376) - a factory class to generate animations programmatically (issue #1453, PR #1507)
- incorporate animations into cinematic cutscenes (PR #1508)
- more methods to create and manipulate armature masks (issue #1499, PR #1504)
- capability to remove morph targets from a
Mesh
(PR #1378)
- more getters/setters for
- enhance the glTF importer:
- LWJGL v3 support for Linux-on-ARM and 32-bit Windows (discussion, 6711986)
- more ways to look up appstates by ID (a79be13)
LightControl
support for spotlights (PR #1466)- combine
GlowColor
andGlowMap
in a singleMaterial
(PR #1444) - add
fromRGBA255()
and chainable setters to theColorRGBA
class (a057a6d, 37f1e7f) - serialize
final
fields across a network (PR #1505) - more getters/setters for
Camera
(PR #1492),EnvironmentCamera
(issue #1447, PR #1481), andRenderer
(PR #1482) - pack ambient-occlusion (AO) data into the metallic roughness map of a PBR material (PR #1403)
- handle named groups when importing 3-D models in OBJ format (PR #1369)
- a unified mechanism to manage the render targets of a
FrameBuffer
(PR #1401) - depth-only copy of a
FrameBuffer
(PR #1400) - performance profiling of
render()
andpostRender()
methods (PR #1485)
-
Bugs addressed:
- no sound on Android devices (issue #1239, PR #1475)
- inaccurate frame rate when using LWJGL v3 (issue #1455)
- OGRE importer doesn't set the initial pose (issue #1395)
- cloning a
Joint
(issue #1469, PR #1470) - logic error in
Transform.interpolateTransforms()
(issue #1394) - crashes while compiling shaders (PRs #1456 and #1458)
- crash while importing from glTF (PR #1442)
- crash with
NegativeArraySizeException
(PR #1377) - assertion failure in
TouchTrigger.touchHash()
(PR #1448) - wrong center location for a spherical
LightProbe
(PR #1440) - animation uses wrong easing function (PR #1397)
- incorrect import of UTF-8 data (issue #1436, PR #1437)
- unable to locate OpenAL library (issue #1383, PR #1432)
- multiple issues involving iOS devices (PR #1473)
- multiple issues involving instanced geometries (PRs #1457 and #1467)
- gamepad split into 2 input devices (PR #1454)
- SSAO interferes with transparent unshaded materials (discussion, PR #1512)
- FXAA filter disables transparency (discussion, PR #1517)
- can't generate mipmaps for cubemap faces (issue #1222, PR #1409)
- bounding-sphere merge yields
NaN
(issue #1459, PR #1465) - LOD causes terrain patches to disappear (issue #1382, PR #1418)
- crash while de-serializing a
WireFrustum
(issue #1462) - crash in
LogicalOggStreamImpl
(issue #1244, PR #1480) - crash while cloning a
TerrainPatch
(issue #1391) - incomplete serialization of
TerrainQuad
(PR #1476) - inaccurate de-serialization of
DistanceLodCalculator
(issue #1381, PR #1385) checkSetParam()
warning while creating sky (issue #1414, PR #1438)
-
General improvements:
-
New deprecations:
jMonkeyEngine 3.4.0-alpha7
A non-production release, for development and testing only, not intended to be used in any product. Largely untested, without complete/reliable documentation, and without SDK support. Vital features may be missing. The feature-set, API, and serialization format might change drastically before the next release, if there is one.
jMonkeyEngine 3.4.0-alpha6
A non-production release, for development and testing only, not intended to be used in any product. Largely untested, without complete/reliable documentation, and without SDK support. Vital features may be missing. The feature-set, API, and serialization format might change drastically before the next release, if there is one.
jMonkeyEngine 3.4.0-alpha4
A non-production release, for development and testing only, not intended to be used in any product. Largely untested, without complete/reliable documentation, and without SDK support. Vital features may be missing. The feature-set, API, and serialization format might change drastically before the next release, if there is one.
jMonkeyEngine 3.4.0-alpha3
A non-production release, for development and testing only, not intended to be used in any product. Largely untested, without complete/reliable documentation, and without SDK support. Vital features may be missing. The feature-set, API, and serialization format might change drastically before the next release, if there is one.
jMonkeyEngine 3.4.0-alpha1
A non-production release, for development and testing only, not intended to be used in any product. Largely untested, without complete/reliable documentation, and without SDK support. Vital features may be missing. The feature-set, API, and serialization format might change drastically before the next release, if there is one.
jMonkeyEngine 3.3.2-stable
A production-quality JMonkeyEngine 3.3 patch release with the following changes relative to 3.3.0-stable:
- low-risk bugfixes in the libraries
- Issue 1304, PR 1321, Issue 1340: PBR shader fails to compile
- Issue 1347:
ClassCastException
inTerrainPath.reIndexGeometry()
- PR 1338:
AndroidNativeImageLoader
attempts to open stream 2x - Issue 1341: indirect audio buffer causes OpenAL to crash
- Issue 995: unclosed query in
DetailedProfiler
- Issue 1272: renderer mistakenly believes it is on mobile
- Issue 1319: deadlock if context initialization fails
- PR 1322:
GL_INVALID_ENUM
in debug mode - Issue 1360:
ArmatureDebugAppState
causesOpenGLException
- improvements to tests and examples
- improvements to javadoc and code formatting
NOTE
This release supersedes any JMonkeyEngine release named "3.3.1-stable". Release snafus necessitated a gap in the official release numbering. We apologize for the inconvenience.
jMonkeyEngine 3.3.0-stable
This is the stable release of v3.3.0
See the full attached changelog for all of the details of changes between 3.2.4 and 3.3.0.
jMonkeyEngine 3.3.0-beta2
A non-production release for development and testing. This is the second feature-freeze "beta" leading up to an official release.
Changes since beta1:
commit + 1e7e12ee6983ae65619c3f93551b9a3c4b871565
Fix for resizing the window (issue 1191) (#1308)
* Listen for framebuffer size callbacks and set the resolution from that
* Also check the window size on the framebuffer size callback
commit + f0e09b2a9e9edf0d859993fe1c2a8a376dc0c31d
main.yml: add Gradle-wrapper validation to several jobs
commit + 1198908555f1c730afb00d0e58e90bacf78699d5
Lwjgl3 restart input handle (#1268)
* Reinit inputs on context restart
* Added test issue from issue #1013
* Verify that the inputs are already initialized
commit + fecd018fae78dede2e6744c1ebf4eb96d1a61f18
BufferUtils: resolve issue #1288 (rewrite isDirect()) (#1299)
commit + b102eabb564da37c2d2530f494b112294201d700
Fixes issue #1286
commit + 836455826bc61254d10428f9bbce391b65d996fe
Fix openal-soft dead link
commit + 3c93e50d99924c00fc6058cb6b97ffaff1e54511
Update link for stb_image.h
commit + 78779ffe0ad37f93e0799a6c70f690cb2a48dee7
Removed extra PostShadow Technique from PBRLighting.j3md (#1273)
commit + 9002d088e71c19d51257ccfb8e827582b8500089
Issue 801 (#1269)
* Test case for issue #801
* Reset the context with the initial values
commit + 753c3cc1739f98fa93890d02791fe58a865739ba
PreShadow & PostShadow Support for PBRLighting.j3md (#1265)
* Update PBRLighting.j3md
* Create PreShadowPBR.frag
* Create PostShadowPBR.frag
commit + 55a36abe9d2a257c9a1df46eed1e23cce2ad59da
Fixes #1261 - Clone the Terrain Picker, so that loading a terrain from file still works (after cloning, the picker would have the wrong terrain quad instance)
commit + 17fbedd5fe73c3a341905b855e772953c8557fbe
Fixes Bullet-Native Artifacts not containing natives when not building from cpp source and not using the build target.
commit + 2e30b24438c2b968720483e5aadfcba80358efa7
Fix #1236 non-lvalue cannot be out parameter