summaryrefslogtreecommitdiff
path: root/src/content_cao.h
diff options
context:
space:
mode:
authorKahrl <kahrl@gmx.net>2014-11-02 03:47:43 +0100
committerKahrl <kahrl@gmx.net>2014-11-08 23:11:57 +0100
commit9b551d5cbcaf71a8c39bbf7e886290649aed4799 (patch)
tree8eb68e4c9a7a006ec6c406da4760403c6748848e /src/content_cao.h
parentcc8d7b86404f2830bcf09d04468e8041db276b98 (diff)
downloadminetest-9b551d5cbcaf71a8c39bbf7e886290649aed4799.tar.gz
minetest-9b551d5cbcaf71a8c39bbf7e886290649aed4799.tar.bz2
minetest-9b551d5cbcaf71a8c39bbf7e886290649aed4799.zip
Implement WieldMeshSceneNode which improves wield mesh rendering
- 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.
Diffstat (limited to 'src/content_cao.h')
-rw-r--r--src/content_cao.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/content_cao.h b/src/content_cao.h
index bf1ac5b3f..69e2e54a2 100644
--- a/src/content_cao.h
+++ b/src/content_cao.h
@@ -70,6 +70,7 @@ private:
core::aabbox3d<f32> m_selection_box;
scene::IMeshSceneNode *m_meshnode;
scene::IAnimatedMeshSceneNode *m_animated_meshnode;
+ WieldMeshSceneNode *m_wield_meshnode;
scene::IBillboardSceneNode *m_spritenode;
scene::ITextSceneNode* m_textnode;
v3f m_position;
@@ -131,10 +132,14 @@ public:
v3f getPosition();
+ scene::ISceneNode *getSceneNode();
+
scene::IMeshSceneNode *getMeshSceneNode();
scene::IAnimatedMeshSceneNode *getAnimatedMeshSceneNode();
+ WieldMeshSceneNode *getWieldMeshSceneNode();
+
scene::IBillboardSceneNode *getSpriteSceneNode();
inline bool isPlayer() const