Panda3D包含一个称为场景图Scene Graph的数据结构。场景图Scene Graph 是包含所有需要渲染的对象的树。树的根是一个名为render的对象。在首次插入到场景图Scene Graph之前,不会渲染任何内容。
为了将草景模型安装到场景图中,我们使用reparentTo()方法。这将设置模型的父级,从而使其在场景图中占有一席之地。这样做会使模型在场景中可见。
最后,调整模型的位置和比例。在这个特殊的例子中,环境模型有点太大,对于我们的目的来说有些偏移。setScale()和setPos()过程重新缩放模型并使其居中。
Panda3D使用“地理”坐标系,其中位置(-8,42,0)表示地图坐标(8,42)和高度0。如果您习惯于OpenGL/Direct3D坐标,则以经典姿势举起右手,拇指为X,手指为Y,手掌为Z,朝向您;然后向后倾斜,直到您的手水平,手指指向别处,手掌朝上。在Panda3D中向前移动是Y坐标的正变化。
岩石和树似乎在盘旋。相机略低于地面,背面剔除使我们看不见地面。如果我们重新定位相机,地形会看起来更好。
#!/usr/bin/env python3
# -*- coding: utf-8 -*-