| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- #pragma once
- #include "BsPrerequisites.h"
- #include "BsComponent.h"
- #include "BsMath.h"
- #include "BsVirtualInput.h"
- namespace BansheeEngine
- {
- class SceneCameraController : public Component
- {
- public:
- virtual void update();
- static const String MOVE_FORWARD_BTN;
- static const String MOVE_LEFT_BTN;
- static const String MOVE_RIGHT_BTN;
- static const String MOVE_BACKWARD_BTN;
- static const String FAST_MOVE_BTN;
- static const String ROTATE_BTN;
- static const String HORIZONTAL_AXIS;
- static const String VERTICAL_AXIS;
- private:
- float mCurrentSpeed;
- Degree mPitch;
- Degree mYaw;
- bool mLastButtonState;
- VirtualButton mMoveForward;
- VirtualButton mMoveLeft;
- VirtualButton mMoveRight;
- VirtualButton mMoveBackward;
- VirtualButton mFastMove;
- VirtualButton mRotate;
- VirtualAxis mHorizontal;
- VirtualAxis mVertical;
- static const float START_SPEED;
- static const float TOP_SPEED;
- static const float ACCELERATION;
- static const float FAST_MODE_MULTIPLIER;
- static const float ROTATION_SPEED; // Degrees/second
- /************************************************************************/
- /* COMPONENT OVERRIDES */
- /************************************************************************/
- protected:
- friend class SceneObject;
- SceneCameraController(const HSceneObject& parent);
- };
- }
|