Hi everyone<br><br>So, I&#39;ve been trying the suggestion that was put forward when I asked my earlier question about having two main loops in my game (one for the rendering engine, one for Twisted).<br><br>Basically, what I&#39;m doing is this:
<br><br>def renderFrame():<br>&nbsp;&nbsp;&nbsp; ogreLock.acquire()<br>&nbsp;&nbsp;&nbsp; ogre.WindowEventUtilities.messagePump()<br>&nbsp;&nbsp;&nbsp; root.renderOneFrame()<br>&nbsp;&nbsp;&nbsp; ogreLock.release()<br><br>renderTask = task.LoopingCall(renderFrame)<br>renderTask.start
(0.01, False)<br>reactor.run()<br><br clear="all">I&#39;m using the Python implementation of the Project Darkstar client, which is built around Twisted.<br><br>Unfortunately, I&#39;m running into two problems.<br><br>The first is that I appear to be losing messages, which makes me wonder if Twisted isn&#39;t getting enough cycles and is somehow missing incoming data.
<br><br>The second is that my application hangs randomly.&nbsp; When I call renderFrame() in a simple loop (no Twisted), everything is rock-solid.<br><br>Has anyone done anything like this before (realitime 3D application with Twisted), or am I breaking new ground here?
<br><br>Any suggestions would be much appreciated...<br><br><br>-- <br> &nbsp; Bernie Roehl<br> &nbsp; Mail: <a href="mailto:broehl@gmail.com">broehl@gmail.com</a>