rendered paste bodyimport direct.directbase.DirectStart
from direct.task import Task
from direct.actor import Actor
from pandac.PandaModules import Filename,Point2,Texture
from libpgmm import GeoMipTerrain
base.setFrameRateMeter(True)
terrain=GeoMipTerrain("myTerrain")
terrain.setSz(100)
terrain.setBlockSize(64)
terrain.setMinLevel(3)
terrain.setFactor(100)
terrain.reparentTo(render)
terrain.setHeightfield(Filename("stronghold.png"))
terrain.setTexture(loader.loadTexture("grass.jpg"))
terrain.setFocalPoint(base.camera)
terrain.generate()
#the dummy node, thats what the camera will rotate around
dummyNode=render.attachNewNode("dummy")
dummyNode.setPos(256,256)
#reparent camera to the dummy node,
#with distance 200.
base.camera.reparentTo(dummyNode)
base.camera.setX(200)
def SpinCameraAndUpdateTerrainTask(task):
terrain.update()
angledegrees = task.time * 6.0
base.camera.setH(base.camera.getH()+angledegrees)
return Task.cont
taskMgr.add(SpinCameraAndUpdateTerrainTask, "SpinCameraAndUpdateTerrain")
run()