#include "mesh.h"#include "debug.h"#include "log.h"#include <cmath>#include <iostream>#include <IAnimatedMesh.h>#include <SAnimatedMesh.h>#include <IAnimatedMeshSceneNode.h>#include "S3DVertex.h"#include "SMesh.h"#include "SMeshBuffer.h"
Include dependency graph for mesh.cpp:Functions | |
| static void | applyShadeFactor (video::SColor &color, float factor) |
| void | applyFacesShading (video::SColor &color, const v3f normal) |
| scene::IAnimatedMesh * | createCubeMesh (v3f scale) |
| void | scaleMesh (scene::IMesh *mesh, v3f scale) |
| void | translateMesh (scene::IMesh *mesh, v3f vec) |
| void | setMeshBufferColor (scene::IMeshBuffer *buf, const video::SColor color) |
| void | setMeshColor (scene::IMesh *mesh, const video::SColor color) |
| template<typename F > | |
| static void | applyToMesh (scene::IMesh *mesh, const F &fn) |
| void | colorizeMeshBuffer (scene::IMeshBuffer *buf, const video::SColor *buffercolor) |
| void | setMeshColorByNormalXYZ (scene::IMesh *mesh, const video::SColor &colorX, const video::SColor &colorY, const video::SColor &colorZ) |
| void | setMeshColorByNormal (scene::IMesh *mesh, const v3f &normal, const video::SColor &color) |
| template<float v3f::* U, float v3f::* V> | |
| static void | rotateMesh (scene::IMesh *mesh, float degrees) |
| void | rotateMeshXYby (scene::IMesh *mesh, f64 degrees) |
| void | rotateMeshXZby (scene::IMesh *mesh, f64 degrees) |
| void | rotateMeshYZby (scene::IMesh *mesh, f64 degrees) |
| void | rotateMeshBy6dFacedir (scene::IMesh *mesh, u8 facedir) |
| void | recalculateBoundingBox (scene::IMesh *src_mesh) |
| bool | checkMeshNormals (scene::IMesh *mesh) |
| scene::IMeshBuffer * | cloneMeshBuffer (scene::IMeshBuffer *mesh_buffer) |
| scene::SMesh * | cloneMesh (scene::IMesh *src_mesh) |
| scene::IMesh * | convertNodeboxesToMesh (const std::vector< aabb3f > &boxes, const f32 *uv_coords, float expand) |
| void | setMaterialFilters (video::SMaterialLayer &tex, bool bilinear, bool trilinear, bool anisotropic) |
| void applyFacesShading | ( | video::SColor & | color, |
| const v3f | normal ) |
Applies shading to a color based on the surface's normal vector.
References applyShadeFactor().
Referenced by MapblockMeshGenerator::blendLightColor(), colorizeMeshBuffer(), MapblockMeshGenerator::drawAutoLightedCuboid(), MapblockMeshGenerator::drawMeshNode(), MapblockMeshGenerator::drawQuad(), and MapblockMeshGenerator::drawSolidNode().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlinestatic |
|
static |
Referenced by rotateMesh(), setMeshColorByNormal(), and setMeshColorByNormalXYZ().
Here is the caller graph for this function:| bool checkMeshNormals | ( | scene::IMesh * | mesh | ) |
| scene::SMesh * cloneMesh | ( | scene::IMesh * | src_mesh | ) |
References cloneMeshBuffer().
Referenced by MapblockMeshGenerator::drawMeshNode(), getExtrudedMesh(), and WieldMeshSceneNode::setExtruded().
Here is the call graph for this function:
Here is the caller graph for this function:| scene::IMeshBuffer * cloneMeshBuffer | ( | scene::IMeshBuffer * | mesh_buffer | ) |
References sanity_check.
Referenced by cloneMesh(), getExtrudedMesh(), and WieldMeshSceneNode::setExtruded().
Here is the caller graph for this function:| void colorizeMeshBuffer | ( | scene::IMeshBuffer * | buf, |
| const video::SColor * | buffercolor ) |
Overwrites the color of a mesh buffer. The color is darkened based on the normal vector of the vertices.
References applyFacesShading().
Referenced by drawItemStack().
Here is the call graph for this function:
Here is the caller graph for this function:| scene::IMesh * convertNodeboxesToMesh | ( | const std::vector< aabb3f > & | boxes, |
| const f32 * | uv_coords, | ||
| float | expand ) |
References BS.
Referenced by Hud::updateSelectionMesh().
Here is the caller graph for this function:| scene::IAnimatedMesh * createCubeMesh | ( | v3f | scale | ) |
References scaleMesh().
Referenced by ExtrusionMeshCache::ExtrusionMeshCache(), and GenericCAO::addToScene().
Here is the call graph for this function:
Here is the caller graph for this function:| void recalculateBoundingBox | ( | scene::IMesh * | src_mesh | ) |
|
static |
References applyToMesh().
Referenced by rotateMeshXYby(), rotateMeshXZby(), and rotateMeshYZby().
Here is the call graph for this function:
Here is the caller graph for this function:| void rotateMeshBy6dFacedir | ( | scene::IMesh * | mesh, |
| u8 | facedir ) |
References rotateMeshXYby(), rotateMeshXZby(), and rotateMeshYZby().
Referenced by MapblockMeshGenerator::drawMeshNode().
Here is the call graph for this function:
Here is the caller graph for this function:| void rotateMeshXYby | ( | scene::IMesh * | mesh, |
| f64 | degrees ) |
References rotateMesh().
Referenced by rotateMeshBy6dFacedir().
Here is the call graph for this function:
Here is the caller graph for this function:| void rotateMeshXZby | ( | scene::IMesh * | mesh, |
| f64 | degrees ) |
References rotateMesh().
Referenced by MapblockMeshGenerator::drawMeshNode(), getItemMesh(), and rotateMeshBy6dFacedir().
Here is the call graph for this function:
Here is the caller graph for this function:| void rotateMeshYZby | ( | scene::IMesh * | mesh, |
| f64 | degrees ) |
References rotateMesh().
Referenced by getItemMesh(), and rotateMeshBy6dFacedir().
Here is the call graph for this function:
Here is the caller graph for this function:| void scaleMesh | ( | scene::IMesh * | mesh, |
| v3f | scale ) |
Referenced by createCubeMesh(), createExtrusionMesh(), getExtrudedMesh(), and getItemMesh().
Here is the caller graph for this function:| void setMaterialFilters | ( | video::SMaterialLayer & | tex, |
| bool | bilinear, | ||
| bool | trilinear, | ||
| bool | anisotropic ) |
Referenced by ClientMap::renderMap(), WieldMeshSceneNode::setExtruded(), WieldMeshSceneNode::setItem(), and GenericCAO::updateTextures().
Here is the caller graph for this function:| void setMeshBufferColor | ( | scene::IMeshBuffer * | buf, |
| const video::SColor | color ) |
Sets a constant color for all vertices in the mesh buffer.
Referenced by drawItemStack(), WieldMeshSceneNode::setColor(), and setMeshColor().
Here is the caller graph for this function:| void setMeshColor | ( | scene::IMesh * | mesh, |
| const video::SColor | color ) |
References setMeshBufferColor().
Referenced by GenericCAO::addToScene(), Hud::drawSelectionMesh(), and GenericCAO::updateTextures().
Here is the call graph for this function:
Here is the caller graph for this function:| void setMeshColorByNormal | ( | scene::IMesh * | mesh, |
| const v3f & | normal, | ||
| const video::SColor & | color ) |
References applyToMesh().
Referenced by Hud::drawSelectionMesh().
Here is the call graph for this function:
Here is the caller graph for this function:| void setMeshColorByNormalXYZ | ( | scene::IMesh * | mesh, |
| const video::SColor & | colorX, | ||
| const video::SColor & | colorY, | ||
| const video::SColor & | colorZ ) |
| void translateMesh | ( | scene::IMesh * | mesh, |
| v3f | vec ) |