diff --git a/data/gui/materials.xml b/data/gui/materials.xml index 16927e83e..8b9a7fb69 100644 --- a/data/gui/materials.xml +++ b/data/gui/materials.xml @@ -4,5 +4,7 @@ + + \ No newline at end of file diff --git a/src/graphics/irr_driver.cpp b/src/graphics/irr_driver.cpp index e3a2537bb..077c020ac 100644 --- a/src/graphics/irr_driver.cpp +++ b/src/graphics/irr_driver.cpp @@ -850,12 +850,14 @@ PerCameraNode *IrrDriver::addPerCameraMesh(scene::IMesh* mesh, */ scene::ISceneNode *IrrDriver::addBillboard(const core::dimension2d< f32 > size, video::ITexture *texture, - scene::ISceneNode* parent) + scene::ISceneNode* parent, bool alphaTesting) { scene::IBillboardSceneNode* node = m_scene_manager->addBillboardSceneNode(parent, size); assert(node->getMaterialCount() > 0); node->setMaterialTexture(0, texture); + if(alphaTesting) + node->setMaterialType(video::EMT_TRANSPARENT_ALPHA_CHANNEL_REF); return node; } // addMesh diff --git a/src/graphics/irr_driver.hpp b/src/graphics/irr_driver.hpp index a7d6b3082..9fc307e47 100644 --- a/src/graphics/irr_driver.hpp +++ b/src/graphics/irr_driver.hpp @@ -159,7 +159,7 @@ public: scene::ISceneNode *parent = NULL); scene::ISceneNode *addBillboard(const core::dimension2d< f32 > size, video::ITexture *texture, - scene::ISceneNode* parent=NULL); + scene::ISceneNode* parent=NULL, bool alphaTesting); scene::IParticleSystemSceneNode *addParticleNode(bool default_emitter=true);