def __init__(self, id, name, effect, xmlnode=None): """Creates a material. :param str id: A unique string identifier for the material :param str name: A name for the material :param collada.material.Effect effect: The effect instantiated in this material :param xmlnode: If loaded from xml, the xml node """ self.id = id """The unique string identifier for the material""" self.name = name """The name for the material""" self.effect = effect """The :class:`collada.material.Effect` instantiated in this material""" if xmlnode != None: self.xmlnode = xmlnode """ElementTree representation of the surface.""" else: self.xmlnode = E.material( E.instance_effect(url="#%s" % self.effect.id) , id=str(self.id), name=str(self.name))