GlistEngine
Loading...
Searching...
No Matches
gSkinnedMesh Class Reference

#include <gSkinnedMesh.h>

Inheritance diagram for gSkinnedMesh:
Collaboration diagram for gSkinnedMesh:

Public Member Functions

 gSkinnedMesh ()
 
 ~gSkinnedMesh () override
 
void draw () override
 
void resizeAnimation (int verticesNum)
 
void resetAnimation ()
 
void setVertexPos (int vertexNo, const glm::vec3 &pos)
 
void setVertexNorm (int vertexNo, const glm::vec3 &norm)
 
const glm::vec3 & getVertexPos (int vertexNo) const
 
const glm::vec3 & getVertexNorm (int vertexNo) const
 
void clearAnimation ()
 
void resizeVertexAnimationData (int animationNum, int frameNum, int verticesNum, bool isOnVram)
 
void resetVertexAnimationData (int animationNo, int frameNo)
 
void setVertexPosData (int animationNo, int frameNo, int vertexNo, const glm::vec3 &newWeight)
 
void setVertexNormData (int animationNo, int frameNo, int vertexNo, const glm::vec3 &newWeight)
 
const glm::vec3 & getVertexPosData (int animationNo, int frameNo, int vertexNo) const
 
const glm::vec3 & getVertexNormData (int animationNo, int frameNo, int vertexNo) const
 
void setVerticesData (int animationNo, int frameNo, const std::vector< gVertex > &vertices, const std::vector< gIndex > &indices)
 
void setVertexAnimated (bool isVertexAnimated)
 
void setVertexAnimationStoredOnVram (bool isVertexAnimationStoredOnVram)
 
void setFrameNo (int frameNo)
 
int getFrameNo () const
 
const std::vector< glm::vec3 > & getAnimatedPos () const
 
const std::vector< glm::vec3 > & getAnimatedNorm () const
 
- Public Member Functions inherited from gMorphingMesh
 gMorphingMesh ()
 
 ~gMorphingMesh () override
 
void drawVboFrames ()
 
int addTargetMesh (gMesh *targetMesh)
 
void setBaseMesh (gMesh *baseMesh)
 
void setCurrentTargetMeshId (int targetMeshId)
 
void setCurrentFrameId (int frameId)
 
void setFrameCount (int targetMeshId, int frameCount)
 
void setSpeed (int speed)
 
void setTargetPosition (int targetId, int positionId, glm::vec3 newPosition)
 
void setTargetNormal (int targetId, int normalId, glm::vec3 newNormal)
 
void setMorphingAnimated (bool isMorphingAnimated)
 
void setMorphingAnimationStoredOnVram (bool isMorphingAnimationStoredOnVram)
 
void resetTargetData (int targetId)
 
void nextFrameId ()
 
int getCurrentTargetMeshId () const
 
int getCurrentFrameId () const
 
int getFrameCount (int targetMeshId) const
 
int getFrameCount () const
 
int getTargetMeshCount () const
 
int getSpeed () const
 
const glm::vec3 & getTargetPosition (int targetId, int positionId) const
 
const glm::vec3 & getTargetNormal (int targetId, int normalId) const
 
void interpolate (bool forceInterpolation=true)
 
- Public Member Functions inherited from gMesh
 gMesh ()
 
 gMesh (const std::vector< gVertex > &vertices, const std::vector< gIndex > &indices, const std::vector< gTexture * > &textures)
 
 gMesh (std::shared_ptr< std::vector< gVertex > > vertices, std::shared_ptr< std::vector< gIndex > > indices, std::vector< gTexture * > textures)
 
 gMesh (const gMesh &)
 
 ~gMesh () override
 
void setVertices (const std::vector< gVertex > &vertices, const std::vector< gIndex > &indices)
 
void setVertices (const std::vector< gVertex > &vertices)
 
void setVertices (std::shared_ptr< std::vector< gVertex > > vertices)
 
void setVertices (std::shared_ptr< std::vector< gVertex > > vertices, std::shared_ptr< std::vector< gIndex > > indices)
 
void setTextures (const std::vector< gTexture * > &textures)
 
void setTextures (const std::unordered_map< gTexture::TextureType, gTexture * > &textures)
 
void setTexture (gTexture *texture)
 
gTexturegetTexture (gTexture::TextureType type)
 
std::vector< gVertex > & getVertices ()
 
std::vector< gIndex > & getIndices ()
 
std::shared_ptr< std::vector< gVertex > > getVerticesPtr ()
 
std::shared_ptr< std::vector< gIndex > > getIndicesPtr ()
 
int getVerticesNum () const
 
int getIndicesNum () const
 
const gBoundingBoxgetBoundingBox ()
 
gVbogetVbo ()
 
void clear ()
 
