|
ComputerGraphik TU WIEN
|
Implements the tank functionalities. More...
#include <tank.hpp>
Classes | |
| class | Gun |
| class | Turret |
Public Member Functions | |
| Tank (const std::string &name, Scene *scene=0, Model *model=0, const glm::mat4 &modelMatrix=glm::mat4(1)) | |
| virtual | ~Tank () |
| void | reset () |
| bool | animate (double time) |
| void | update (double deltaT) |
| double | getHP () const |
| void | setHP (double val) |
| bool | getActive () const |
| void | setActive (bool val) |
| glm::mat4 | getShootOrigin () const |
Public Member Functions inherited from SceneObject | |
| SceneObject (std::shared_ptr< SceneObject > &effectParent, const glm::mat4 &modelMatrix=glm::mat4(1)) | |
| SceneObject (const std::string &name, Scene *scene=0, Model *model=0, const glm::mat4 &modelMatrix=glm::mat4(1)) | |
| virtual | ~SceneObject () |
| Model * | getModel () const |
| Shader * | getShader () const |
| glm::mat4 | getModelMatrix () const |
| glm::mat4 | getGlobalModelMatrix () const |
| std::string | getName () const |
| std::shared_ptr< SceneObject > | getParent () const |
| void | setAnimationTime (double time) |
| bool | setAnimation (const Animation &anim) |
| bool | delChild (size_t idx) |
| bool | getChild (size_t idx, std::shared_ptr< SceneObject > &child) const |
| bool | addChild (std::shared_ptr< SceneObject > &child) |
| bool | remEffect (const std::string &name) |
| SceneObject * | getEffect (const std::string &name) const |
| bool | addEffect (const std::string &name, std::unique_ptr< SceneObject > &effect) |
| bool | doNotRender () |
| bool | getIsVolSun () |
| virtual void | draw () const |
| virtual void | setShader (Shader *val) |
Private Attributes | |
| double | hp |
| bool | active |
| double | lastCPU |
| double | lastGPU |
| std::shared_ptr< SceneObject > | gun |
| std::shared_ptr< SceneObject > | turret |
| std::shared_ptr< SceneObject > | trackL |
| std::shared_ptr< SceneObject > | trackR |
| std::shared_ptr< SceneObject > | shootOrigin |
| std::shared_ptr< GameLogic > | gameLogic |
| std::shared_ptr< ParticleSystemCPU > | psCPU |
| std::shared_ptr< ParticleSystemGPU > | psGPU |
Additional Inherited Members | |
Public Types inherited from SceneObject | |
| typedef std::vector< std::pair< double, glm::mat4 > > | Animation |
Protected Attributes inherited from SceneObject | |
| GLuint | vao |
| Scene * | scene |
| Model * | model |
| Shader * | shader |
| glm::mat4 | modelMatrix |
| std::string | name |
| std::weak_ptr< SceneObject > | parent |
| std::vector< std::shared_ptr< SceneObject > > | childs |
| std::map< std::string, std::unique_ptr< SceneObject > > | effectChilds |
| size_t | animIDX |
| Animation | animation |
| bool | norender |
| bool | isVolSun |
Implements the tank functionalities.
The Tank class
| Tank::Tank | ( | const std::string & | name, |
| Scene * | scene = 0, |
||
| Model * | model = 0, |
||
| const glm::mat4 & | modelMatrix = glm::mat4(1) |
||
| ) |
|
virtual |
|
virtual |
Reimplemented from SceneObject.
|
inline |
|
inline |
| glm::mat4 Tank::getShootOrigin | ( | ) | const |
|
virtual |
Reimplemented from SceneObject.
|
inline |
|
inline |
|
virtual |
Reimplemented from SceneObject.
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
1.8.9.1