如何使用visual studio c ++ 2005编写一个简单的游戏

时间:2009-05-28 05:38:03

标签: visual-studio-2005

我在我的机器中安装了visual studio 2005,我想开始研究我的c ++技能,并且我想做一个简单的游戏,例如。太空入侵者!

我想知道在没有任何其他外部库的情况下使用vs2005可以完成整个游戏吗?

那些使用普通vs2005创建简单游戏的简单示例/链接?

加特

7 个答案:

答案 0 :(得分:2)

如今,大多数Windows游戏都使用微软免费提供的DirectX SDK。 SDK本身附带了大量的帮助文件和教程,可以帮助您。

然而,我建议初学者使用XNA和C#来学习概念,而不是使用C ++。

答案 1 :(得分:2)

我的回答是“是”。但是,它不只是在VS中使用C ++。您需要使用Win32 API或MFC来学习Windows编程,以处理用户的输入(窗口消息)和图形(GDI)以进行游戏开发。如果你想更加认真地对待游戏,你还需要学习DirectX,它是一组API,可以更有效地处理多媒体程序(包括游戏)。

所以,如果你只想制作像“太空入侵者”这样的游戏,那么开始实际的游戏编程可能需要很长时间,因为你需要学习所有这些基本的东西。开发此类游戏有更方便的框架,例如pygame(python)和xna(C#)。这取决于您对项目的意图和时间限制。祝你好运!

答案 2 :(得分:1)

在开发没有库的简单游戏之后,您可以考虑查看Qt库以了解它们可以为您做些什么,因为在这种情况下,它们将为您完成大量的样板工作。您还具有能够开发跨平台而不需要稍后移植的额外优势。 Qt可以在这里找到:http://qt.nokia.com/

答案 3 :(得分:1)

是的,你可以使用C ++和vs2005制作一个简单的游戏而不需要任何其他外部库。 另一方面,使用某些外部库(尤其是图形,控件和声音)会更快更容易,或者您必须自己复制该功能。 (如果你没有特别的理由使用vs2005,你应该得到最新的编译器)

如果您的问题从C ++中脱离出来并且失去一些时间学习一些库API,那么它将更快更容易,或者让您的编程项目更简单,直到您对C ++语言感到满意为止。另一个问题是规划,如果你确实有一个项目写下你打算如何去做的骨架,选择你不知道的位,并在开始使用代码之前先研究一下。

至于外部库的选择,如果你可以远离平台相关的代码/库,即使它看起来更复杂(从长远来看对你来说更有用),你将得到最好的服务,作为一个简单的例子你可以交易DirectX for OpenGL稍后会更复杂但更便携但是这一切都取决于你打算在你的游戏上有多复杂,你可以选择一个更通用的图形引擎(Ogre 3D http://www.ogre3d.org/ LGPL)并以某种方式绕过那些低水平的知识(即使你不直接使用它,学习OpenGL的基础也将是一个很好的投入时间。)

您应该根据他们为您提供的自由(许可和可移植性需求)以及稳定性和成熟度来选择外部库。如果您的目的是学习并拥有更深层次的控制权,请避免使用封闭源,或GPL,因为它限制您生成GPL代码(了解许可证)。您还应该避免平台依赖...

答案 4 :(得分:0)

据我所知,VSC ++并不是什么特别的,而是一种编码/构建等等的方式。所以,这应该足以制作游戏。如果我是你,我将首先在网上搜索c ++游戏并下载他们的源代码。扫描它以查找常用策略/设计并运行一个来测试您的VSC ++是否设置正确。之后开始编写自己的游戏。

//编辑
this这样的网站可以在线免费获取源代码等。

答案 5 :(得分:0)

我曾经使用GDI +进行侧面滚动拍摄 - 我每秒获得大约20到30帧的动画,看起来相当不错(这是在Visual Basic .NET,顺便说一下)。尝试使用TextureBrush类 - 这是easy& amp;的秘诀。快速动画。

然而,我的知识有点过时了。毫无疑问,你会得到这里的人说你应该下载Visual Studio 2008的Express Edition并使用WPF(可能不是一个坏主意,尽管我从未接触过WPF)。

答案 6 :(得分:0)

如果您打算创建除简单文本游戏以外的任何东西,我会考虑使用外部库,因为您需要某种方式来显示对象,控制它们,您可能可以自己编写所有这些东西,但我觉得你会使用像SDL http://lazyfoo.net/SDL_tutorials/index.php这样的库可能会获得更多,如果你选择采用这条路径,可以在那里找到一些很好的教程。

如果你想编写自己的功能,可以直接编辑SDL表面的位,这样它就可以提供一个简单的介质来设置窗口和接收输入,同时仍然让你可以控制到什么像素正在做什么