# Class: FirstPersonCamera

## LG > THREE > FirstPersonCamera

LG.THREE.FirstPersonCamera

#### new FirstPersonCamera(parameters)

  A remake of mrdoobs Quakecam that behaves the way i need it, including keypresses etc...

  Source:
    ../export/js/FPC.js, line 79

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---

  `parameters`

  Object

  parameters = { fov: <float>, aspect: <float>, near: <float>, far: <float>, target: <THREE.Object3D>, movementSpeed: <float>, lookSpeed: <float>, noFly: <bool>, lookVertical: <bool>, autoForward: <bool>, constrainVertical: <bool>, verticalMin: <float>, verticalMax: <float>, heightSpeed: <bool>, heightCoef: <float>, heightMin: <float>, heightMax: <float>, domElement: <HTMLElement>, }

### Properties

#### Browser

  A reference to the Browser object containing all the logic and references

  Source:
    ../export/js/FPC.js, line 83

### Methods

#### onKeyDown(event)

  Source:
    ../export/js/FPC.js, line 264

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `event` | Object | A keyboard Event

#### onKeyUp(event)

  Source:
    ../export/js/FPC.js, line 319

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `event` | Object | A keyboard Event

#### onMouseDown(event)

  Source:
    ../export/js/FPC.js, line 167

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `event` | Object | A mouse Event

#### onMouseMove(event)

  Source:
    ../export/js/FPC.js, line 240

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `event` | Object | A mouse Event

#### onMouseUp(event)

  Source:
    ../export/js/FPC.js, line 204

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `event` | Object | A mouse Event

#### update()

  Updates the camera coordinates etc

  Source:
    ../export/js/FPC.js, line 370

#### <inner> bind(scope, fn)

  Binds a context to a function

  Source:
    ../export/js/FPC.js, line 480

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `scope` | Object | The Object we want to apply as "this"
  `fn` | Function | the function we want this to be bound to