problem whith tutorial 5 beginner new pyogre version

pocho

13-05-2007 10:49:56

hello for all
i problem whith the beginner tutorial 5
I do not understand so that it does not work


import ogre.renderer.OGRE as ogre
import SampleFramework

class TutorialFrameListener(SampleFramework.FrameListener):
def __init__(self, renderWindow, camera, sceneManager):
SampleFramework.FrameListener.__init__(self, renderWindow, camera)

# populate the camera and scene manager containers
self.camNode = camera.parentSceneNode.parentSceneNode
self.sceneManager = sceneManager

self.rotate = 72 # rotation speed
self.move = 250 # movement speed
self.keepRendering = True # whether to continue rendering or not

# the direction we are currently moving in
self.direction = ogre.Vector3(0, 0, 0)

def _setupInput(self):
self.eventProcessor = ogre.EventProcessor()
self.eventProcessor.initialise(self.renderWindow)
self.eventProcessor.startProcessingEvents()

# register as a listener for events
self.eventProcessor.addKeyListener(self)
self.eventProcessor.addMouseListener(self)
self.eventProcessor.addMouseMotionListener(self)

def frameStarted(self, evt):
self.camNode.translate(self.camNode.orientation * self.direction * evt.timeSinceLastFrame)
return self.keepRendering

def keyPressed(self, evt):
if evt.key == ogre.KC_ESCAPE:
self.keepRendering = False

elif evt.key == ogre.KC_1:
self.camera.parentSceneNode.detachObject(self.camera)
self.camNode = self.sceneManager.getSceneNode("CamNode1")
self.sceneManager.getSceneNode("PitchNode1").attachObject(self.camera)

elif evt.key == ogre.KC_2:
self.camera.parentSceneNode.detachObject(self.camera)
self.camNode = self.sceneManager.getSceneNode("CamNode2")
self.sceneManager.getSceneNode("PitchNode2").attachObject(self.camera)

elif evt.key in (ogre.KC_UP, ogre.KC_W):
self.direction.z -= self.move

elif evt.key in (ogre.KC_DOWN, ogre.KC_W):
self.direction.z += self.move

elif evt.key in (ogre.KC_LEFT, ogre.KC_A):
self.direction.x -= self.move

elif evt.key in (ogre.KC_RIGHT, ogre.KC_D):
self.direction.x += self.move

elif evt.key in (ogre.KC_PGDOWN, ogre.KC_E):
self.direction.y += self.move

elif evt.key in (ogre.KC_PGUP, ogre.KC_Q):
self.direction.y -= self.move

def keyReleased(self, evt):
if evt.key in (ogre.KC_UP, ogre.KC_W):
self.direction.z += self.move

elif evt.key in (ogre.KC_DOWN, ogre.KC_W):
self.direction.z -= self.move

elif evt.key in (ogre.KC_LEFT, ogre.KC_A):
self.direction.x += self.move

elif evt.key in (ogre.KC_RIGHT, ogre.KC_D):
self.direction.x -= self.move

elif evt.key in (ogre.KC_PGDOWN, ogre.KC_E):
self.direction.y -= self.move

elif evt.key in (ogre.KC_PGUP, ogre.KC_Q):
self.direction.y += self.move

def mousePressed(self, evt):
if evt.buttonID & ogre.MouseEvent.BUTTON0_MASK:
light = self.sceneManager.getLight("Light1")
light.visible = not light.visible

def mouseDragged(self, evt):
self.camNode.yaw(ogre.Degree(-evt.relX * self.rotate))
##self.camNode.getChild(0).pitch(ogre.Degree(-evt.relY * self.rotate))
self.camNode.getChild(0).pitch(ogre.Degree(-evt.relY * self.rotate).valueRadians())





class TutorialApplication(SampleFramework.Application):
def _createScene(self):
sceneManager = self.sceneManager
sceneManager.ambientLight = 0.25, 0.25, 0.25

ent = sceneManager.createEntity("Ninja", "ninja.mesh")
node = sceneManager.rootSceneNode.createChildSceneNode("NinjaNode")
node.attachObject(ent)

light = sceneManager.createLight("Light1")
light.type = ogre.Light.LT_POINT
light.position = 250, 150, 250
light.diffuseColour = 1, 1, 1
light.specularColour = 1, 1, 1

# create the first camera node/pitch node
node = sceneManager.rootSceneNode.createChildSceneNode("CamNode1", (-400, 200, 400))
##node.yaw(ogre.Degree(-45)) # look at the ninja
node.yaw(ogre.Degree(-45).valueRadians()) # look at the ninja

node = node.createChildSceneNode("PitchNode1")
node.attachObject(self.camera)

# create the second camera node/pitch node
node = sceneManager.rootSceneNode.createChildSceneNode("CamNode2", (0, 200, 400))
node.createChildSceneNode("PitchNode2")

def _createCamera(self):
self.camera = self.sceneManager.createCamera("PlayerCam")
self.camera.nearClipDistance = 5

def _createFrameListener(self):
self.frameListener = TutorialFrameListener(self.renderWindow, self.camera, self.sceneManager)
self.root.addFrameListener(self.frameListener)
self.frameListener.showDebugOverlay(True)

if __name__ == '__main__':
try:
ta = TutorialApplication()
ta.go()
except ogre.OgreException, e:
print e


thanks for any aid

Game_Ender

13-05-2007 16:36:26

What is the error you get? (Please post the complete message)

pocho

13-05-2007 21:26:15

sorry
:oops:
here the log file pyogre
http://www.savefile.com/files/718954
thanks for any aid

Game_Ender

14-05-2007 00:40:00

And what is the output on the command line? Run the application from the command line ie: "python my_python_file.py". That is the output I need.

pocho

14-05-2007 00:50:22

here is the code

Traceback (most recent call last):
File "C:\PythonOgre\demos\ogre\beginner_5.py", line 139, in <module>
ta.go()
File "C:\Python25\lib\site-packages\ogre\renderer\OGRE\sf_OIS.py", line 60, in go
if not self._setUp():
File "C:\Python25\lib\site-packages\ogre\renderer\OGRE\sf_OIS.py", line 88, in _setUp
self._createFrameListener()
File "C:\PythonOgre\demos\ogre\beginner_5.py", line 132, in _createFrameListener
self.frameListener = TutorialFrameListener(self.renderWindow, self.camera, self.sceneManager)
File "C:\PythonOgre\demos\ogre\beginner_5.py", line 8, in __init__
SampleFramework.FrameListener.__init__(self, renderWindow, camera)
File "C:\Python25\lib\site-packages\ogre\renderer\OGRE\sf_OIS.py", line 206, in __init__
self._setupInput()
File "C:\PythonOgre\demos\ogre\beginner_5.py", line 22, in _setupInput
self.eventProcessor = ogre.EventProcessor()
AttributeError: 'module' object has no attribute 'EventProcessor'

Game_Ender

14-05-2007 02:56:06

Those tutorials are out of date and will hopefully be updated once we have a 1.0 version. Please check out the demos that come with PythonOgre itself. There is not "ogre.EventProcessor" any more in PythonOgre you can use the standard Ogre was of registering events.