在Python中以正交方式渲染3D模型

时间:2012-11-03 11:32:33

标签: python 3d isometric

我想用Python编写一个工具,帮助我从3D模型中创建等距切片。你知道,我不是一个非常精通的艺术家,而且免费的三维模型很实用,创造像桌子或椅子这样的东西在3D中比在绘画中更容易。

此脚本将在正投影中加载3D模型,并从四个方向拍摄照片,以便在游戏中使用。我在Blender尝试了这个,但结果不一致,很难控制,需要很长时间来创建简单的精灵。

滚动我自己的脚本可能会让我做一些整洁的事情,特别是批量生成,可能是在纹理变化,阴影等方面。游戏本身可能是用Python tpp制作的,所以也许我可以动态生成。 (编辑:当他们面对相机时自动创建切出的透明墙)

现在我的问题是,Python库可以做什么这样的事情?我已经检查了Pyglet和Panda3D,但我甚至无法加载模型,更不用说将其设置为正交投影。

2 个答案:

答案 0 :(得分:1)

我找到了这段代码:

www.pygame.org/wiki/OBJFileLoader

它让我轻松地从Blender加载并显示一个多维数据集的.obj文件。它运行PyOpenGL所以它应该让我做OpenGL可以做的一切。从来不知道OpenGL是如此低级,没有意识到我必须编写自己的加载器和所有东西。

无论如何,我很确定我可以将其修改为等距投影,旋转对象并抓取镜头并将它们组合成精灵。谢谢你们!

答案 1 :(得分:0)

既然您查看了Panda3D - 如果您可以将模型转换为'egg'格式(blender / maya可能会这样做),那么您就可以导入它。

https://www.panda3d.org/manual/index.php/Loading_Models

https://www.panda3d.org/manual/index.php/Models_and_Actors

http://www.panda3d.org/manual/index.php/Converting_from_Blender

注意:这是一个流行的搜索引擎中的'python 3d mesh loader' - 这看起来对我很有用。我现在需要尝试安装它和一些代码...