|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Objectcom.jme.app.AbstractGame
com.jme.app.BaseHeadlessApp
BaseHeadlessApp provides the simplest possible implementation
of a main game loop for headless apps. Logic is updated as quickly as
possible, with no interpolation to account for shifting frame rates.
Rendering occurs "as needed". To make this more interesting, might need
to add a finer control over the timer.
| Field Summary |
| Fields inherited from class com.jme.app.AbstractGame |
ALWAYS_SHOW_PROPS_DIALOG, display, finished, FIRSTRUN_OR_NOCONFIGFILE_SHOW_PROPS_DIALOG, NEVER_SHOW_PROPS_DIALOG, properties |
| Constructor Summary | |
BaseHeadlessApp()
|
|
| Method Summary | |
protected abstract void |
cleanup()
cleanup cleans up any created objects before exiting the
application. |
protected abstract void |
initGame()
initGame creates and initializes all game data required
for startup. |
protected abstract void |
initSystem()
initSystem creates all the necessary system components
for the client application. |
protected void |
quit()
Quits the program abruptly using System.exit. |
protected abstract void |
reinit()
reinit rebuilds the subsystems. |
protected abstract void |
render(float interpolation)
render displays the game information to the OpenGL context. |
void |
start()
The simplest main game loop possible: render and update as fast as possible. |
protected abstract void |
update(float interpolation)
update updates the game state. |
| Methods inherited from class com.jme.app.AbstractGame |
assertDisplayCreated, finish, getAttributes, getVersion, setDialogBehaviour, setDialogBehaviour, setDialogBehaviour |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
public BaseHeadlessApp()
| Method Detail |
public final void start()
start in class AbstractGameprotected void quit()
System.exit.
quit in class AbstractGameAbstractGame.quit()protected abstract void update(float interpolation)
AbstractGameupdate updates the game state. Physics, AI, networking, score
checking and like should be completed in this method. How often and when
this method is called depends on the main loop implementation.
update in class AbstractGameinterpolation - unused in this implementationAbstractGame.update(float interpolation)protected abstract void render(float interpolation)
AbstractGamerender displays the game information to the OpenGL context.
Nothing altering the game state should be run during a render. How often
and when this method is called depends on the main loop implementation.
render in class AbstractGameinterpolation - unused in this implementationAbstractGame.render(float interpolation)protected abstract void initSystem()
AbstractGameinitSystem creates all the necessary system components
for the client application. It is is called once after start
is called. The display must be initialized within this method.
initSystem in class AbstractGameAbstractGame.initSystem()protected abstract void initGame()
AbstractGameinitGame creates and initializes all game data required
for startup. It is suggested that caching of frequently used resources
is done within this method. It is called once after initSystem
has completed.
initGame in class AbstractGameAbstractGame.initGame()protected abstract void reinit()
AbstractGamereinit rebuilds the subsystems. It may be called at any time
by the client application.
reinit in class AbstractGameAbstractGame.reinit()protected abstract void cleanup()
AbstractGamecleanup cleans up any created objects before exiting the
application. It is called once after finish is called.
cleanup in class AbstractGameAbstractGame.cleanup()
|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||