void setName (const std::string &name)
 
const std::string & getName () const
 
void setDrawMode (int drawMode)
 
int getDrawMode () const
 
void setMaterial (gMaterial *material)
 
gMaterialgetMaterial ()
 
const gBoundingBoxgetInitialBoundingBox () const
 
bool intersectsTriangles (gRay *ray)
 
float distanceTriangles (gRay *ray)
 
void recalculateBoundingBox ()
 
void setAllVertexColor (const glm::vec3 &color)
 
void fillMissingVertexColors (const glm::vec3 &defColor=glm::vec3(1.0f))
 
void applyVertexGradient ()
 
- Public Member Functions inherited from gNode
 gNode ()
 
virtual ~gNode ()
 
void move (float dx, float dy, float dz)
 
void move (const glm::vec3 &dv)
 
void rotate (const glm::quat &q)
 
void rotate (float radians, float ax, float ay, float az)
 
void rotateDeg (float degrees, float ax, float ay, float az)
 
void rotateAround (float radians, const glm::vec3 &axis, const glm::vec3 &point)
 
void rotateAroundDeg (float degrees, const glm::vec3 &axis, const glm::vec3 &point)
 
void scale (float sx, float sy, float sz)
 
void scale (float s)
 
void setPosition (float px, float py, float pz)
 
void setPosition (const glm::vec3 &pv)
 
void setOrientation (const glm::quat &o)
 
void setOrientation (const glm::vec3 &angles)
 
void setScale (const glm::vec3 &s)
 
void setScale (float sx, float sy, float sz)
 
void setScale (float s)
 
void truck (float distance)
 
void boom (float distance)
 
void dolly (float distance)
 
void tilt (float radians)
 
void tiltDeg (float degrees)
 
void pan (float radians)
 
void panDeg (float degrees)
 
void roll (float radians)
 
void rollDeg (float degrees)
 
float getPosX () const
 
float getPosY () const
 
float getPosZ () const
 
const glm::vec3 & getPosition () const
 
const glm::quat & getOrientation () const
 
const glm::vec3 & getScale () const
 
glm::vec3 getScalarDirectionX () const
 
glm::vec3 getScalarDirectionY () const
 
glm::vec3 getScalarDirectionZ () const
 
void setTransformationMatrix (const glm::mat4 &transformationMatrix)
 
const glm::mat4 & getTransformationMatrix () const
 
int getId () const
 
void setParent (gNode *parent)
 
gNodegetParent () const
 
void removeParent ()
 
void addChild (gNode *child)
 
void removeChild (gNode *child)
 
void removeChild (int gObjectId)
 
void setEnabled (bool isEnabled)
 
bool isEnabled () const
 
void pushMatrix () const
 
void popMatrix () const
 
- Public Member Functions inherited from gRenderObject
 gRenderObject ()
 
int getScreenWidth ()
 
int getScreenHeight ()
 
void pushMatrix ()
 
void popMatrix ()
 
- Public Member Functions inherited from gObject
 gObject ()
 
void logi (std::string message)
 
void logd (std::string message)
 
void logw (std::string message)
 
void loge (std::string message)
 
void logi (std::string tag, std::string message)
 
void logd (std::string tag, std::string message)
 
void logw (std::string tag, std::string message)
 
void loge (std::string tag, std::string message)
 

Additional Inherited Members

- Static Public Member Functions inherited from gRenderObject
static void setScreenSize (int screenWidth, int screenHeight)
 
static void setUnitScreenSize (int unitWidth, int unitHeight)
 
static void setScreenScaling (int screenScaling)
 
static void enableShadowMapping ()
 
static void disableShadowMapping ()
 
static bool isShadowMappingEnabled ()
 
static gRenderergetRenderer ()
 
static void destroyRenderer ()
 
static void createRenderer ()
 
- Static Public Member Functions inherited from gObject
static std::string gGetAppDir ()
 
static std::string gGetAssetsDir ()
 
static void gSetAssetsDir (std::string assetsDir)
 
static std::string gGetFilesDir ()
 
static std::string gGetImagesDir ()
 
static std::string gGetFontsDir ()
 
static std::string gGetModelsDir ()
 
static std::string gGetTexturesDir ()
 
static std::string gGetShadersDir ()
 
static std::string gGetSoundsDir ()
 
static std::string gGetDatabasesDir ()
 
static std::string gGetVideosDir ()
 
static void setCurrentResolution (int scalingNo, int currentResolutionNo)
 
- Static Public Attributes inherited from gMesh
static const int DRAWMODE_POINTS = GL_POINTS
 
static const int DRAWMODE_LINES = GL_LINES
 
static const int DRAWMODE_LINELOOP = GL_LINE_LOOP
 
