panda3d 入门
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
PANDA3D入门
----------古道天马
一、前言
这个就是我自学的总结。
因为刚开始瞧PANDA3D的教程,发现在瞧天书,静下心来学后,感觉其实就是教程不够深入浅出,没有照顾我们这些一点基础都没有的初学者。因此,把我自学的一点心得记录下来,便于自己及她人参考。
学习PANDA3D的目的就是编制一个三维的设备管理程序。嫌C#运行效率低下,C++的语言不够简练,瞧好了PYTHON编程。百度了一下,PYTHON的3D图形库有PYGLET,PANDA3D,BLENDER等,最初就是想用BLENDER,但就是BELNDER侧重于建模,于我的用途不太符合。改用PYGLET的,瞧中它也就是很简练的库,后来发现PYGLET缺乏维护,教程也少。因此转向PANDA3D,PANDA3D的教程以及维护要完善的多。
但就是按网上的说法,学习曲线就是比较陡峭的。果然,刚开始时一头雾水,经过查阅官方教程后,又通过自己一点点的实验与摸索,稍微有点头绪了。顺便提一下,我的PYTHON与PANDA3D就是同步学的,都在初级阶段。这里侧重写PANDA3D的特点,PYTHON的略微提到些。
注意:这不就是手册,很多进阶的东东请查官网手册。
二、安装
我的系统就是WIN7 64位,安装PYTHON的2、7、6版本32位版,
PANDA3D的1、8、1版本(自带2、7、3版本的PYTHON)。
打开“开始”菜单,运行PANDA3D下的范例文件,第一个范例就是
ASTEROIDS,小行星。
点击“Run Asteroids”,出现游戏界面
这说明PANDA3D内含的PYTHON2、7、3已经可以运行了。
现在,大家肯定都迫不及待的要瞧瞧源代码了吧。
点击View Source Code
出现文件夹
点击Tut-Asteroids、py,结果出现提示没有找到模块,说明您的PYTHON2、7、6还没找到PANDA3D的模块。那么按下面的方法做。
在C:\Python27\Lib\site-packages的目录下,建一个PANDA、PTH的文件,用写字本添加下列文本(这里的文件路径就是默认的,如果您修改过的话,根据实际情况调整)
C:\Panda3D-1、8、1
C:\Panda3D-1、8、1/direct/src/actor
C:\Panda3D-1、8、1/direct/src/cluster
C:\Panda3D-1、8、1/direct/src/controls
C:\Panda3D-1、8、1/direct/src/directbase
C:\Panda3D-1、8、1/direct/src/directdevices
C:\Panda3D-1、8、1/direct/src/directnotify
C:\Panda3D-1、8、1/direct/src/directscripts
C:\Panda3D-1、8、1/direct/src/directtools
C:\Panda3D-1、8、1/direct/src/directutil
C:\Panda3D-1、8、1/direct/src/distributed
C:\Panda3D-1、8、1/direct/src/extensions
C:\Panda3D-1、8、1/direct/src/extensions_native C:\Panda3D-1、8、1/direct/src/ffi
C:\Panda3D-1、8、1/direct/src/fsm
C:\Panda3D-1、8、1/direct/src/gui
C:\Panda3D-1、8、1/direct/src/interval
C:\Panda3D-1、8、1/direct/src/leveleditor
C:\Panda3D-1、8、1/direct/src/motiontrail
C:\Panda3D-1、8、1/direct/src/particles
C:\Panda3D-1、8、1/direct/src/physics
C:\Panda3D-1、8、1/direct/src/pyinst
C:\Panda3D-1、8、1/direct/src/showbase
C:\Panda3D-1、8、1/direct/src/showutil
C:\Panda3D-1、8、1/direct/src/task
C:\Panda3D-1、8、1/direct/src/tkpanels
C:\Panda3D-1、8、1/direct/src/tkwidgets
C:\Panda3D-1、8、1/bin
再次点击Tut-Asteroids、py,瞧瞧就是否成功运行。
三、正式开始
现在安装工作已经完成,我们可以正式开始了。
右键Tut-Asteroids、py文件,用IDLE打开,我们可以瞧到源程序,按F5可以调试运行。
不过拿这个源程序作为我们的开端,显然就是不合适。
3、1 第一个PANDA程序
现在我们开始编写第一个PANDA3D程序。
第一个程序,当然要简单粗暴些。
新建一个TEST、PY(注:PANDA3D似乎不支持中文目录,所以您的程序不要放在中文目录下),
用IDLE编辑(原则上您也可以用其它文本编辑器编辑)
输入以下两行
import direct、directbase、DirectStart
run()
CTRL-S保存,F5运行(顺便提一下,PYTHON2、7以前的IDLE就是不支持右键复制黏贴的,不用快捷键会很蛋疼,2、7的版本就是懒人的福音)
出现一个灰色的空窗口,比较简陋些,不过作为第一个程序已经够了。
根据官网的解释,
第一句import direct、directbase、DirectStart,建立ShowBase的实例
第二句run(),循环运行ShowBase实例,监视键盘鼠标输入,并反馈。
(试试:如果删了RUN()会咋样?)
老版本的PANDA的语法就是这样写的。
from direct、showbase、ShowBase import ShowBase
p3dApp = ShowBase()
p3dApp、run()
这里的ShowBase就是显式的,新的语法里都简化了。有兴趣的话,您可以打开C:\Panda3D-1、8、1\direct\directbase瞧瞧里面的源程序。
不过,本着初学者够用就行的态度,咱们就不用深究这些了,只要记住这两句的作用如下: