def createToon(self): self.toon = Toon() dna = ToonDNA() dna.newToonFromProperties(*self.toonInfo[self.DNA_INDEX]) self.toon.setDNA(dna) self.toon.pose(*self.toonInfo[self.POSE_INDEX]) self.toon.setScale(0.3) self.toon.setH(200) self.toon.getGeomNode().setDepthWrite(1) self.toon.getGeomNode().setDepthTest(1) self.toon.reparentTo(self)
class ExperimentCreditsToonSlide(NodePath): DNA_INDEX = 0 POSE_INDEX = 1 def __init__(self, toonInfo, text, style, duration): NodePath.__init__(self, 'ExperimentCreditsToonSlide') self.toonInfo = toonInfo self.text = text self.style = style self.duration = duration self.toon = None self.createToon() if style == STYLE_LEFT: self.createStyleLeft() elif style == STYLE_RIGHT: self.createStyleRight() self.hide() def createStyleLeft(self): self.reparentTo(base.a2dTopLeft) self.toon.setPos(self, 0.52, 0, -1.60) def createStyleRight(self): pass def createToon(self): self.toon = Toon() dna = ToonDNA() dna.newToonFromProperties(*self.toonInfo[self.DNA_INDEX]) self.toon.setDNA(dna) self.toon.pose(*self.toonInfo[self.POSE_INDEX]) self.toon.setScale(0.3) self.toon.setH(200) self.toon.getGeomNode().setDepthWrite(1) self.toon.getGeomNode().setDepthTest(1) self.toon.reparentTo(self) def construct(self): seq = Sequence( Sequence(Func(self.show), Func(self.setTransparency, 1), LerpColorScaleInterval(self, 3, Vec4(1, 1, 1, 1), startColorScale=Vec4(1, 1, 1, 0)), Func(self.clearColorScale), Func(self.clearTransparency)), Wait(self.duration), Sequence(Func(self.setTransparency, 1), LerpColorScaleInterval(self, 3, Vec4(1, 1, 1, 0), startColorScale=Vec4(1, 1, 1, 1)), Func(self.clearColorScale), Func(self.clearTransparency), Func(self.hide)), ) return seq
class ExperimentCreditsToonSlide(NodePath): DNA_INDEX = 0 POSE_INDEX = 1 def __init__(self, toonInfo, text, style, duration): NodePath.__init__(self, 'ExperimentCreditsToonSlide') self.toonInfo = toonInfo self.text = text self.style = style self.duration = duration self.toon = None self.createToon() if style == STYLE_LEFT: self.createStyleLeft() elif style == STYLE_RIGHT: self.createStyleRight() self.hide() def createStyleLeft(self): self.reparentTo(base.a2dTopLeft) self.toon.setPos(self, 0.52, 0, -1.60) def createStyleRight(self): pass def createToon(self): self.toon = Toon() dna = ToonDNA() dna.newToonFromProperties(*self.toonInfo[self.DNA_INDEX]) self.toon.setDNA(dna) self.toon.pose(*self.toonInfo[self.POSE_INDEX]) self.toon.setScale(0.3) self.toon.setH(200) self.toon.getGeomNode().setDepthWrite(1) self.toon.getGeomNode().setDepthTest(1) self.toon.reparentTo(self) def construct(self): seq = Sequence( Sequence( Func(self.show), Func(self.setTransparency, 1), LerpColorScaleInterval(self, 3, Vec4(1, 1, 1, 1), startColorScale=Vec4(1, 1, 1, 0)), Func(self.clearColorScale), Func(self.clearTransparency)), Wait(self.duration), Sequence( Func(self.setTransparency, 1), LerpColorScaleInterval(self, 3, Vec4(1, 1, 1, 0), startColorScale=Vec4(1, 1, 1, 1)), Func(self.clearColorScale), Func(self.clearTransparency), Func(self.hide)), ) return seq