# IDMaterials(bpy_struct)

base class — `bpy_struct`

class `bpy.types.``IDMaterials`(bpy_struct)

  Collection of materials

  `append`(material)

    Add a new material to the data block

    Parameters: | material (`Material`) – Material to add

  `pop`(index=-1, update_data=False)

    Remove a material from the data block

    Parameters: | index (int in [-32766, 32766], (optional)) – Index of material to remove update_data (boolean, (optional)) – Update data by re-adjusting the material slots assigned
    Returns: | Material to remove
    Return type: | `Material`

  `clear`(update_data=False)

    Remove all materials from the data block

    Parameters: | update_data (boolean, (optional)) – Update data by re-adjusting the material slots assigned

Inherited Properties

`bpy_struct.id_data` |

Inherited Functions

`bpy_struct.as_pointer` `bpy_struct.driver_add` `bpy_struct.driver_remove` `bpy_struct.get` `bpy_struct.is_property_hidden` `bpy_struct.is_property_readonly` `bpy_struct.is_property_set` `bpy_struct.items` | `bpy_struct.keyframe_delete` `bpy_struct.keyframe_insert` `bpy_struct.keys` `bpy_struct.path_from_id` `bpy_struct.path_resolve` `bpy_struct.property_unset` `bpy_struct.type_recast` `bpy_struct.values`

References

`Curve.materials` `Mesh.materials` | `MetaBall.materials`