我似乎无法在任何地方找到这个问题的答案。我意识到你必须使用pyOpenGL或类似的东西做OpenGL的东西,但我想知道如果它可能做非常基本的3D图形没有任何其他依赖。pyGame做3d吗?
21
A
回答
15
不,Pygame是SDL的封装,它是一个2D API。 Pygame不提供任何3D功能,可能永远不会。
Python的3D库包括Panda3D和DirectPython,虽然它们可能相当复杂,特别是后者。
11
那么,如果你可以做2D,你总是可以做3D。所有的三维真的是倾斜的二维表面给人的印象是深入的东西。真正的问题是它可以做得很好,你会想要吗?在浏览pyGame文档一段时间后,它看起来只是一个SDL包装器。 SDL不适用于3D编程,所以真正问题的答案是,不,我甚至不会尝试。
2
Python Soya可以在pygame表面上渲染3D图形。
6
只能与pygame的做伪3D游戏(如“毁灭战士”):
http://code.google.com/p/gh0stenstein/
,如果你浏览网站pygame.org您可能会发现更多与蟒蛇进行“3D”游戏和pygame。
但是,如果你真的想进入3D编程,你应该看看OpenGl,Blender或任何其他真正的3D库。
1
如果你想3D投影功能和所有的东西,你必须使用一个3D API,但如果你想要做一个基本的3D外观,我建议彼得的网站教程:http://www.petercollingridge.co.uk/pygame-3d-graphics-tutorial
0
Pygame中从未本意要做3D,但是有一种方法可以用任何2D图形库来做3D。所有你需要的是以下功能,它将3d点转换为2d点,这使您可以通过在屏幕上绘制线条来制作任何3D形状。
def convert_to_2d(point=[0,0,0]):
return [point[0]*(point[2]*.3),point[1]*(point[2]*.3)]
这被称为伪3d或2.5d。这可以完成,但速度可能会很慢,而且很难完成,所以建议您使用一个用于3d的库。
相关问题
- 1. Python pygame导入3d
- 2. pygame的3D魔方翻译,移动
- 3. 做新的pygame曲面必须是.convert()ed吗?
- 4. 你必须安装pygame才能运行pygame游戏吗?
- 5. ExtJS支持3D图表吗?
- 6. icarbotsel启用了3D轮吗?
- 7. 它支持3D饼图吗?
- 8. papervision 3D开发活着吗?
- 9. 如何使用pygame绘制3D形状(无其他模块)
- 10. Pygame和3D的东西没有外部库
- 11. 3D引擎对我做什么?
- 12. 如何用JavaScript做3D悬停?
- 13. 如何用qt 3d做任何事情?
- 14. Unity 3D Undoes我所做的更改
- 15. 作为cronjob可以运行Pygame吗?
- 16. Pygame可以超越他们的Rects吗?
- 17. pygame可以使用矢量艺术吗?
- 18. 我可以使用HTML5/js沿着z轴做3d旋转动画吗?
- 19. Zend_Mail = 0D = 0A = 3D = 3D = 3D = 3D = 3D
- 20. PGU(Pygame GUI API)可以与pgs4a(Android的PyGame子集)一起使用吗?
- 21. 我可以在pygame窗口的标题栏中更改pygame徽标吗?
- 22. Monotouch做图形吗?
- 23. 做IO时做细块主线程吗?
- 24. 我可以旋转3D球UIImage吗?
- 25. Iphone OpenGL:glOrthof vs glFrustumf。 glOrthof不是3D吗?
- 26. Firefox 4支持3D转换吗?
- 27. 我可以旋转3D车对象吗
- 28. omnet ++ 5.0支持3D编程吗?
- 29. 使用css将2D Logo变成3D吗?
- 30. pygame/python sprite不移动?我做错了什么? (没有错误)
这是什么问题? Pygame不会做3D。 PyOpenGL可以做3d。重新阅读他的问题。 – Kylotan 2011-09-23 12:06:29
是的,我现在正在写一个3D游戏。而我甚至没有使用OpenGL。我正在使用像Horst JENS发布的方法。 – Cnorwood7641 2014-04-11 20:04:00