Direct-X在C ++游戏编程

我相当新的c + +编程任何人都可以请告诉我如何DirectX的SDK是有益的,它是如何工作的,我们如何使用它在游戏编程。我下载了它,我发现了很多头文件和文档也告诉一些关于游戏编程。

DirectX是一个库(真正的大量集合类),可以让你与视频适配器,声卡,键盘,鼠标,游戏杆等“交谈”。它可以让你更高效地完成其他“标准” Windows功能。 这一点很重要,因为游戏需要获得所有性能提升 – 而DirectX在这方面有很多提供。 特别是当涉及图形编程时,因为它具有使您能够使用图形卡的3D加速功能的功能。 Windows在默认情况下没有这样的功能。

DirectX SDK包含:

  • 有关DirectX所有功能的文档;
  • C ++语言教程,如果你什么都不知道的话,可以让你开始学习;
  • 示例应用程序
  • 必要的.h和.lib文件将DirectX支持添加到您的程序中;
  • DirectX的调试版本(我想,我不太确定这个)
  • DirectX redist,你可以包含你自己的程序。

如果你对C ++没有足够的了解,那么从DirectX的开发开始将是非常困难的,因为这两者之中的任何一个都有相当大的学习曲线。

顺便说一句 – 你没有从微软的网页上下载最新版本,而不是从一些网络家伙5年的副本,对不对?

你的问题是广泛的。 DirectX可以帮助你以更多的方式创建游戏,你可以(想想你是新的)想象。

渲染(把东西放在屏幕上),输入(响应用户鼠标/键盘上发生的事情),网络(多人),读取文件,字体,3D模型,声音。 仅举几例。

我强烈建议你不要直接用DirectX写一些东西。 从中获得好的东西是一项非常复杂的任务。 不要重新发明轮子,除非你打算更多地了解轮子。 (这里的车轮是DirectX。)

如果你只是想起床并运行“魔兽世界2”,我建议你使用预先制作的DirectX实现(通常称为游戏引擎),如Ogre , Irrlicht或HGE (更简单,但只适用于2D游戏)。

祝你好运,不要放弃,欢迎回来,以您的第一个真正的问题。 🙂

我想补充一点,“游戏编程”不需要图形编程。 与OpenGL一样,DirectX也为创建图形应用程序提供了基础。 但是,如前所述,这是非常低的水平。

作为一名专业游戏开发人员,我不会建议学习C ++之后再跳入DirectX。 这是一个艰难的努力,将缓慢地移动,并为您提供继续下去的动力。 对于你的未来,这绝对是一件值得记住的事情。 但是,目前来说,玩一些完整的东西会更有益,可能从游戏编程开始。

注意:除了C ++技能之外,你还需要一些数学才能。 线性代数和三角是主要关心的问题。

看看天使这样的轻量级引擎。 这是一个相当直观的起点,足够小,你可以完全理解其中发生的事情。

与往常一样,尝试在一开始就为自己做一些小的编辑和项目,然后继续做更​​大更糟糕的任务!

祝你好运!

我不完全确定你在问什么,但是Frank Luna关于DirectX 的书是一个很好的介绍。

但是,如果您是C ++的新手,DirectX对于您所寻找的内容可能太低级了。 我的意思是,你想创造一个多彩的旋转立方体,还是你想做一个半完整的游戏? 假设后者,您可能需要一个抽象出DirectX或OpenGL低级细节的框架。 为此,我可以衷心推荐Ogre 3D 。 只有教程才会让你知道它,然后运行。

阅读: 使用Direct X 2002进行3D游戏编程的艺术 。

书图像