RigsofRods
Soft-body Physics Simulation
Data Structures | Public Member Functions | Private Attributes
RoR::FlexMesh Class Reference

#include <FlexMesh.h>

+ Inheritance diagram for RoR::FlexMesh:
+ Collaboration diagram for RoR::FlexMesh:

Data Structures

struct  FlexMeshVertex
 

Public Member Functions

 FlexMesh (Ogre::String const &name, RoR::GfxActor *gfx_actor, NodeNum_t n1, NodeNum_t n2, NodeNum_t nstart, int nrays, Ogre::String const &face_material_name, Ogre::String const &face_material_rg, Ogre::String const &band_material_name, Ogre::String const &band_material_rg, bool rimmed=false, float rimratio=1.f)
 
 ~FlexMesh ()
 
Ogre::Vector3 updateVertices ()
 
bool flexitPrepare ()
 
void flexitCompute ()
 
Ogre::Vector3 flexitFinal ()
 
void setVisible (bool visible)
 
- Public Member Functions inherited from RoR::Flexable
virtual ~Flexable ()
 

Private Attributes

Ogre::Vector3 m_flexit_center
 
RoR::GfxActorm_gfx_actor
 
int m_num_rays
 
bool m_is_rimmed
 
Ogre::MeshPtr m_mesh
 
Ogre::SubMesh * m_submesh_wheelface = nullptr
 
Ogre::SubMesh * m_submesh_tiretread = nullptr
 
Ogre::VertexDeclaration * m_vertex_format
 
Ogre::HardwareVertexBufferSharedPtr m_hw_vbuf
 
std::vector< FlexMeshVertexm_vertices
 
std::vector< NodeNum_tm_vertex_nodes
 
std::vector< uint16_t > m_wheelface_indices
 
std::vector< uint16_t > m_tiretread_indices
 

Detailed Description

Definition at line 44 of file FlexMesh.h.

Constructor & Destructor Documentation

◆ FlexMesh()

FlexMesh::FlexMesh ( Ogre::String const &  name,
RoR::GfxActor gfx_actor,
NodeNum_t  n1,
NodeNum_t  n2,
NodeNum_t  nstart,
int  nrays,
Ogre::String const &  face_material_name,
Ogre::String const &  face_material_rg,
Ogre::String const &  band_material_name,
Ogre::String const &  band_material_rg,
bool  rimmed = false,
float  rimratio = 1.f 
)

Definition at line 33 of file FlexMesh.cpp.

+ Here is the call graph for this function:

◆ ~FlexMesh()

FlexMesh::~FlexMesh ( )

Definition at line 234 of file FlexMesh.cpp.

Member Function Documentation

◆ flexitCompute()

void FlexMesh::flexitCompute ( )
virtual

Implements RoR::Flexable.

Definition at line 293 of file FlexMesh.cpp.

+ Here is the call graph for this function:

◆ flexitFinal()

Vector3 FlexMesh::flexitFinal ( )
virtual

Implements RoR::Flexable.

Definition at line 298 of file FlexMesh.cpp.

◆ flexitPrepare()

bool RoR::FlexMesh::flexitPrepare ( )
inlinevirtual

Implements RoR::Flexable.

Definition at line 68 of file FlexMesh.h.

◆ setVisible()

void RoR::FlexMesh::setVisible ( bool  visible)
inlinevirtual

Implements RoR::Flexable.

Definition at line 72 of file FlexMesh.h.

◆ updateVertices()

Vector3 FlexMesh::updateVertices ( )

Definition at line 243 of file FlexMesh.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Field Documentation

◆ m_flexit_center

Ogre::Vector3 RoR::FlexMesh::m_flexit_center
private

Definition at line 84 of file FlexMesh.h.

◆ m_gfx_actor

RoR::GfxActor* RoR::FlexMesh::m_gfx_actor
private

Definition at line 85 of file FlexMesh.h.

◆ m_hw_vbuf

Ogre::HardwareVertexBufferSharedPtr RoR::FlexMesh::m_hw_vbuf
private

Definition at line 94 of file FlexMesh.h.

◆ m_is_rimmed

bool RoR::FlexMesh::m_is_rimmed
private

Definition at line 87 of file FlexMesh.h.

◆ m_mesh

Ogre::MeshPtr RoR::FlexMesh::m_mesh
private

Definition at line 90 of file FlexMesh.h.

◆ m_num_rays

int RoR::FlexMesh::m_num_rays
private

Definition at line 86 of file FlexMesh.h.

◆ m_submesh_tiretread

Ogre::SubMesh* RoR::FlexMesh::m_submesh_tiretread = nullptr
private

Definition at line 92 of file FlexMesh.h.

◆ m_submesh_wheelface

Ogre::SubMesh* RoR::FlexMesh::m_submesh_wheelface = nullptr
private

Definition at line 91 of file FlexMesh.h.

◆ m_tiretread_indices

std::vector<uint16_t> RoR::FlexMesh::m_tiretread_indices
private

Definition at line 102 of file FlexMesh.h.

◆ m_vertex_format

Ogre::VertexDeclaration* RoR::FlexMesh::m_vertex_format
private

Definition at line 93 of file FlexMesh.h.

◆ m_vertex_nodes

std::vector<NodeNum_t> RoR::FlexMesh::m_vertex_nodes
private

Definition at line 98 of file FlexMesh.h.

◆ m_vertices

std::vector<FlexMeshVertex> RoR::FlexMesh::m_vertices
private

Definition at line 97 of file FlexMesh.h.

◆ m_wheelface_indices

std::vector<uint16_t> RoR::FlexMesh::m_wheelface_indices
private

Definition at line 101 of file FlexMesh.h.


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