Main Site Feature List

In reference to some issues pointed out in this thread - I’ve compiled a list of features to display on the main website.

Please help me compile the list to be as complete as possible - and correct me if anything seems wrong. Any help is much appreciated!

Supported Platforms

  • Windows
  • Linux
  • Mac OSX
  • Raspberry Pi 3 (OpenGL ES 2.0)
  • Raspberry Pi 4 (OpenGL ES 3.2)
  • Android

Supported Model Formats

  • GLTF
  • OBJ

Audio

  • Support for WAV, MP3 and OGG file formats.
  • Buffered and Streaming support.
  • Global, directional and positional sounds.

Input

  • Mouse and Keyboard
  • Touchscreen
  • Joystick/Joypad/Wheel

SceneGraph

  • Batching
  • Instancing
  • 2D and 3D scene support
  • Level of Detail
  • Light Culling
  • Single Pass Lighting

Animation

  • Tween API with out of the box support for spatial, bone and morph animations
  • Stock Tweens availble:
    • Sequence tween: a tween that plays tweens in sequence.
    • Parallel tween: a tween that plays tweens in parallel.
    • Delay tween : a tween that just waits…
    • Stretch tween: a tween that wraps another tween and change its duration.
    • Camera tween: moves the camera…
    • CallMethod: calling a method on an object …
  • Animation Blending
  • Animation interpolation (interpolors for rotation, position, scale and time)
  • Hardware Skinning

Graphics

  • OpenGL support up to OpenGL 4.5
  • OpenGL ES support up to 3.0
  • LWJGL2 and 3
  • Post Processing
  • Stock Post Processors
    • Water
    • Screen Space Ambient Occlusion
      • Supports Approximate Normals (50% faster)
    • Bloom
    • Cartoon Edge
    • Color Overlay
    • Cross-Hatch
    • Depth Of Field
    • Fast Approximate Anti Aliasing
    • Fog
    • Light Scattering
    • Posterization
    • Radial Blur
    • ToneMap
  • Unshaded Materials
  • Phong Lighting Materials
  • PBR Materials
    • Sphere and OrientedBox Probe areas
    • Light Probe blending (up to 3 light probes)
    • Supports both Roughness/Metallic & Roughness/SpecularGloss workflow
  • Vertex, Fragment and Geometry shader support
  • Texture Atlas support
  • Particles

Language

  • Support for Java 1.8+
  • Use Kotlin, Groovy or any combination all in one project.

Physics

  • Bullet Physics
  • Minie Physics - A high-powered improved and up-to-date binding around Bullet with “soft body” support.

Networking

  • Networking API supporting UDP/TCP either with low-level Messaging or high-level RMI.
  • SimEthereal - A high performance library for real-time networked object synching

GUI

  • Lemur - a fast and efficient Jme-Native 2D and 3D GUI Toolkit.
  • JME-JFX-11 - A bridge to create a 2D GUI in JME using JavaFX 11.

Entity System

  • Zay-ES - A high-performance entity-component-system

Profiling

  • DetailedProfiler - Displays timing information for various areas of your game to determine bottlenecks
6 Likes

Off the top of my head

SceneGraph

  • LOD

Supported Formats (works flawlessly)

  • GLTF
  • OBJ

Animation

  • Tween API with out of the box support for spatial, bone and morph animations

  • Stock Tweens availble:

    • Sequence tween: a tween that plays tweens in sequence.
    • Parallel tween: a tween that plays tweens in parallel.
    • Delay tween : a tween that just waits…
    • Stretch tween: a tween that wraps another tween and change its duration.
    • Camera tween: moves the camera…
    • CallMethod: calling a method on an object …
  • Animation blending

  • Animation interpolation (interpolors for rotation, position, scale and time)

Networking

  • Networking API supporting UDP/TCP either with low-level Messaging or high-level RMI.

Graphics

  • OpenGL ES 3.0
  • LWJGL 2 and 3

And in case of popular extensions:

GUI

  • Lemur

Physics

  • Minie

ES

  • Zay-ES
3 Likes

This should probably have a note that Minie is a high-powered binding around Bullet - that’ll look the most impressive to someone who’s not familiar with it, as Bullet & PhysX are the industry standard in physics engines.

4 Likes

Better to use the term Hardware Skinning under animation

1 Like

Maybe mention that there are also plenty of helpful demos and Hello— tutorials available in order to help new people get started using these features.

2 Likes

I should probably put that in our “getting started” page.

1 Like

Yeah, and probably a note on Minie “soft body” supporting as well.

4 Likes

I’ve updated the main post - starting to look pretty impressive :slight_smile:

2 Likes

Note, I just updated my post, added “CallMethod” in Stock Tweens section

1 Like

I think this one is also very well deserved to be included under
Networking

  • SimEthereal : A high performance library for real-time networked object synching.
2 Likes

Yeah. I agree. I also forgot Lemur. Are we still actively promoting nifty, or should I just quietly not mention it…?

2 Likes

Yes, not mention it, please… :wink:

2 Likes

Note, JME 3.3 is 1.8+ actually.
Gltf loader in JME 3.3 uses Base64 decoder added in Java 8

2 Likes

I did not know that. This list is more useful than I thought it would be.

2 Likes

Scene Graph

  • Light Culling
  • Single Pass Lighting

a brief explanation I copied that from nehon’s article for anyone interested

It’s based on the observation that rendering a light that is not in the camera frustum or rendering an object for a light that doesn’t affect it is a waste.

jME now has a way to sort that out. On each frame, each light is checked once against the camera frustum and not rendered when it’s outside. Also each geometry is checked against each light in the frustum and only renderer if the geometry is in the area of effect of the light.

SINGLE PASS

The idea behind single pass is to send a list of light information to the shader and to compute all the lights contribution while rendering the geometry once.

1 Like

Oh yeah. And we have light batching. Good one.

Wow, since when did JME become such a powerful engine! ( :grin: Just kidding, it has been amazing for a long time!)

This is a very impressive list, even I am learning things about what features are available.

Some more on PBR

2 Likes

I’m updating them as they are posted and adding the ones I remember as I go. @Ali_RS you are pretty well versed on what the engine can do!

1 Like

Zay-ES - really awesome entity system

1 Like