RenderEngine
Loading...
Searching...
No Matches
Object Class Referenceabstract

Object. More...

#include <Object.hpp>

Inheritance diagram for Object:
Group Mesh Triangle

Public Member Functions

 Object ()
 Default constructor.
 
virtual ~Object ()
 Destructor.
 
void setShader (Shader *newshader)
 setShader
 
glm::mat4 getTransform ()
 getTransform
 
void addTransform (glm::mat4 mat)
 addTransform
 
virtual void render (Camera *camera)=0
 render
 
void setTranslate (glm::vec3 translateVec)
 setTranslate
 
void setScale (float scale)
 setScale
 
void bindShaders ()
 bindShaders
 
void unBindShader ()
 unBindShader
 

Protected Attributes

Shadershader
 each object can have a shader
 

Detailed Description

Object.

Basic object base class that has a tranformation

Constructor & Destructor Documentation

◆ Object()

Object::Object ( )

Default constructor.

Setting up default object.

◆ ~Object()

virtual Object::~Object ( )
inlinevirtual

Destructor.

Delete all related ressources.

Member Function Documentation

◆ addTransform()

void Object::addTransform ( glm::mat4  mat)

addTransform

Add a transform matrix (4x4) to this object.

◆ bindShaders()

void Object::bindShaders ( )

bindShaders

Bind shader of this object.

◆ getTransform()

glm::mat4 Object::getTransform ( )

getTransform

Get the transform matrix 4x4 of this object.

◆ render()

virtual void Object::render ( Camera camera)
pure virtual

render

Virtual render method, needs to be defined for each geometry class

Implemented in Group, Mesh, and Triangle.

◆ setScale()

void Object::setScale ( float  scale)

setScale

Set defined scale this object.

◆ setShader()

void Object::setShader ( Shader newshader)

setShader

Set a shader object that will be used during the rendering of this object.

◆ setTranslate()

void Object::setTranslate ( glm::vec3  translateVec)

setTranslate

Set defined translate this object.

◆ unBindShader()

void Object::unBindShader ( )

unBindShader

Unbind shader of this object.

Member Data Documentation

◆ shader

Shader* Object::shader
protected

each object can have a shader


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