update Material struct