Maven module :un.engine : engine-opengl :
Class : un.engine.opengl.control.LocalController
Extends/Implements : un.engine.opengl.control.NodeTransformController un.api.event.EventListener
Subclasses : -

Local space controller.
This can be used to create first person or plane like controllers.
Node controller responding to Z,Q,S,D and mouse to move node around.
author  Johann Sorel


Variables : -
Functions : LocalController, setEnable, isEnable, getWarpPointer, setWarpPointer, getKeySpeed, setKeySpeed, getMouseSpeed, setMouseSpeed, configureFlyingControls, configureFirstPersonControls, getGestureTasks, getDeltaTime, update, receiveEvent



public void LocalController (EventSource source, GLNode node, Vector up, Vector right)

public void setEnable (boolean enable)

public boolean isEnable ()


Get pointer warp position.
Works ony if event source is a NewtFrame.
On each mouse event the mouse position is reset to this coordinate.
This allow to avoid mouse hitting the frame borders.
return  Tuple can be null
public Tuple getWarpPointer ()

public void setWarpPointer (Tuple autoWarp)


return  keyboard speed, in unit/second
public double getKeySpeed ()

public void setKeySpeed (double keySpeed)


return  mouse move speed, in radian/pixel
public double getMouseSpeed ()

public void setMouseSpeed (double mouseSpeed)


Create a flying control with default controls.
Similar to what would be used for a plane or spaceship game.
return  LocalController
public LocalController configureFlyingControls ()


Create a first person control with default controls.
Similar to what would be used for a first person shooter game.
return  LocalController
public LocalController configureFirstPersonControls ()


Live sequence of GestureTasks.
return  Sequence of GestureTask.
public Sequence getGestureTasks ()


Difference time with previous event.
returndiff  time in seconds
public double getDeltaTime ()

public void update (RenderContext context, GLNode node)

public void receiveEvent (Event event)