Nirtcpp 2.1.0
Nirtcpp is a high-performance c++ graphics engine.
Loading...
Searching...
No Matches
nirt::scene::IQ3LevelMesh Class Referenceabstract

Interface for a Mesh which can be loaded directly from a Quake3 .bsp-file. More...

#include <nirtcpp/core/engine/IQ3LevelMesh.hpp>

Inheritance diagram for nirt::scene::IQ3LevelMesh:
Inheritance graph
Collaboration diagram for nirt::scene::IQ3LevelMesh:
Collaboration graph

Public Member Functions

virtual const quake3::IShadergetShader (const c8 *filename, bool fileNameIsValid=true)=0
 loads the shader definition from file
 
virtual const quake3::IShadergetShader (u32 index) const =0
 returns a already loaded Shader
 
virtual quake3::tQ3EntityListgetEntityList ()=0
 get's an interface to the entities
 
virtual IMeshgetBrushEntityMesh (s32 num) const =0
 returns the requested brush entity
 
virtual IMeshgetBrushEntityMesh (quake3::IEntity &ent) const =0
 returns the requested brush entity
 
- Public Member Functions inherited from nirt::scene::IAnimatedMesh
virtual u32 getFrameCount () const =0
 Gets the frame count of the animated mesh.
 
virtual f32 getAnimationSpeed () const =0
 Gets the animation speed of the animated mesh.
 
virtual void setAnimationSpeed (f32 fps)=0
 Sets the animation speed of the animated mesh.
 
virtual IMeshgetMesh (s32 frame, s32 detailLevel=255, s32 startFrameLoop=-1, s32 endFrameLoop=-1)=0
 Returns the IMesh interface for a frame.
 
virtual E_ANIMATED_MESH_TYPE getMeshType () const override
 Returns the type of the animated mesh.
 
- Public Member Functions inherited from nirt::scene::IMesh
virtual u32 getMeshBufferCount () const =0
 Get the amount of mesh buffers.
 
virtual IMeshBuffergetMeshBuffer (u32 nr) const =0
 Get pointer to a mesh buffer.
 
virtual IMeshBuffergetMeshBuffer (const video::SMaterial &material) const =0
 Get pointer to a mesh buffer which fits a material.
 
virtual const core::aabbox3d< f32 > & getBoundingBox () const =0
 Get an axis aligned bounding box of the mesh.
 
virtual void setBoundingBox (const core::aabbox3df &box)=0
 Set user-defined axis aligned bounding box.
 
virtual void setMaterialFlag (video::E_MATERIAL_FLAG flag, bool newvalue)=0
 Sets a flag of all contained materials to a new value.
 
virtual void setHardwareMappingHint (E_HARDWARE_MAPPING newMappingHint, E_BUFFER_TYPE buffer=EBT_VERTEX_AND_INDEX)=0
 Set the hardware mapping hint.
 
virtual void setDirty (E_BUFFER_TYPE buffer=EBT_VERTEX_AND_INDEX)=0
 Flag the meshbuffer as changed, reloads hardware buffers.
 
- Public Member Functions inherited from nirt::IReferenceCounted
 IReferenceCounted ()
 Constructor.
 
virtual ~IReferenceCounted ()
 Destructor.
 
void grab () const
 Grabs the object. Increments the reference counter by one.
 
bool drop () const
 Drops the object. Decrements the reference counter by one.
 
s32 getReferenceCount () const
 Get the reference count.
 
const c8getDebugName () const
 Returns the debug name of the object.
 

Additional Inherited Members

- Protected Member Functions inherited from nirt::IReferenceCounted
void setDebugName (const c8 *newName)
 Sets the debug name of the object.
 

Detailed Description

Interface for a Mesh which can be loaded directly from a Quake3 .bsp-file.

The Mesh tries to load all textures of the map.

Member Function Documentation

◆ getBrushEntityMesh()

virtual IMesh * nirt::scene::IQ3LevelMesh::getBrushEntityMesh ( s32  num) const
pure virtual

returns the requested brush entity

Parameters
numThe number from the model key of the entity.

Use this interface if you parse the entities yourself.

◆ getShader()

virtual const quake3::IShader * nirt::scene::IQ3LevelMesh::getShader ( const c8 filename,
bool  fileNameIsValid = true 
)
pure virtual

loads the shader definition from file

Parameters
filenameName of the shaderfile, defaults to /scripts if fileNameIsValid is false.
fileNameIsValidSpecifies whether the filename is valid in the current situation.

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

Nirtcpp    @cppfx.xyz

Esvcpp    esv::print