10#include "SMeshBuffer.h"
37#define MINIMAP_MAX_SX 512
38#define MINIMAP_MAX_SY 512
138 const std::string &texture =
"", u16 scale = 1);
152 video::IImage *heightmap_image);
164 std::unique_ptr<MinimapData>
data;
Definition texturesource.h:36
void enqueueBlock(v3s16 pos, MinimapMapblock *data)
Definition minimap.cpp:67
virtual void doUpdate()
Definition minimap.cpp:74
virtual ~MinimapUpdateThread()
Definition minimap.cpp:20
bool popBlockUpdate(QueuedMinimapUpdate *update)
Definition minimap.cpp:54
std::deque< QueuedMinimapUpdate > m_update_queue
Definition minimap.h:114
MinimapData * data
Definition minimap.h:107
std::mutex m_queue_mutex
Definition minimap.h:113
bool pushBlockUpdate(v3s16 pos, MinimapMapblock *data)
Definition minimap.cpp:31
std::map< v3s16, MinimapMapblock * > m_blocks_cache
Definition minimap.h:115
void getMap(v3s16 pos, s16 size, s16 height)
Definition minimap.cpp:106
MinimapUpdateThread()
Definition minimap.h:99
ITextureSource * m_tsrc
Definition minimap.h:167
Client * client
Definition minimap.h:163
size_t getModeIndex() const
Definition minimap.h:141
std::mutex m_mutex
Definition minimap.h:176
video::IVideoDriver * driver
Definition minimap.h:162
void addBlock(v3s16 pos, MinimapMapblock *data)
Definition minimap.cpp:226
std::unique_ptr< MinimapData > data
Definition minimap.h:164
void setMinimapShape(MinimapShape shape)
Definition minimap.cpp:240
void blitMinimapPixelsToImageRadar(video::IImage *map_image)
Definition minimap.cpp:383
void setModeIndex(size_t index)
Definition minimap.cpp:262
~Minimap()
Definition minimap.cpp:205
std::unique_ptr< MinimapUpdateThread > m_minimap_update_thread
Definition minimap.h:170
std::list< std::unique_ptr< MinimapMarker > > m_markers
Definition minimap.h:177
void addMode(MinimapModeDef mode)
Definition minimap.cpp:280
size_t m_current_mode_index
Definition minimap.h:173
v3s16 getPos() const
Definition minimap.h:128
MinimapShape getMinimapShape()
Definition minimap.cpp:253
video::ITexture * getMinimapTexture()
Definition minimap.cpp:453
void setPos(v3s16 pos)
Definition minimap.cpp:360
void removeMarker(MinimapMarker **marker)
Definition minimap.cpp:680
IShaderSource * m_shdrsrc
Definition minimap.h:168
MinimapMarker * addMarker(scene::ISceneNode *parent_node)
Definition minimap.cpp:672
size_t getMaxModeIndex() const
Definition minimap.h:142
v3f getYawVec()
Definition minimap.cpp:526
const NodeDefManager * m_ndef
Definition minimap.h:169
std::vector< MinimapModeDef > m_modes
Definition minimap.h:172
f32 getAngle() const
Definition minimap.h:130
Minimap(Client *client)
Definition minimap.cpp:164
void nextMode()
Definition minimap.cpp:349
void blitMinimapPixelsToImageSurface(video::IImage *map_image, video::IImage *heightmap_image)
Definition minimap.cpp:399
f32 m_angle
Definition minimap.h:175
video::IImage * getMinimapMask()
Definition minimap.cpp:430
void toggleMinimapShape()
Definition minimap.cpp:231
void setAngle(f32 angle)
Definition minimap.cpp:378
MinimapModeDef getModeDef() const
Definition minimap.h:145
void clearModes()
Definition minimap.h:135
void drawMinimap(core::rect< s32 > rect)
Definition minimap.cpp:563
u16 m_surface_mode_scan_height
Definition minimap.h:174
irr_ptr< scene::SMeshBuffer > m_meshbuffer
Definition minimap.h:171
std::list< v2f > m_active_markers
Definition minimap.h:178
void updateActiveMarkers()
Definition minimap.cpp:686
irr_ptr< scene::SMeshBuffer > createMinimapMeshBuffer()
Definition minimap.cpp:538
This class is for getting the actual properties of nodes from their content ID.
Definition nodedef.h:530
#define MAP_BLOCKSIZE
Definition constants.h:64
MinimapType
Definition hud.h:108
core::vector3d< s16 > v3s16
Definition irr_v3d.h:13
core::vector3df v3f
Definition irr_v3d.h:11
MinimapShape
Definition minimap.h:40
@ MINIMAP_SHAPE_SQUARE
Definition minimap.h:41
@ MINIMAP_SHAPE_ROUND
Definition minimap.h:42
#define MINIMAP_MAX_SY
Definition minimap.h:38
#define MINIMAP_MAX_SX
Definition minimap.h:37
Definition activeobjectmgr.cpp:11
Definition clientmap.h:30
MinimapPixel minimap_scan[MINIMAP_MAX_SX *MINIMAP_MAX_SY]
Definition minimap.h:78
video::ITexture * minimap_overlay_square
Definition minimap.h:87
video::IImage * minimap_mask_square
Definition minimap.h:82
v3s16 old_pos
Definition minimap.h:77
video::ITexture * minimap_overlay_round
Definition minimap.h:86
video::ITexture * object_marker_red
Definition minimap.h:89
MinimapModeDef mode
Definition minimap.h:75
video::ITexture * texture
Definition minimap.h:83
bool textures_initialised
Definition minimap.h:85
video::ITexture * heightmap_texture
Definition minimap.h:84
video::ITexture * player_marker
Definition minimap.h:88
video::IImage * minimap_mask_round
Definition minimap.h:81
bool map_invalidated
Definition minimap.h:79
v3s16 pos
Definition minimap.h:76
bool minimap_shape_round
Definition minimap.h:80
void getMinimapNodes(VoxelManipulator *vmanip, const v3s16 &pos)
Definition minimap.cpp:720
MinimapPixel data[MAP_BLOCKSIZE *MAP_BLOCKSIZE]
Definition minimap.h:71
scene::ISceneNode * parent_node
Definition minimap.h:59
MinimapMarker(scene::ISceneNode *parent_node)
Definition minimap.h:55
MinimapType type
Definition minimap.h:46
u16 scale
Definition minimap.h:51
std::string label
Definition minimap.h:47
u16 map_size
Definition minimap.h:49
std::string texture
Definition minimap.h:50
u16 scan_height
Definition minimap.h:48
u16 height
Definition minimap.h:64
u16 air_count
Definition minimap.h:65
MapNode n
The topmost node that the minimap displays.
Definition minimap.h:63
v3s16 pos
Definition minimap.h:93
MinimapMapblock * data
Definition minimap.h:94