InitialObjectDescriptor {
 objectDescriptorID 1
 audioProfileLevelIndication 255
 visualProfileLevelIndication 254
 sceneProfileLevelIndication 254
 graphicsProfileLevelIndication 254
 ODProfileLevelIndication 255
 esDescr [
  ES_Descriptor {
   ES_ID 1
   decConfigDescr DecoderConfigDescriptor {
    streamType 3
    decSpecificInfo BIFSConfig {
     isCommandStream true
     pixelMetric true
     pixelWidth 600
     pixelHeight 400
    }
   }
  }
  ES_Descriptor {
   ES_ID 2
   decConfigDescr DecoderConfigDescriptor {
    streamType 1
   }
  }
 ]
}

OrderedGroup {
 children [
  Background2D {
   backColor 1 1 1
  }
  WorldInfo {
   info [
    "This test shows how a texture can be modified: either changing its positionning in the shape or its transparency" 
    "The positioning is given using the TextureTransform node and the transparency using the Material2D node." 
    "" 
    "GPAC Regression Tests" "$Date: 2007-07-27 09:46:08 $ - $Revision: 1.3 $" 
    "(C) 2002-2006 GPAC Team"
   ]
   title "TextureTransform"
  }
  Transform2D {
   translation -180 0
   children [
    Shape {
     appearance Appearance {
      texture DEF TEXTURE ImageTexture {
       url [od:10]
      }
     }
     geometry DEF REC Rectangle {
      size 150 100
     }
    }
    Transform2D {
     translation 0 -70
     children [
      Shape {
       appearance DEF TEXTAPP Appearance {
        material Material2D {
         emissiveColor 0 0 0
         filled TRUE
        }
       }
       geometry Text {
        string ["No Transform"]
        fontStyle DEF FS FontStyle {
         justify ["MIDDLE" "MIDDLE"]
         size 14
        }
       }
      }
     ]
    }
   ]
  }
  Transform2D {
   translation 0 140
   children [
    Shape {
     appearance Appearance {
      texture USE TEXTURE
      textureTransform TextureTransform {
       rotation 0.78
      }
     }
     geometry USE REC
    }
    Transform2D {
     translation 0 -60
     children [
      Shape {
       appearance USE TEXTAPP
       geometry Text {
        string ["TextureTransform: rotation PI/4"]
        fontStyle USE FS
       }
      }
     ]
    }
   ]
  }
  Transform2D {
   translation 0 10
   children [
    Shape {
     appearance Appearance {
      texture USE TEXTURE
      textureTransform TextureTransform {
       scale 0.5 1.5
      }
     }
     geometry USE REC
    }
    Transform2D {
     translation 0 -60
     children [
      Shape {
       appearance USE TEXTAPP
       geometry Text {
        string ["TextureTransform: scale 0.5 1.5"]
        fontStyle USE FS
       }
      }
     ]
    }
   ]
  }
  Transform2D {
   translation 0 -120
   children [
    Shape {
     appearance Appearance {
      texture USE TEXTURE
      textureTransform TextureTransform {
       translation 0.5 0
      }
     }
     geometry USE REC
    }
    Transform2D {
     translation 0 -60
     children [
      Shape {
       appearance USE TEXTAPP
       geometry Text {
        string ["TextureTransform: translation 0.5 0"]
        fontStyle USE FS
       }
      }
     ]
    }
   ]
  }
  Transform2D {
   translation 180 100
   children [
    Shape {
     appearance Appearance {
      material Material2D {
       emissiveColor 1 0 1
       filled TRUE
       transparency 0.8
      }
      texture USE TEXTURE
     }
     geometry USE REC
    }
    Transform2D {
     translation 0 -60
     children [
      Shape {
       appearance USE TEXTAPP
       geometry Text {
        string ["Material Transparency 0.8"]
        fontStyle USE FS
       }
      }
     ]
    }
   ]
  }
  Transform2D {
   translation 180 -100
   children [
    Shape {
     appearance Appearance {
      texture USE TEXTURE
      textureTransform TextureTransform {
       center 0.5 0.5
       rotation 0.78
      }
     }
     geometry Circle {
      radius 60
     }
    }
    Transform2D {
     translation 0 -70
     children [
      Shape {
       appearance USE TEXTAPP
       geometry Text {
        string ["Rotated On a Circle"]
        fontStyle USE FS
       }
      }
     ]
    }
   ]
  }
 ]
}


AT 0 {
  UPDATE OD [
   ObjectDescriptor {
    objectDescriptorID 10
    esDescr [
     ES_Descriptor {
      ES_ID 20
      muxInfo MuxInfo {
       fileName "../auxiliary_files/logo.jpg"
      }
     }
    ]
   }
  ]
}

