There is a problem with obj loader. It return meshes before materials (mtl file) are loaded. That's because it doesn't wait for _loadMTL (https://github.com/BabylonJS/Babylon.js/blob/master/loaders/OBJ/babylon.objFileLoader.js#L696) callback to be finished. So inside my loadMesh task i have undefined materials and i cannot manipulate with them. This is sad