コード例 #1
0
ファイル: gfx.py プロジェクト: maxinteger/Ilo
    def textRenderPass(self):
        """
        A beállított szövegobjektumok megjelenítése egymenetben
        a leképezés utólsó sakaszában (a takarás elkerüése érdekében)

        Felhasznált forrás:
            - U{Nehe: lesson 17 <http://nehe.gamedev.net/data/lessons/lesson.asp?lesson=17>}
        """
        if self.__fontTexture != None:
            self.enable2D(self.viewport.width, self.viewport.height)
            self.matrix.setMatrixMode(Gfx.MODELVIEW)
            glPushAttrib(GL_ALL_ATTRIB_BITS)
            glEnable(GL_TEXTURE_2D)
            glDisable(GL_LIGHTING)
            glEnable(GL_BLEND)
            glBlendFunc(GL_SRC_ALPHA,GL_ONE)
            self.__fontTexture.bindTexture()
            for item in Text.getInstance().textList:
                self.matrix.loadIdentity()
                glColor(*(item.color))
                #glScale(*(item.scale))
                glTranslate(item.x, item.y,0)
                glListBase(self.__fontList + (-32+(128*item.fontSet)))
                glCallLists(item.text)
            glPopAttrib()
            self.disable2D()
コード例 #2
0
ファイル: game.py プロジェクト: maxinteger/Ilo
    def preLoad(self):
        self.cam = self.glContext.camera
        self.cam.moveTo(0.0,-40.0,20.0)
        self.cam.rotateX = 20
        self.addEventListener(KeyboardEvent.PRESS, self.keyEvent)
        self.addEventListener(Event.ENTER_FRAME, self.enterframe)
        self.addEventListener(MouseEvent.MOVE, self.mouseEvent)

        self.t = Text.getInstance().addText(10, 10, "hello\n world")
        self.rot = Text.getInstance().addText(10, 25, "R")
        self.coo = Text.getInstance().addText(10, 40, "C")
        self.level = self.libraly.loadSceneXML('data/mapdata.xml')

        self.addElement(self.level, "level")

        self.light = LightLibraly.getInstance()
         #self.light.globalAmbient([0.5,0.5,0.5,1.0])

        self.light.turnOnLights()

        self.l1 = self.light.addLight()

        self.l1.diffuse = [1.0,1.0,1.0,1.0]
        self.l1.lightIntesity = 100
        self.l1.coord.z = 40
        self.l1.setSpot((0.0,0.0,-10.0), 10.0)
        self.addElement(self.l1, "light_1")

        self.particle1 = BaseParticleSystem("first", 10, "data/texture/fust.bmp")
        self.addElement(self.particle1, 'p1')
        self.particle2 = BaseParticleSystem("first", 10, "data/texture/fust.bmp")
        self.addElement(self.particle2, 'p2')

        self.particle1.coord = (-2.0, 2.25, 10.0)
        self.particle2.coord = (2.0, 2.25, 10.0)
        self.particle1.scale = (0.2, 0.2, 0.2)
        self.particle2.scale = (0.2, 0.2, 0.2)
        self.particle1.angle.z = 45
        self.particle2.angle.z = -45