Luanti 5.11.0-dev
 
Loading...
Searching...
No Matches
wieldmesh.cpp File Reference
#include "wieldmesh.h"
#include "settings.h"
#include "shader.h"
#include "inventory.h"
#include "client.h"
#include "itemdef.h"
#include "nodedef.h"
#include "mesh.h"
#include "content_mapblock.h"
#include "mapblock_mesh.h"
#include "client/meshgen/collector.h"
#include "client/tile.h"
#include "client/texturesource.h"
#include "log.h"
#include "util/numeric.h"
#include <map>
#include <IMeshManipulator.h>
#include "client/renderingengine.h"
+ Include dependency graph for wieldmesh.cpp:

Classes

class  ExtrusionMeshCache
 

Macros

#define WIELD_SCALE_FACTOR   30.0f
 
#define WIELD_SCALE_FACTOR_EXTRUDED   40.0f
 
#define MIN_EXTRUSION_MESH_RESOLUTION   16
 
#define MAX_EXTRUSION_MESH_RESOLUTION   512
 

Functions

static scene::IMesh * createExtrusionMesh (int resolution_x, int resolution_y)
 
static scene::SMesh * createGenericNodeMesh (Client *client, MapNode n, std::vector< ItemPartColor > *colors, const ContentFeatures &f)
 
void getItemMesh (Client *client, const ItemStack &item, ItemMesh *result)
 
scene::SMesh * getExtrudedMesh (ITextureSource *tsrc, const std::string &imagename, const std::string &overlay_name)
 

Variables

static ExtrusionMeshCacheg_extrusion_mesh_cache = nullptr
 

Macro Definition Documentation

◆ MAX_EXTRUSION_MESH_RESOLUTION

#define MAX_EXTRUSION_MESH_RESOLUTION   512

◆ MIN_EXTRUSION_MESH_RESOLUTION

#define MIN_EXTRUSION_MESH_RESOLUTION   16

◆ WIELD_SCALE_FACTOR

#define WIELD_SCALE_FACTOR   30.0f

◆ WIELD_SCALE_FACTOR_EXTRUDED

#define WIELD_SCALE_FACTOR_EXTRUDED   40.0f

Function Documentation

◆ createExtrusionMesh()

static scene::IMesh * createExtrusionMesh ( int resolution_x,
int resolution_y )
static

References scaleMesh().

Referenced by ExtrusionMeshCache::ExtrusionMeshCache(), and ExtrusionMeshCache::create().

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

◆ createGenericNodeMesh()

static scene::SMesh * createGenericNodeMesh ( Client * client,
MapNode n,
std::vector< ItemPartColor > * colors,
const ContentFeatures & f )
static

References CPT2_COLORED_WALLMOUNTED, CPT2_WALLMOUNTED, ContentFeatures::drawtype, MeshMakeData::fillSingleNode(), MapblockMeshGenerator::generate(), MapNode::getParam2(), MATERIAL_FLAG_ANIMATION, MAX_TILE_LAYERS, NDT_MESH, NDT_NODEBOX, NDT_SIGNLIKE, NDT_TORCHLIKE, p(), ContentFeatures::param_type_2, MeshCollector::prebuffers, MapNode::setParam1(), MapNode::setParam2(), and FrameSpec::texture.

Referenced by getItemMesh(), and WieldMeshSceneNode::setItem().

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

◆ getExtrudedMesh()

scene::SMesh * getExtrudedMesh ( ITextureSource * tsrc,
const std::string & imagename,
const std::string & overlay_name )

References cloneMesh(), cloneMeshBuffer(), ExtrusionMeshCache::create(), g_extrusion_mesh_cache, ITextureSource::getTexture(), and scaleMesh().

Referenced by getItemMesh().

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

◆ getItemMesh()

Variable Documentation

◆ g_extrusion_mesh_cache