# Class: matautocontrol

Some matcontrolids or matobject properties allow auotmatic value generation, such as tracking node positions. You can use a matautocontrol to do so. It is GCed by Lua, and will survive as long as it is used or referenced by lua.

## Hierarchy

    o-+ renderinterface
      o-+ matautocontrol

## Methods:

### Method overview:

- newmatposproj
- newmatprojector
- newmatrot
- newvec4dir
- newvec4pos
- newvec4posproj
- target
- vector

newmatposproj ([spatialnode/l3dnode])
  returns: (matautocontrol)
  autocontroller that creates matrix for translation of target in screenspace. vector.x is scale factor
newmatprojector ([l3dprojector])
  returns: (matautocontrol)
  autocontroller that creates matrix for translation of target in screenspace.
newmatrot ([spatialnode/l3dnode])
  returns: (matautocontrol)
  autocontroller that creates matrix for rotation towards target from current node (so that 0,0,1 points to target).
newvec4dir ([spatialnode/l3dnode])
  returns: (matautocontrol)
  autocontroller that transfers direction from current to target as vector.
newvec4pos ([spatialnode/l3dnode])
  returns: (matautocontrol)
  autocontroller that transfers target position as vector.
newvec4posproj ([spatialnode/l3dnode])
  returns: (matautocontrol)
  autocontroller that transfers position of target in screenspace as vector.
target (matautocontrol,[spatialnode/l3dnode])
  returns: ([spatialnode/l3dnode])
  returns or sets target to be tracked. After the matautocontrol has been assigned and the target becomes invalid, the matautocontrol is destroyed as well.
vector (matautocontrol,[float x,y,z,w])
  returns: ([float x,y,z,w])
  returns or sets a custom vector that may be used by some controllers.

## Inherited Methods: