OpenGL或Direct3D用于新的Windows游戏项目?或者是其他东西?

Ant*_*emi 10 windows opengl directx

我正在Windows上开始一个爱好游戏项目,它将大量使用3D图形效果.它很可能是用C++编写的.

我应该使用OpenGL或Direct3D作为我的图形后端吗?为什么?

或者我应该使用现成的图形引擎,如OGRE 3D?哪一个?

一些"如何开始"链接将是有用的.(关于任一技术,或两者兼而有之.)

编辑 - 是的我真的是指Direct3D,而不是DirectX,感谢graham.reeds的澄清

编辑 - Mihai Lazar指出我也可以使用像OGRE 3D这样的图形引擎.编辑问题以反映这种选择.

Eug*_*ota 14

从OpenGL开始,因为它上面有很好的教科书和其他在线参考资料.一旦你开始编写3D游戏,你就可以自己做出判断.

完成一个游戏,即使它真的很愚蠢和简单只是为了让你前进,比选择合适的图书馆更重要.随着过剩,您可以在一天内获得一些3D对象以显示在屏幕上.从NeHe的教程开始.

  • NeHe的教程已经过时了; 我不推荐他们.我会推荐维基百科上记载的经典OpenGL书籍:http://en.wikipedia.org/wiki/OpenGL#Documentation (3认同)

小智 8

如果您愿意考虑C#,请好好看看XNA.对于业余爱好项目,假设您想要的是实际启动并运行游戏而不是修补复杂的API代码,我不能高度推荐它.它越来越成熟,文档齐全,与D3D/OpenGL相比,非常快速和易于使用.作为奖励,凭借每年100美元的创作者俱乐部会员资格,您甚至可以使用它为Xbox 360开发游戏.

  • 这是迄今为止最好的答案.C#__is__初学者现象.您也可以通过C#访问OpenGL,但是在我看来,通过XNA的D3D是__by far__最好的学习方式 (2认同)

Mih*_*zar 7

您还可以将您的工作建立在食人魔上,他们自己提供抽象,并且他们拥有非常好的工具.由于这是一个已经存在超过6年的项目,我认为.基础库并不是真正适合初学者,因为你需要了解一些软件设计,但我发现很多人都使用它来编写游戏.

它比学习更重的东西更安全,更快,因为它已经被抽象化了.再过几个月你就会说3D术语.还有一本书可以帮助你开始使用Ogre,我认为它现在已经有点老了,但无论如何都是一个起点.