77 const std::string&
Name()
const;
86 const std::map<TextureType, std::vector<std::string>>
Textures()
const;
89 static const std::map<TextureType, std::uint32_t> sTextureTypeMappings;
95 std::map<TextureType, std::vector<std::string>> mTextures;
144 return mValue == rhs.mValue;
150 return mValue != rhs.mValue;
158 throw std::runtime_error(
"Cannot dereference end().");
169 mValue = T(
static_cast<int>(mValue) + 1);
std::ptrdiff_t difference_type
Iterator & operator=(const Iterator &)=default
Iterator(Iterator &&)=default
Iterator(const Iterator &)=default
bool operator==(const Iterator &rhs) const
Iterator & operator=(Iterator &&)=default
bool operator!=(const Iterator &rhs) const
std::forward_iterator_tag iterator_category
Represents a single material imported from a 3D model file.
const std::string & Name() const
Gets the material name as defined in the source file.
const std::map< TextureType, std::vector< std::string > > Textures() const
Retrieves the list of textures associated with each texture type.
ModelMaterial(Model &model)
Constructs an empty material associated with a model.
ModelMaterial(ModelMaterial &&)=default
ModelMaterial(const ModelMaterial &)=default
Model & GetModel()
Returns a reference to the owning Model.
ModelMaterial & operator=(const ModelMaterial &)=default
ModelMaterial & operator=(ModelMaterial &&)=default
Represents a 3D model composed of multiple meshes and materials.
TextureType
Enumerates supported texture map types for imported materials.