Basic 3D Model with a single texture.
More...
#include <V3DModel.h>
|
|
typedef V3DObject | VSUPERCLASS |
| | Used to call parent class functions when they are overrided in class.
|
| |
|
typedef VBase | VSUPERCLASS |
| | Used to call parent class functions when they are overrided in class.
|
| |
|
| | V3DModel (sf::Vector3f position, sf::Vector3f rotation, sf::Vector3f scale) |
| |
| | V3DModel (float posX=0, float posY=0, float posZ=0, float rotX=0, float rotY=0, float rotZ=0, float scaleX=1, float scaleY=1, float scaleZ=1) |
| |
| bool | LoadModelData (const V3DVertexArray &vertexArray, const std::vector< unsigned int > &indexArray=std::vector< unsigned int >()) |
| |
| bool | LoadTexture (const sf::String &filename) |
| |
| bool | LoadTexture (const sf::Texture &tex) |
| |
| virtual void | UpdateShader (V3DShader *shader, V3DCamera *camera) override |
| |
|
virtual void | Destroy () override |
| | Destroys object and any data that must be destroyed.
|
| |
| virtual void | Draw (sf::RenderTarget &RenderTarget) override |
| |
| | V3DObject (sf::Vector3f position, sf::Vector3f rotation, sf::Vector3f scale) |
| |
| | V3DObject (float posX=0, float posY=0, float posZ=0, float rotX=0, float rotY=0, float rotZ=0, float scaleX=1, float scaleY=1, float scaleZ=1) |
| |
| sf::Vector3f | GetMinimum () |
| |
| sf::Vector3f | GetMaximum () |
| |
| virtual void | Reset (sf::Vector3f newPos) |
| |
| virtual void | Reset (float x, float y, float z) |
| |
| virtual void | Hurt (float damage) |
| |
| virtual void | Update (float dt) override |
| |
| virtual void | Kill () |
| |
|
virtual void | Revive () |
| | Revives the object by setting both alive and exists back to true.
|
| |
|
|
V3DMaterial * | Material |
| | Surface Material for Lighting.
|
| |
|
sf::Vector3f | Position |
| | Position Transform.
|
| |
|
sf::Vector3f | Rotation |
| | Rotation Transform.
|
| |
|
sf::Vector3f | Scale |
| | Scale transform.
|
| |
|
sf::Vector3f | Last |
| | Last Position.
|
| |
|
sf::Vector3f | AngleVelocity |
| | Velocity of Rotation.
|
| |
|
sf::Vector3f | AngleAcceleration |
| | Acceleration of Rotation.
|
| |
|
sf::Vector3f | AngleDrag |
| | Drag of Rotation.
|
| |
|
sf::Vector3f | AngleMax |
| | Max Velocity of Rotation.
|
| |
|
bool | Moves = true |
| | If true, position and rotation transforms will be updated.
|
| |
|
sf::Vector3f | Velocity |
| | Velocity of Movement.
|
| |
|
sf::Vector3f | Acceleration |
| | Acceleration of Movement.
|
| |
|
sf::Vector3f | Drag |
| | Drag of Movement.
|
| |
|
sf::Vector3f | MaxVelocity |
| | Max Velocity of Movement.
|
| |
|
float | Health = 100 |
| | Standard health value (object dies if health is <= 0)
|
| |
|
float | Radius |
| | Radius from the centre of the object as a sphere.
|
| |
|
sf::Vector3f | Origin |
| | Centre of the 3D object, useful for collisions.
|
| |
|
bool | active = true |
| | Base can be updated using Update if true.
|
| |
|
bool | visible = true |
| | Base can be rendered using Draw if true.
|
| |
|
bool | alive = true |
| | Helper member that is mainly used filter out behaviours to objects which aren't alive in the scene.
|
| |
|
bool | exists = true |
| | Base can be updated and rendered if true, else it would no longer be treated as being part of the scene.
|
| |
|
VType | type = NONE |
| | Base object type, typically set in the constructor of an inherited object to specify what type it is.
|
| |
|
uint32_t | RefCount = 0 |
| | Counts the amount of times the object is referenced in groups, ensures an object is only destroyed when no longer part of a single group.
|
| |
|
|
static unsigned int | DefaultTexture |
| | A generated 1x1 White texture. If no texture is loaded, then this will be used.
|
| |
|
|
unsigned int | vao |
| | Vertex Array Object ID.
|
| |
|
unsigned int | vertexVBO |
| | Vertex Buffer Object for Vertices.
|
| |
|
unsigned int | indexVBO |
| | Vertex Buffer Object for Indices.
|
| |
|
unsigned int | drawCount |
| | Depending on input, the amount of vertices or indices that are needed to be drawn for this object.
|
| |
|
sf::Texture | texture |
| | Single texture for this model.
|
| |
|
glm::mat4 | transform |
| | Model Matrix.
|
| |
|
sf::Vector3f | minimum |
| | Minimum size of the object bounding box.
|
| |
|
sf::Vector3f | maximum |
| | Maximum size of the object bounding box.
|
| |
Basic 3D Model with a single texture.
◆ V3DModel() [1/2]
| V3DModel::V3DModel |
( |
sf::Vector3f |
position, |
|
|
sf::Vector3f |
rotation, |
|
|
sf::Vector3f |
scale |
|
) |
| |
- Parameters
-
| position | Position of the sprite. |
| rotation | Angle of the object. |
| scale | Scale of the object. |
◆ V3DModel() [2/2]
| V3DModel::V3DModel |
( |
float |
posX = 0, |
|
|
float |
posY = 0, |
|
|
float |
posZ = 0, |
|
|
float |
rotX = 0, |
|
|
float |
rotY = 0, |
|
|
float |
rotZ = 0, |
|
|
float |
scaleX = 1, |
|
|
float |
scaleY = 1, |
|
|
float |
scaleZ = 1 |
|
) |
| |
- Parameters
-
| posX | X position of the object. |
| posY | Y position of the object. |
| posZ | Z position of the object. |
| rotX | X angle of the object. |
| rotY | Y angle of the object. |
| rotZ | Z angle of the object. |
| scaleX | X scale of the object. |
| scaleY | Y scale of the object. |
| scaleZ | Z scale of the object. |
◆ Draw()
| virtual void V3DModel::Draw |
( |
sf::RenderTarget & |
RenderTarget | ) |
|
|
overridevirtual |
Draws 3D object.
- Parameters
-
| RenderTarget | The game's sf::RenderTarget object to render data onto. |
Reimplemented from V3DObject.
◆ LoadModelData()
| bool V3DModel::LoadModelData |
( |
const V3DVertexArray & |
vertexArray, |
|
|
const std::vector< unsigned int > & |
indexArray = std::vector< unsigned int >() |
|
) |
| |
Loads the model from arrays.
- Parameters
-
| vertexArray | The list of vertices to load into the model. |
| indexArray | The list of indices to load for the model. If model only has vertex data then this is ignored for loading and rendering the model. |
◆ LoadTexture() [1/2]
| bool V3DModel::LoadTexture |
( |
const sf::String & |
filename | ) |
|
Loads a texture for the 3D model. If no texture is loaded than the default texture is used.
- Parameters
-
| filename | The file path and name of the texture file. |
◆ LoadTexture() [2/2]
| bool V3DModel::LoadTexture |
( |
const sf::Texture & |
tex | ) |
|
Loads a texture for the 3D model. If no texture is loaded than the default texture is used.
- Parameters
-
| tex | The sf::Texture object that is being used as the texture. |
◆ UpdateShader()
Updates the shader with the current camera and object specific values.
- Parameters
-
| shader | The scene shader. |
| camera | The scene camera. |
Reimplemented from V3DObject.
The documentation for this class was generated from the following file:
- D:/Development/Libs/Vigilante-Game-Framework/VFrame/V3DModel.h