MeshComponent *getMeshComponent(SceneObject *sceneObject){ MeshComponent *mesh = sceneObject->GetMesh(); if (mesh!= NULL){ return mesh; } // search in children const vector<Transform*> *children = sceneObject->GetTransform()->GetChildren(); for (vector<Transform*>::const_iterator iter = children->begin();iter != children->end();iter++){ Transform *childTransform = *iter; SceneObject *child = childTransform->GetOwner(); if (child != NULL){ mesh = getMeshComponent(child); if (mesh!=NULL){ return mesh; } } } return NULL; }