It is possible to loop streaming sources, as well as play
them again after they finished playing. It is possible to stop()
and then play() a streaming source to start playing from the
beginning. Essentially the lifecycle of a streaming audio
is now completely controlled by the user, in the same fashion
as buffered data.
In addition, AudioNode status updates (when an audio stops playing)
now occur every frame rendered, as opposed to every 50 milliseconds.
* Unified all renderers into common class 'ALAudioRenderer'
* LWJGL and Android now implement the AL / ALC / EFX interfaces to provide a common OpenAL backend for jME
* Added support for OpenAL Soft "Pause Device" extension, which allows the engine to pause the context while running in the background (currently requires OpenAL soft 1.16 and thus is Android only feature)
When rendering a geometry, light filtering is performed against the geometrys' world lights
to avoid rendering lights which will not effect the rendering outcome.
If the light is outside the camera frustum OR the light is outside the model's bounding volume,
then it will not be rendered.
app state. If the app state is attached then it's 'enabled'
state can be toggled with the F6 key.
It displays a continnuously updating bar graph of the application
wide frame timings for 'update' and 'render'... where 'update'
is all of the parts that aren't 'rendering', ie: running
enqueued tasks, updating states, updating controls, etc..
Implementors can provide their own AppProfiler
implementation to collect and/or visualize timing
stats however they want, even at the viewport level
if they choose.
A basic profiler implementation will be following
shortly that does simple update vs render frame
timings.
around some commit issue with RenderManager. Actually
calling of these hooks will follow immediately.
Added hooks for detailed performance profiling.
Implementors can provide their own AppProfiler
implementation to collect and/or visualize timing
stats however they want, even at the viewport level
if they choose.
A basic profiler implementation will be following
shortly that does simple update vs render frame
timings.
originally from Lemur. This provides more convenient
enabled-state management than the normal AbstractAppState
class. In addition, it exposes convenience methods for
getting to other app states, the application instance,
etc..