PGR Copakond OpenGL Engine - Bowling
Loading...
Searching...
No Matches
copakond::InputController Class Reference

Handles player movement, camera perspective switching, and object interaction logic. More...

#include <inputController.h>

Inheritance diagram for copakond::InputController:
copakond::Controller

Public Member Functions

 InputController (Camera *cam, Input *input)
void setPlayer (RigidBody *p)
void setLevelEditor (LevelEditor *lev)
LevelEditorgetLevelEditor ()
void update (float deltaTime) override
int raycast (int x, int y)
 Performs stencil buffer reading at cursor position to find object ID.
void setCameraSpline (Spline *spline)
 Attaches the active camera to a spline for cinematic movement.
void onKeyboardEvent (unsigned char key, int x, int y, bool isDown) override
void onMouseButtonEvent (int button, int state, int x, int y) override
void onMenuEvent (int option) override
Public Member Functions inherited from copakond::Controller
 Controller ()=default
virtual ~Controller ()=default
virtual void onMouseMoveEvent (int x, int y)

Public Attributes

float baseSpeed = 1.5f
float shiftMultiplier = 1.75f
float mouseDragCoeff = 0.05f

Detailed Description

Handles player movement, camera perspective switching, and object interaction logic.

Constructor & Destructor Documentation

◆ InputController()

copakond::InputController::InputController ( Camera * cam,
Input * input )
inline

Member Function Documentation

◆ getLevelEditor()

LevelEditor * copakond::InputController::getLevelEditor ( )
inline

◆ onKeyboardEvent()

void copakond::InputController::onKeyboardEvent ( unsigned char key,
int x,
int y,
bool isDown )
overridevirtual

Reimplemented from copakond::Controller.

◆ onMenuEvent()

void copakond::InputController::onMenuEvent ( int option)
overridevirtual

Reimplemented from copakond::Controller.

◆ onMouseButtonEvent()

void copakond::InputController::onMouseButtonEvent ( int button,
int state,
int x,
int y )
overridevirtual

Reimplemented from copakond::Controller.

◆ raycast()

int copakond::InputController::raycast ( int x,
int y )

Performs stencil buffer reading at cursor position to find object ID.

Parameters
xScreen X coordinate
yScreen Y coordinate
Returns
The ID of the clicked mesh.

◆ setCameraSpline()

void copakond::InputController::setCameraSpline ( Spline * spline)
inline

Attaches the active camera to a spline for cinematic movement.

◆ setLevelEditor()

void copakond::InputController::setLevelEditor ( LevelEditor * lev)
inline

◆ setPlayer()

void copakond::InputController::setPlayer ( RigidBody * p)
inline

◆ update()

void copakond::InputController::update ( float deltaTime)
overridevirtual

Implements copakond::Controller.

Member Data Documentation

◆ baseSpeed

float copakond::InputController::baseSpeed = 1.5f

◆ mouseDragCoeff

float copakond::InputController::mouseDragCoeff = 0.05f

◆ shiftMultiplier

float copakond::InputController::shiftMultiplier = 1.75f

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