推荐读的书:
陈良乔《我的第一本C++书》:这本书上的代码相当规范,有助于楼主养成良好的软件开发习惯。
嗯,我给你按从易到难的顺序设计一个清单,你照着做做试试,一定会大有收获的
/* C语言阶段 */
1.石头剪刀布: 这是入门级别的,实现非常简单。
目标:初步掌握C++语言的结构
写这个游戏时,可以充分考虑一下如何将游戏做的更完美?比如:给电脑设计一定的策略而不是随机抽取?如何记录比赛结果?如果三个人玩结果又会怎样?你的程序是否能轻松地从双人模式转换到三人模式?通过以上问题,逐渐了解C++语言的结构及特点。
2.猜数字(含选择菜单)
目标:学会使用数组,以及游戏的体系结构设计
注意锻炼随机数的使用
3.Tit - Tat(三子棋)
目标:初步掌握策略类游戏的算法设计
三子棋的算法非常简单,楼主只要能让电脑在任何情况下都不会输就算完成任务!
4.大型成长类游戏(模仿大富豪或者什么 “皇后养成计划”等等,就是每天做各种事情,不断升级,获得奖励之类的)
目标:这是你做出的真正意义上的第一个游戏!独立完成一个大型程序,能极大提升你的自信心,并且使你对大型程序开发中的架构与调试了然于胸。
/* C++阶段 */
5.纸牌游戏(或麻将游戏)
目标:掌握C++语言的面向对象编程方法。熟悉类和泛型编程模版STL的使用;掌握多文件项目编译的方法。
当你写完4之后,你会发现用原来的C语言写一大堆函数的做法已经有点力不从心了……是时候换更强大的武器了!可以模拟任何一种游戏规则,但是最好把纸牌做一个类封装起来,在内部提供一个函数根据楼注定的规则来判断出牌是否合理,否则一旦游戏规则改变,整个代码的改动难度相当大!
6.高级策略类游戏:黑白棋
目标:提升对电脑AI设计的理解,掌握基本的算法和数据结构(比较有用的是:基于栈的DFS深度优先搜索,迭代加深搜索,A*启发式搜索,双置换表等)。
挑战你的智力,发挥你的创意!此作业是某重点高校计算概论课的大作业,完成了它,你就真正成为了游戏设计高手!
7.即时类游戏:贪吃蛇
目标:掌握即时类游戏的设计方法和图形界面操作。
还在cmd的黑白屏幕下编程么?我们给程序加点颜色吧……
贪吃蛇的原理实现很简单,但它是一款即时类游戏,需要同时处理玩家从键盘的输入和控制蛇体移动。所以对代码的质量有较高要求(否则游戏会不停卡壳,让你很不爽)
编完上面7个游戏,不能说你真正掌握了游戏设计。但无论对怎样复杂的大型游戏,你都知道为了实现这个游戏,需要做哪些事情;这个游戏的难点和关键点在哪里。这样,你就无人可敌了!
附送源程序包一个,里面包含了上述提到的某些游戏的代码,仅供参考!楼主也能知道我当年是怎么一路摸爬滚打过来的了,哈哈~
C语言程序设计
C++ primer
3D计算机图形学
小游戏的话网上找点源码自己改改就行了。
新手入门就看C++吧,C语言现在用的不多了,java也行。