I want to make a mirror in my game.
Here is my code.
def __init__(self):
ShowBase.__init__(self)
# tempnode = NodePath(PandaNode("temp node"))
# tempnode.setShaderAuto()
# self.cam.node().setInitialState(tempnode.getState())
# self.render.setShaderAuto()
self.cam.setPos(0, -6, 1)
self.player = Actor()
self.player.loadModel("Models/akai")
self.player.reparentTo(self.render)
# self.player.loadAnims({"Idle": "Models/idle"})
# self.player.loop("Idle")
self.player.loadAnims({"Walk": "Models/walk"})
self.player.loop("Walk")
self.world = self.loader.loadModel('environment')
self.world.setPos(0, 0, -.05)
self.world.reparentTo(self.render)
self.refPanel = self.loader.loadModel('Models/plane')
self.refPanel.reparentTo(self.render)
self.refPanel.setPos(0, 10, 0)
self.rig = NodePath('rig')
self.buffer = self.win.makeCubeMap('env', 2048, self.rig)
self.rig.reparentTo(self.refPanel)
self.refPanel.setTexGen(TextureStage.getDefault(),
TexGenAttrib.MWorldCubeMap)
self.refPanel.setTexture(self.buffer.getTexture())
The reflection has no problem.
But it seems that the image in the mirror is too big.
And…the image in the mirror seems get a little distortion.
Any help please?