▼Nterminus | |
CAbstractCommand | Defines the interface that every command has to implement |
CAbstractGraphicsObject | Root of a class hierarchy of objects that contain independen game logic and are visible in the game |
CAbstractPhysicsObject | Graphical scene element with a physics-based aspect, meaning that it can move and collide with other AbstractPhysicsObjects |
CAbstractPlayer | Base class for interacting with a train and a camera |
CAbstractWagon | Common interface for all wagon types and contains common functionality like position calculation &c |
CActionScheduler | Maintains a list of actions, that should be executed later in a specific context |
CAIPlayer | Implements a simple artificial intelligence enemy player |
CBulletWorld | A Wrapper class for a btDiscreteDynamicsWorld |
CCamera | Manages view and projection matrices that define a view of a 3D scene |
CCatmullRomSpline | Implements a spline, that is determined by control points that lie on the spline |
CClientReadyCommand | The ClientReadyCommand signals to the server that the client has successfully created the World and is ready to start the game. It will subsequently unpause the local and remote game |
CDynamicPhysicsObject | A dynamic physics object is a physics object that is mostly passive. It will be affected by forces and its movement will be simulated by Bullet |
CEngineWagon | Wagon type, which primary action increases the trains velocity |
CEventHandler | Receives events (touch, key, mouse, gyroscope, etc.) and triggers actions, taking object states and context into account |
CExplosion | Renders an explosion effect |
CGame | Main entry point. It subclasses QQuickItem and handles all communication between QML and C++ |
CGameEndedCommand | The GameEndedCommand signals that the remote game detected a winning or losing condition. It will display a victory or defeat screen accordingly |
CGeometry | Wraps the vertices data of one drawable object |
CIndexTriple | Used as a temporary geometry data storage, while parsing .obj files in the resourcemanager class |
CIPProvider | A small helper class to determine the local IP address |
CKinematicPhysicsObject | A kinematic physics object is a "scripted" physics object, meaning that it will set its own movement. It will be used in collision detection, but bullet will not simulate its movement |
CLevel | Generator for level data such as terrain geometry and track courses |
CLevelConfiguration | All information necessary to configure a Level instance as well as some convenience methods to convert between model and texture space coordinates |
CLight | Light source with a packed, shader compatible memory layout |
CLightManager | Manages slots that can be filled with Light instances and is able to set those lights as a uniform array on a shader program |
CLocalPlayer | Local player that interacts with the World and their Train. It does not contain any logic; the sole purpose of this class is to distinguish different player types |
CMaterial | Wraps loading uniform data used as material coefficients |
CMathUtil | Helper functions for calculations such as interpolation and trigonometric functions |
CNetworkClient | The NetworkServer implements the NetworkEndpoint interface as the client role of a TCP connection |
CNetworkEndpoint | Common interface that NetworkServer and NetworkClient implement |
CNetworkManager | The NetworkManager implements the basic functionality for the multiplayer mode of this game |
CNetworkServer | The NetworkServer implements the NetworkEndpoint interface as the server role of a TCP connection |
CPauseCommand | The PauseCommand pauses or unpauses the local game due to the remote game being paused |
CPerlinNoise | Implements a two dimensional noise function using multiple selectable gradient vector grids (layers) |
CPolyline | Implements a sequence of line segments and is used to approximate a real spline |
CPrepareNewGameCommand | The PrepareNewGameCommand is sent to the client when a multiplayer session begins to synchronize the game timer, terrain seed and client player position (left or right track) |
CProgram | The program class implements the basic functionality used for binding programs to openGL |
CProjectile | Simulates and renders a projectile. It also handles collisions with Wagons, deals damage and spawns Explosions |
CProjectileFiredCommand | The ProjectileFiredCommand indicates that a projectile has been fired and contains the position as well as the movement vector |
CProjectileHitCommand | The ProjectileHitCommand indicates that a projectile hit a wagon. It contains the wagonIndex as well as the damage dealt |
CRemotePlayer | Player whose actions get transmitted over network. It does not contain any logic; the sole purpose of this class is to distinguish different player types |
CRepairWagon | Wagon type, which primary action increases the health of all still functional weagons by a fix percentage |
CResourceManager | Loads geometry, materials and shader progams during initialization and provides access to those resources |
CSkyBox | Renders an environment map in the form of a cube map on a screen aligned quad in the background |
CSoundManager | Basic music and sound playing functionality. All needed sound effects are stored in the member variable m_sounds. Implemented as a singelton, accessibility for all classes is ensured |
CSyncCommand | The SyncCommand is used to keep shared game state synchronized |
CTerrain | Renders the terrain using patches and a displacement texture. Patches that are too far from the current camera position are culled |
CTimer | Implements a set of pauseable duration counters (subsequently called timers) and mechanisms to adjust them individually or globally |
CTrack | Track that a Train moves on. It is currently not rendered. The course is represented by a Polyline instance |
CTrain | Works as a logical container for all wagons one train consists of |
CVertex | The struct wraps the important vertex data attributes position, texture coordinate and normal vector |
CWeaponWagon | Wagon type, which primary action shoots projectiles in the faced direction |
CWorld | Running game instance and contains all graphical (3D) elements of the scene |