1.7.0 performance issues

I’ve something ready for you if you like:

from math import pi, sin, cos

from direct.showbase.ShowBase import ShowBase
from direct.task import Task
from direct.actor.Actor import Actor
from direct.interval.IntervalGlobal import Sequence
from panda3d.core import Point3

class myworld(ShowBase):
  def __init__(self):
    ShowBase.__init__(self)

    environ = self.loader.loadModel("models/environment")
    environ.reparentTo(render)
    # Apply scale and position transforms on the model.
    environ.setScale(0.25, 0.25, 0.25)
    environ.setPos(-8, 42, 0)

    # Add the procedure to the task manager.
    self.taskMgr.add(self.spinCameraTask, "SpinCameraTask")

    # Load and transform the panda actor - Note that is mandatory to store the actor object in a non volatile member otherwise you won't see it animate.
    self.pandaActor = Actor(
      "models/panda", {"walk": "models/panda-walk"}
    )
    self.pandaActor.setScale(0.2, 0.2, 0.2)
    self.pandaActor.reparentTo(render)
    # Loop its animation.
    self.pandaActor.loop("walk")

    # Create the four lerp intervals needed for the panda to walk back and forth.
    pandaPosInterval1 = self.pandaActor.posInterval(
      9, Point3(0, -10, 0), startPos=Point3(0, 10, 0)
    )
    pandaPosInterval2 = self.pandaActor.posInterval(
      9, Point3(0, 10, 0), startPos=Point3(0, -10, 0)
    )
    pandaHprInterval1 = self.pandaActor.hprInterval(
      1, Point3(180, 0, 0), startHpr=Point3(0, 0, 0)
    )
    pandaHprInterval2 = self.pandaActor.hprInterval(
      1, Point3(0, 0, 0), startHpr=Point3(180, 0, 0)
    )

    # Create and play the sequence that coordinates the intervals.
    pandaPace = Sequence(
      pandaPosInterval1, pandaHprInterval1, pandaPosInterval2,
      pandaHprInterval2, name="pandaPace"
    )
    pandaPace.loop()

  # Define a procedure to move the camera.
  def spinCameraTask(self, task):
    angleDegrees = task.time * 6.0
    angleRadians = angleDegrees * (pi / 180.0)
    self.camera.setPos(20 * sin(angleRadians), -20.0 * cos(angleRadians), 3)
    self.camera.lookAt(self.pandaActor)
    return task.cont

world=myworld()
world.run()