File tree 1 file changed +10
-7
lines changed
1 file changed +10
-7
lines changed Original file line number Diff line number Diff line change @@ -713,6 +713,8 @@ void GenericCAO::addToScene(ITextureSource *tsrc)
713
713
mesh->drop ();
714
714
715
715
m_meshnode->setScale (m_prop.visual_size );
716
+ m_meshnode->setMaterialFlag (video::EMF_BACK_FACE_CULLING,
717
+ m_prop.backface_culling );
716
718
717
719
setSceneNodeMaterial (m_meshnode);
718
720
} else if (m_prop.visual == " mesh" ) {
@@ -832,19 +834,20 @@ void GenericCAO::setNodeLight(u8 light)
832
834
}
833
835
834
836
if (m_enable_shaders) {
835
- scene::ISceneNode *node = getSceneNode ();
836
-
837
- if (node == nullptr )
838
- return ;
839
-
840
837
if (m_prop.visual == " upright_sprite" ) {
838
+ if (!m_meshnode)
839
+ return ;
840
+
841
841
scene::IMesh *mesh = m_meshnode->getMesh ();
842
842
for (u32 i = 0 ; i < mesh->getMeshBufferCount (); ++i) {
843
843
scene::IMeshBuffer *buf = mesh->getMeshBuffer (i);
844
- video::SMaterial &material = buf->getMaterial ();
845
- material.EmissiveColor = color;
844
+ buf->getMaterial ().EmissiveColor = color;
846
845
}
847
846
} else {
847
+ scene::ISceneNode *node = getSceneNode ();
848
+ if (!node)
849
+ return ;
850
+
848
851
for (u32 i = 0 ; i < node->getMaterialCount (); ++i) {
849
852
video::SMaterial &material = node->getMaterial (i);
850
853
material.EmissiveColor = color;
You can’t perform that action at this time.
0 commit comments