add Material.hpp