PixelLightAPI  .
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes
PLEngine::SNMLookController Class Reference

Scene node rotation input controller modifier class without 3D restriction. More...

#include <SNMLookController.h>

Inheritance diagram for PLEngine::SNMLookController:
Inheritance graph
[legend]

List of all members.

Public Types

enum  EFlags { UseRotationKey = 1<<2 }
 Scene node modifier flags (PLScene::SceneNodeModifier flags extension) More...

Public Member Functions

virtual PL_API
PLInput::Controller
GetInputController () const override
 Get input controller.

Protected Member Functions

virtual PL_API void InformedOnInit () override
 Informed on scene node modifier initialization.
virtual PL_API void OnActivate (bool bActivate) override
 Called when the scene node modifier has been activated or deactivated.
virtual PL_API void OnUpdate ()
 Called when the scene node modifier needs to be updated.

Protected Attributes

LookControllerm_pController

Detailed Description

Scene node rotation input controller modifier class without 3D restriction.

Note:
  • Primary intended for rapid prototyping
  • Unrestricted 3D rotation via rotation quaternion
  • Combine this modifier with for example "PLScene::SNMRotationFixRoll" to restrict the rotation or directly use the specialized "PLEngine::SNMEgoLookController"-modifier

Member Enumeration Documentation

Scene node modifier flags (PLScene::SceneNodeModifier flags extension)

Enumerator:
UseRotationKey 

If this flag is set, it's required to keep the rotation key pressed in order to rotate

Reimplemented from PLScene::SceneNodeModifier.


Member Function Documentation

virtual PL_API PLInput::Controller* PLEngine::SNMLookController::GetInputController ( ) const [override, virtual]

Get input controller.

Returns:
Input controller (can be a null pointer)
Note:
  • The default implementation is empty
  • Derived scene node modifiers may add a string attribute called "InputSemantic" to tell the world about the purpose of the input controller (for example controlling a free camera)

Reimplemented from PLScene::SceneNodeModifier.

virtual PL_API void PLEngine::SNMLookController::InformedOnInit ( ) [override, protected, virtual]

Informed on scene node modifier initialization.

Note:
  • The default implementation is empty

Reimplemented from PLScene::SceneNodeModifier.

virtual PL_API void PLEngine::SNMLookController::OnActivate ( bool  bActivate) [override, protected, virtual]

Called when the scene node modifier has been activated or deactivated.

Parameters:
[in]bActivate'true' if the scene node modifier is now active, else 'false'
Note:
  • The scene node "Inactive"-flag as well as the "Frozen"-flag are taken into account
  • 'bActivate' will be 'true' if the scene node modifier AND the owner scene node AND it's parent scene container (recursive!) are active
  • 'bActivate' will be 'false' if the scene node modifier OR the owner scene node OR it's parent scene container (recursive!) is inactive
  • The default implementation is empty

Reimplemented from PLScene::SceneNodeModifier.

Reimplemented in PLEngine::SNMEgoLookController.

virtual PL_API void PLEngine::SNMLookController::OnUpdate ( ) [protected, virtual]

Called when the scene node modifier needs to be updated.

Reimplemented in PLEngine::SNMEgoLookController.


Member Data Documentation

Look input controller instance, always valid!


The documentation for this class was generated from the following file:


PixelLight PixelLight 0.9.10-R1
Copyright (C) 2002-2011 by The PixelLight Team
Last modified Fri Dec 23 2011 15:51:17
The content of this PixelLight document is published under the
Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported