aboutsummaryrefslogtreecommitdiff
path: root/src/wieldmesh.cpp
AgeCommit message (Collapse)Author
2018-11-28Move client-specific files to 'src/client' (#7902)Quentin Bazin
Update Android.mk Remove 'src/client' from include_directories
2018-04-30Global new() or grab() to be managed in constuctor only (#7235 partial) (#7236)JDCodeIt
* g_extrusion_mesh_cache new() and grab() to be managed in constuctor only (#7235 partial) This global was getting grab()-ed by each call to getItemMesh, incrementing its reference count. What was to be the final drop() in the destructor ended up with > 0 reference count, so memory not freed by Irrlicht.
2018-03-22Update mesh collector and move it to a separate file (#6904)Vitaliy
* Update MeshCollector * Simplify MeshCollector
2018-02-10Node definition manager refactor (#7016)Dániel Juhász
* Rename IWritableNodeDefManager to NodeDefManager * Make INodeDefManager functions const * Use "const *NodeDefManager" instead of "*INodeDefManager" * Remove unused INodeDefManager class * Merge NodeDefManager and CNodeDefManager * Document NodeDefManager
2017-12-16Fix items turning black (#6780)Vitaliy
2017-11-14Fix item and wield meshes (#6596)Vitaliy
2017-10-15Real global textures (#6105)Vitaliy
* Real global textures * Add world-aligned textures * Update minimal to support world-aligned tiles * Update minimal
2017-08-25Overlays for wield and inventory images (#6107)Dániel Juhász
* Overlays for wield and inventory images
2017-08-20Modernize code: very last fixes (#6290)Loïc Blot
Last modernization fixes
2017-08-20Modernize source code: last part (#6285)Loïc Blot
* Modernize source code: last par * Use empty when needed * Use emplace_back instead of push_back when needed * For range-based loops * Initializers fixes * constructors, destructors default * c++ C stl includes
2017-08-18Optimize headers (part 2) (#6272)Loïc Blot
* Optimize headers (part 2) * less debug.h in headers * less remoteplayer.h for everybody * Cleanup (part 2) * camera.h: mesh.h * mapgen.h: mapnode.h * serverenvironment.h: mapblock.h * nodedef.h: shader.h
2017-07-26TileLayer: use shared_ptr for FrameSpec vector (#6171)Loïc Blot
* TileLayer: use shared_ptr for vector framespec This reduce memory copy of TileLayer from (4 to 16) * FrameSpec where FrameSpec = (sizeof(int) + 3 * sizeof(ptr)) to int + sizeof(ptr) Callgrind difference Before: https://lut.im/RGkiJqQb8T/LeQIEXpAuRzfl7gd.png After: https://lut.im/bcqmwee1xu/cTwtptY5tRuS9lp0.png * Fix one push_back to use vector::emplace_back & optimize inclusions
2017-07-11Add 'plantlike_rooted' drawtypenumber Zero
Useful for underwater plants. Node consists of a base cube plus a plantlike extension that can pass through liquid nodes above without creating air bubbles or interfering with liquid flow. Uses paramtype2 'leveled', param2 defines height of plantlike extension.
2017-07-02Irrlicht cleanup: cleanup various object to use RenderingEngine (#6088)Loïc Blot
* Irrlicht cleanup: cleanup various object to use RenderingEngine * CAO doesn't need scenemanager in addToScene * Camera doesn't need VideoDriver pointer or SceneManager in constructor * Hud doesn't need driver & scene manager in constructor * Hud doesn't need scenemanager pointer * Tile.h doesn't need IrrlichtDevice header (just SMaterial) * WieldMeshSceneNode: only take scene, we always use scene root node as parent
2017-06-21Cpp11 initializers: last src root changeset (#6022)Loïc Blot
* Cpp11 initializers: last src root changeset Finish to migrate all src root folder files to C++11 constructor initializers
2017-06-01Do not shade inventory items with textures (#5869)Dániel Juhász
This commit restores the old behavior: if an inventory item has an own inventory texture, it will not be shaded.
2017-04-21Fix after soft node overlaysDániel Juhász
This removes a segmentation fault and makes node meshes well colorized.
2017-04-21Soft node overlay (#5186)Dániel Juhász
This commit adds node overlays, which are tiles that are drawn on top of other tiles.
2017-04-08Hardware coloring for itemstacksDániel Juhász
Adds the possibility to colorize item stacks based on their metadata. In the item/node definition you can specify palette (an image file) and color (fallback color if the item has no palette or metadata). Then you can add palette_index to the metadata. Dropped itemstacks with different colors do not merge.
2017-01-23Add hardware node coloring. Includes:Dániel Juhász
- Increase ContentFeatures serialization version - Color property and palettes for nodes - paramtype2 = "color", "colored facedir" or "colored wallmounted"
2017-01-09Environment & IGameDef code refactoring (#4985)Ner'zhul
* Environment code refactoring * Cleanup includes & class declarations in client & server environment to improve build speed * ServerEnvironment::m_gamedef is now a pointer to Server instead of IGameDef, permitting to cleanup many casts. * Cleanup IGameDef * Move ITextureSource* IGameDef::getTextureSource() to Client only. * Also move ITextureSource *IGameDef::tsrc() helper * drop getShaderSource, getSceneManager, getSoundManager & getCamera abstract call * drop unused emerge() call * cleanup server unused functions (mentionned before) * Drop one unused parameter from ContentFeatures::updateTextures * move checkLocalPrivilege to Client * Remove some unnecessary casts * create_formspec_menu: remove IWritableTextureSource pointer, as client already knows it * Fix some comments * Change required IGameDef to Server/Client pointers * Previous change that game.cpp sometimes calls functions with Client + InventoryManager + IGameDef in same functions but it's the same objects * Remove duplicate Client pointer in GUIFormSpecMenu::GUIFormSpecMenu * drop ClientMap::sectorWasDrawn which is unused
2016-02-08Use inventory_image in the first place for inventory item meshRealBadAngel
2016-02-07Use meshes to display inventory itemsRealBadAngel
2015-12-29Revert "Add support for using arbitrary meshes as items"Sapier
This reverts commit 91bafceee6606fab79db1bde4cba01b84fed65c7. Reverted due to missinterpretation of agreement, obvious dislike and me not interested in doing fights for feature I don't actually need
2015-12-29Add support for using arbitrary meshes as itemsSapier
2015-11-24Re-enable texture pre-filters on wielditems, fixing #3178.Aaron Suen
2015-08-20Remove use of engine sent texture tiling flags - theyre no longer neededRealBadAngel
2015-08-02src/wieldmesh.cpp: Fix mesh extrusion memory leakBřetislav Štec
2015-07-21Add wielded (and CAOs) shaderRealBadAngel
2015-05-08Fix typo in WieldMesh::setItem()kwolekr
2015-05-08Replace Wieldmesh::setItem assertion that could be triggered by the server ↵kwolekr
with an error
2015-05-04Add a check for animation when getting an extruded meshKevin Ott
Fixes issue #2667
2015-04-01Move globals from main.cpp to more sane locationsCraig Robbins
Move debug streams to log.cpp|h Move GUI-related globals to clientlauncher Move g_settings and g_settings_path to settings.cpp|h Move g_menuclouds to clouds.cpp|h Move g_profiler to profiler.cpp|h
2015-03-31Move texture_min_size even further down the pipe. Now, textures are ↵Aaron Suen
JIT-upscaled using an image transformation, right at the time they're added to a mesh or particle; images used in 2D elements are left unscaled. This should fix any remaining issues with HUD elements.
2015-03-07For usages of assert() that are meant to persist in Release builds (when ↵Craig Robbins
NDEBUG is defined), replace those usages with persistent alternatives
2015-03-05Replace std::list to std::vector into tile.cpp (m_texture_trash) and move ↵Loic Blot
tile.hpp to src/client/
2015-02-11Remove workaround in itemdef.cpp to enable/disable/enable "enable_shaders" ↵Craig Robbins
setting * Increase performance (client) * Avoid changing a global value to solve a local problem
2015-02-11Revert "Remove workaround in itemdef.cpp to enable/disable/enable ↵Craig Robbins
"enable_shaders" setting" This reverts commit d25ff8fd2592f457b91e8a61240694af3902d23f.
2015-02-11Remove workaround in itemdef.cpp to enable/disable/enable "enable_shaders" ↵Craig Robbins
setting * Increase performance (client) * Avoid changing a global value to solve a local problem
2015-01-05Prevent client crashing if an NDT_AIRLIKE node is droppedCraig Robbins
The player dropping the node can either be themselves or another player (i.e. without this fix you can crash other people's clients) Thanks CWz for reporting the issue
2014-12-23Silence misc. warningskwolekr
2014-12-22Temporarily fix always bright wieldhand with shaders enabledkwolekr
2014-12-21Change TileSpec::frames to be std::vector not std::mapunknown
Signed-off-by: Craig Robbins <kde.psych@gmail.com>
2014-11-26Wield: always obey anisotropic_filter setting, not just for hi res texturesKahrl
2014-11-26EMF_USE_MIP_MAPS was introduced in Irrlicht 1.8, don't use in 1.7.3 or belowKahrl
This is not optimal as it will cause minor graphical glitches for Irrlicht 1.7 users, but at least it fixes the build.
2014-11-26Wieldmesh: don't force anisotropic filtering on, instead disable mipmapsKahrl
This should fix #1844. Thanks to oleastre for making the first version of this commit (#1848).
2014-11-13Wielded fixes. Add shaders support.RealBadAngel
2014-11-08Implement WieldMeshSceneNode which improves wield mesh renderingKahrl
- Don't create and cache an extruded mesh for every (non-node) item. Instead use a single one per image resolution. - For cubic nodes reuse a single wield mesh too - Improve lighting of the wielded item - Increase far value of wield mesh scene camera, fixes #1770 - Also includes some minor refactorings of Camera and GenericCAO.