示例#1
0
 def loadEggTexture(self):
     if not self.isTextured():
         return None
     m = EggTexture(self.name + "_diffuse", self.get("map_Kd"))
     m.setFormat(EggTexture.FRgb)
     m.setMagfilter(EggTexture.FTLinearMipmapLinear)
     m.setMinfilter(EggTexture.FTLinearMipmapLinear)
     m.setWrapU(EggTexture.WMRepeat)
     m.setWrapV(EggTexture.WMRepeat)
     self.eggdiffusetexture = m
     return self.eggdiffusetexture
示例#2
0
    def getEggTexture(self):
        if self.eggdiffusetexture:
            return self.eggdiffusetexture
        if not self.isTextured():
            return None
        m = EggTexture(self.name + "_diffuse", self.get("map_Kd"))

        # Check if texture supports transparency based on extension name
        _, ext = os.path.splitext(self.attrib['map_Kd'])
        if ext.lower() == '.png':
            m.setFormat(EggTexture.FRgba)
        elif ext.lower() in ['.jpg', '.jpeg']:
            # NOTE: JPG format does not support transparency
            m.setFormat(EggTexture.FRgb)
        else:
            logger.debug('Object has texture with extension: %s' % str(ext))
            m.setFormat(EggTexture.FRgb)

        m.setMagfilter(EggTexture.FTLinearMipmapLinear)
        m.setMinfilter(EggTexture.FTLinearMipmapLinear)
        m.setWrapU(EggTexture.WMRepeat)
        m.setWrapV(EggTexture.WMRepeat)
        self.eggdiffusetexture = m
        return self.eggdiffusetexture