static const int DRAWMODE_LINESTRIP = GL_LINE_STRIP
 
static const int DRAWMODE_TRIANGLES = GL_TRIANGLES
 
static const int DRAWMODE_TRIANGLESTRIP = GL_TRIANGLE_STRIP
 
static const int DRAWMODE_TRIANGLEFAN = GL_TRIANGLE_FAN
 
- Static Public Attributes inherited from gObject
static const int LOGLEVEL_SILENT
 
static const int LOGLEVEL_DEBUG
 
static const int LOGLEVEL_INFO
 
static const int LOGLEVEL_WARNING
 
static const int LOGLEVEL_ERROR
 
- Protected Member Functions inherited from gMesh
void processTransformationMatrix () override
 
void drawStart ()
 
void drawVbo ()
 
void drawEnd ()
 
- Protected Attributes inherited from gMesh
std::unique_ptr< gVbovbo
 
std::shared_ptr< std::vector< gVertex > > vertices
 
bool isprojection2d
 
- Protected Attributes inherited from gNode
gNodeparent
 
std::deque< gNode * > children
 
glm::mat4 localtransformationmatrix
 
bool isenabled
 
glm::vec3 position
 
glm::quat orientation
 
glm::vec3 scalevec
 
glm::vec3 prevposition
 
glm::quat prevorientation
 
glm::vec3 prevscalevec
 
- Static Protected Attributes inherited from gRenderObject
static bool isshadowmappingenabled
 
- Static Protected Attributes inherited from gObject
static int renderpassnum
 
static int renderpassno
 
static int releasescaling
 
static int releaseresolution
 

Constructor & Destructor Documentation

◆ gSkinnedMesh()

gSkinnedMesh::gSkinnedMesh ( )

◆ ~gSkinnedMesh()

gSkinnedMesh::~gSkinnedMesh ( )
override

Member Function Documentation

◆ clearAnimation()

void gSkinnedMesh::clearAnimation ( )

◆ draw()

void gSkinnedMesh::draw ( )
overridevirtual

Reimplemented from gMorphingMesh.

◆ getAnimatedNorm()

const std::vector< glm::vec3 > & gSkinnedMesh::getAnimatedNorm ( ) const

◆ getAnimatedPos()

const std::vector< glm::vec3 > & gSkinnedMesh::getAnimatedPos ( ) const

◆ getFrameNo()

int gSkinnedMesh::getFrameNo ( ) const

◆ getVertexNorm()

const glm::vec3 & gSkinnedMesh::getVertexNorm ( int  vertexNo) const

◆ getVertexNormData()

const glm::vec3 & gSkinnedMesh::getVertexNormData ( int  animationNo,
int  frameNo,
int  vertexNo 
) const

◆ getVertexPos()

const glm::vec3 & gSkinnedMesh::getVertexPos ( int  vertexNo) const

◆ getVertexPosData()

const glm::vec3 & gSkinnedMesh::getVertexPosData ( int  animationNo,
int  frameNo,
int  vertexNo 
) const

◆ resetAnimation()

void gSkinnedMesh::resetAnimation ( )

◆ resetVertexAnimationData()

void gSkinnedMesh::resetVertexAnimationData ( int  animationNo,
int  frameNo 
)

◆ resizeAnimation()

void gSkinnedMesh::resizeAnimation ( int  verticesNum)

◆ resizeVertexAnimationData()

void gSkinnedMesh::resizeVertexAnimationData ( int  animationNum,
int  frameNum,
int  verticesNum,
bool  isOnVram 
)

◆ setFrameNo()

void gSkinnedMesh::setFrameNo ( int  frameNo)

◆ setVertexAnimated()

void gSkinnedMesh::setVertexAnimated ( bool  isVertexAnimated)

◆ setVertexAnimationStoredOnVram()

void gSkinnedMesh::setVertexAnimationStoredOnVram ( bool  isVertexAnimationStoredOnVram)

◆ setVertexNorm()

void gSkinnedMesh::setVertexNorm ( int  vertexNo,
const glm::vec3 &  norm 
)

◆ setVertexNormData()

void gSkinnedMesh::setVertexNormData ( int  animationNo,
int  frameNo,
int  vertexNo,
const glm::vec3 &  newWeight 
)

◆ setVertexPos()

void gSkinnedMesh::setVertexPos ( int  vertexNo,
const glm::vec3 &  pos 
)

◆ setVertexPosData()

void gSkinnedMesh::setVertexPosData ( int  animationNo,
int  frameNo,
int  vertexNo,
const glm::vec3 &  newWeight 
)

◆ setVerticesData()

void gSkinnedMesh::setVerticesData ( int  animationNo,
int  frameNo,
const std::vector< gVertex > &  vertices,
const std::vector< gIndex > &  indices 
)

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