我是图形新手,我必须为仅使用 GLUT 或 OpenGL 的任务制作建筑物模型。
基本上要制作校舍的模型(只有外部部分),我不知道从哪里开始。到目前为止,我已经绘制了多边形,其他使用 GLUT 的形状,没有任何有多个形状的东西。到目前为止,所有的绘图都是使用线、点、多边形和数学。
你能给我一个想法吗?
更新:我只想知道我可以遵循哪些步骤来完成它。一些参考链接会很棒!
您可以使用建模程序创建模型,然后使用COLLADA等工具将模型导入 OpenGL。
像这样手动编码复杂对象的问题在于,仅仅定义对象的顶点就需要大量的代码行。
人们通常使用 3D 建模器软件来构建复杂的 3D 对象,例如 Maya、3DSMax 或 Blender,然后以一种格式将它们导出以读取到您的 OpenGL 应用程序中。
想想你想让你的建筑看起来像什么,想想你需要渲染什么样的三角形才能做到这一点。您可以在某种建模软件中绘制整个东西,然后将其导入 OpenGL,或者您可以自己提出三角形/纹理并在 OpenGL 中手动完成。
建筑物的外部可能会在整个事物(砖块等)上具有相似的纹理,然后会有窗户、门和屋顶。也许某种标语上写着“学校大楼”。考虑到这一切,你希望你的建筑看起来像什么,然后想想你需要什么纹理来绘制这些东西。
例如,假设您正在建造一栋盒子形状的砖砌建筑,带有一扇门和几扇窗户。我会为砖使用一个纹理,然后首先绘制一整面砖墙。然后,我会为窗户使用灰色/蓝色的纹理,并将其绘制在砖墙上。然后我会为门做同样的(不同的纹理)。
想想设计,然后尝试一下——实验。祝你好运!
我曾经有过类似的作业。我通过使用 Google SketchUp 创建模型,然后将模型导出到 .3ds 文件并使用我的程序来渲染它。
我选择 Google SketchUp 是因为它是我尝试过的工具中最容易使用的。另外,他们为学生提供折扣。您也可以使用 Blender,它是免费的,但要花太多时间来学习恕我直言。3dsMax 太贵了,付不起家庭作业的费用。
要将模型加载到我的程序中,我使用了 Assimp库。