我正在尝试快速学习OpenGL ES(我知道,我知道,但这些都是给我带来的压力)而且我已经阅读了很多,在渲染基本模型方面取得了很大的成功,一些基本的灯光和'一些'纹理成功。
但这绝对是所有OpenGL ES教程结束的时刻,他们从不会说真实生活应用可能需要的更多内容。所以我有几个问题,我希望不是太难。
人们如何从他们最喜欢的3D建模工具中将3d模型带入iPhone / iPad应用程序?我看过几篇博客文章,人们为像Blender这样的工具编写了一些python脚本来创建你可以使用的.h文件,这是人们每次都做的事情吗?或者“大”工具套件(3DS,Maya等)是否具有导出功能?
假设我的模型在一个漂亮的.h文件中,所有顶点,纹理点等都排成一行,如何让我的模型(比如一个基本的人)走路?或者更一般地说,你如何制作模型的“部分”动画(仅限腿部,转头等等)?他们是否需要成为许多不同小型模型的大规模混搭,或者你可以将这些天的动画预制成“模型”(不知何故)
真正出色的iPhone游戏(确定)令人难以置信的复杂,但人们(游戏开发公司)似乎如何管理设计师/开发人员的工作流程?当然不是所有的动画,纹理等都是以编程方式完成的。
我希望这些不是愚蠢的问题,实际上,我试图研究如何制作的应用程序非常简单,只是一个基本的3D模型,我希望能够使用触摸进行平移/倾斜。有没有人做过/见过这样的事情,我可能会读到它?
感谢您提供的任何帮助,我感谢所有类型的大小反应:)
干杯, 标记
答案 0 :(得分:2)
许多人在开始OpenGL开发时感到惊讶的是,模型没有“OpenGL文件格式”,更不用说动画了。 (例如,DirectX支持立即支持.x文件格式)。这是因为OpenGL在某种程度上处于较低级别。当然,正如tm1rbrt所提到的,有很多库可用。如果您只需要几何体,则可以轻松创建自己的文件格式。当您想要考虑动画和阴影时,事情变得更加复杂。看看Collada这类事情。
,动画可以通过多种方式完成。角色通常使用骨骼动画进行动画处理。看一下cal3d库作为起点。
你肯定想花些时间为你的内容创建一个好的管道。艺术家必须拥有一套工具来创建他们的模型和动画,并在游戏引擎中测试它们。艺术家还必须在多边形和阴影方面指导发动机的极限。有时,复杂的自定义编辑器会以符合您特定需求的方式编码以创建关卡,世界等。
答案 1 :(得分:2)
试图解释为什么这个问题的答案总是含糊不清。
OpenGLES级别非常低。它的全部内容是将三角形推向屏幕并填充像素,而不是其他任何基本的东西。
正如您所意识到的,创建游戏所需要的是大量用于管理资产,加载对象和世界,管理动画,纹理,声音,网络,物理等的代码。
这些部分是“游戏引擎”。
开发公司有自己的偏好。有些人喜欢自己开发游戏引擎。大多数人使用购买的技术,开源和内部构建的技术和工具的一些组合。市场上有很多引擎,每个人都有自己最好的意见......
使用的工作流程和工具与具有严格角色和大预算的大型公司,以及为完成游戏所需做的事情的几个男人和女孩的小型独立团队有很大不同: - )
对于业余爱好者和独立开发者来说,有几种廉价的开源引擎可以使用不同的成熟度和大量的文档/支持。同样,你必须环顾四周,直到找到你喜欢的。
在游戏引擎之上,您编写的游戏代码使用游戏引擎(以及您可能需要的任何其他库)来创建您想要制作的任何游戏。
答案 2 :(得分:1)
编写或使用模型加载库。或者使用现有的图形库;这将有例程来加载模型/纹理。
动画模型在3d模型编辑器中使用骨骼完成。图形库将负责为您移动顶点等。
不,艺术家创造艺术,程序员创造引擎。
This is a link to my favourite graphics engine.
希望有所帮助