我是一名相对新手的C++程序员,已经在游戏行业工作了几个月。我希望重新进入这个行业,并且知道为了进入游戏制作领域,需要成为一个非常优秀的C++程序员(主要是因为竞争非常激烈)。我想知道是否有任何非常好的在线网站可以帮助我达到这个目标。基本上,我正在寻找一些可以帮助我掌握C++概念并通过编程实例练习成为一名优秀的编码者的东西。
我是一名相对新手的C++程序员,已经在游戏行业工作了几个月。我希望重新进入这个行业,并且知道为了进入游戏制作领域,需要成为一个非常优秀的C++程序员(主要是因为竞争非常激烈)。我想知道是否有任何非常好的在线网站可以帮助我达到这个目标。基本上,我正在寻找一些可以帮助我掌握C++概念并通过编程实例练习成为一名优秀的编码者的东西。
Scott Meyers的书籍:"Effective C++","More Effective C++"和"Effective STL"对您来说绝对是必备的。
再加上Andrei Alexandrescu的"Modern C++ Design"。
有人曾说,学习C++需要10年的时间。我已经有14年的C++经验,并且仍在定期学习新事物,我可以说这是真的。即使拥有丰富的经验,我也不敢自称为C++专家。不要指望一夜之间掌握它......你会通过许多阶段,认为自己已经理解了,但接着你会发现一个全新的世界(用“觉醒”这个术语可能更妥当;我相信理查德·道金斯将这个过程称为“意识提高”)。我已经接受了一个事实,就是我的另一个领悟永远在前方,所以我不称自己为专家。
话虽如此,你必须不断地练习。我赞同(或者说第二、第三、第四次赞同)去Gamedev.net。我曾经花了很多时间在那里...
C++是一种很棒的语言,我非常喜欢它。它能够构建出极快的代码,并且通过良好使用分析器、基于分析结果的优化器、模块内优化器、const和restrict关键字、MMX/SSE/向量指令集以及其他技术,可以构建出非常快速的代码。
你可能已经注意到了一些大型游戏公司发布的职位列表,而C++需求非常高。
然而,这并不是开发游戏的唯一方式。我想介绍一些替代方案。
微软的.NET技术也非常实用。可以尝试他们的XNA平台。
即使使用Java,你也可以编写出非常棒的游戏。比如Quake2 Java版在我家里的Core I7系统中某些区域可以达到1,000帧每秒。当然,大部分的重活仍然在OpenGL和显卡驱动程序方面。
许多人正在使用Flash编写有趣的游戏,尽管其性能不如Java或.NET。
http://www.mindview.net/Books/TICPP/ThinkingInCPP2e.html
那应该可以帮助您掌握C ++,从那里开始,您可以开始阅读引擎的代码,例如Ogre3D,这将是更好的学习方式。我没有任何编程经验,但通过以下书籍学习了C++:
Brian Overland的《C++ Without Fear》
第四版的《Sams Teach Yourself C++ in 24 Hours》
以及Jonathan S. Harbour的《Beginning Game Programming through C++》第二版
第一本书非常好,内容详细,但阅读速度有点慢。第二本书我主要用作参考,最后一本书非常有用且阅读速度快,但它经常使用“超出本书范围”的短语。