用 pyOpenGL 显示 md2 模型动画的小程序

软件和网站开发以及相关技术探讨
回复
头像
Hello World!
帖子: 3051
注册时间: 2008-06-23 15:19
系统: ���������
来自: 北欧某国
联系:

用 pyOpenGL 显示 md2 模型动画的小程序

#1

帖子 Hello World! » 2010-01-05 14:52

最近开始使用 pyOpenGL 编一些小游戏,像其他的3d游戏一样,我的程序会用到一些会动的3d模型,考虑到md2模型比较简单,我决定使用md2模型。

我在网上找了一些读取md2文件的源代码,虽然不能全看懂,好在我从这些代码中了解到了md2文件的格式。

写这个小程序的过程基本上很顺利,只是一开始碰到了对python的文件操作不熟悉的障碍,毕竟我是刚刚开始学python,对python的一些基础知识学的还不扎实。然后又发现我把OpenGL的知识忘掉不少,不过把OpenGL捡起来不是很难。最后的问题是python的效率有些低,于是又看了一些pyOpenGL的demo,我又开始使用顶点数组和numarray来提高性能。现在这个程序差不多可以直接使用了。
图片图片图片
以下是源代码的链接:http://dl.dropbox.com/u/3364164/md2.tar.gz(感谢 dropbox 提供的空间)

程序不是很长,只有 342 行。如果想看效果,只要将程序解压缩后,执行 python demo.py [md2模型名称] 就好了。

如果觉得动画速度太快了,可以在命令后面加上 -f 2 或者 -f 3 。

滚动鼠标滚轮,可以调整摄影机的距离。

差点忘了,在运行脚本之前,请先安装 pyOpenGL 和 NumArray 。
http://noie.name 网站改版中。
头像
suncanoe
帖子: 476
注册时间: 2005-12-07 0:17
来自: 昆明

Re: 用 pyOpenGL 显示 md2 模型动画的小程序

#2

帖子 suncanoe » 2010-01-05 22:15

不行,运行不起来,那两个依赖,我已经安装了,运行是提示如下:
Segmentation fault
Two wrongs do not make a right.
blog: http://hi.baidu.com/bookpage
头像
Hello World!
帖子: 3051
注册时间: 2008-06-23 15:19
系统: ���������
来自: 北欧某国
联系:

Re: 用 pyOpenGL 显示 md2 模型动画的小程序

#3

帖子 Hello World! » 2010-01-06 9:49

suncanoe 写了:不行,运行不起来,那两个依赖,我已经安装了,运行是提示如下:
Segmentation fault
您试试把文件中的.pyc文件删掉再运行会怎么样?
http://noie.name 网站改版中。
头像
hawksparrow
帖子: 58
注册时间: 2009-08-01 13:01

Re: 用 pyOpenGL 显示 md2 模型动画的小程序

#4

帖子 hawksparrow » 2010-01-06 11:06

pyOpenGL 和 NumArray 是怎么安装的 :em26
头像
Hello World!
帖子: 3051
注册时间: 2008-06-23 15:19
系统: ���������
来自: 北欧某国
联系:

Re: 用 pyOpenGL 显示 md2 模型动画的小程序

#5

帖子 Hello World! » 2010-01-06 23:19

sudo apt-get install python-opengl python-numarray .
http://noie.name 网站改版中。
头像
hawksparrow
帖子: 58
注册时间: 2009-08-01 13:01

Re: 用 pyOpenGL 显示 md2 模型动画的小程序

#6

帖子 hawksparrow » 2010-01-07 10:15

代码: 全选

sparrow@sparrow-laptop:~/md2$ python demo.py
段错误
头像
Hello World!
帖子: 3051
注册时间: 2008-06-23 15:19
系统: ���������
来自: 北欧某国
联系:

Re: 用 pyOpenGL 显示 md2 模型动画的小程序

#7

帖子 Hello World! » 2010-01-07 12:28

hawksparrow, 奇怪了。。。我在 ubuntu 9.10 64 下很正常,在虚拟机中的 winxp 下也很正常。您能告诉我您用的是什么系统吗?
还有,试试把文件中的.pyc文件删掉再运行会怎么样?
http://noie.name 网站改版中。
头像
hawksparrow
帖子: 58
注册时间: 2009-08-01 13:01

Re: 用 pyOpenGL 显示 md2 模型动画的小程序

#8

帖子 hawksparrow » 2010-01-07 16:14

Hello World! 写了:hawksparrow, 奇怪了。。。我在 ubuntu 9.10 64 下很正常,在虚拟机中的 winxp 下也很正常。您能告诉我您用的是什么系统吗?
还有,试试把文件中的.pyc文件删掉再运行会怎么样?
Ubuntu 9.10 32 删除.pyc也跑不起来
stilling2006
帖子: 5
注册时间: 2009-05-22 21:49

Re: 用 pyOpenGL 显示 md2 模型动画的小程序

#9

帖子 stilling2006 » 2010-02-18 15:42

非常不错~看来我在qt下用c++应该也可以实现~
http://hi.baidu.com/bleach007

一个迷失在程序里的小孩……
回复