游戏升级之路

2023-05-16

七十一雾央原创 转载请注明 http://blog.csdn.net/hust_xy


楼主学习编程有两年了,决定向游戏发展大概就是半年前了,在这里总结一下游戏方面的学习经历过,给初学的朋友们参考下,也顺便参加下CSDN的读书活动。

PS:本来楼主打算游戏的方式总结一下自己近两年的来的游戏方面的学习状况的,但是由于脑细胞死光了,到了后面显得很混乱,不幸看到这篇文章的同志们请勉强一下。


登陆:2011年的9月,在XX大学软件学院注册了个ID,开始了游戏之路。


0~5级

1.谭浩强版《C语言程序设计》  低级小怪 掉落小刀

这货长的就是下面这样


对于这货,怎么说呢,尽管对它的贬低要远远多于对它的褒扬,但是它的确是楼主编程入门的第一本书。各个高等院校计算机软件专业C语言课程基本都选用的这本书,不管喜欢也好,不喜欢也好,高等学校出身的应该都是学习过这本书的,没办法,谁让它就堵在了大家的出生点附近呢。在各个专业论坛我们看到的都是建议不要学习这本书,百度C语言贴吧里甚至在置顶帖里明确的不建议使用谭浩强的书,给出的理由一般都是概念不准确,有一些错误,只给出了最基本的使用方法,但是忽略了很多的东西。但是这本书的厚度在那里,它就是一本入门书,楼主觉得还是很适合初学编程的同学。

 

2.《C Primer Plus》    低级小怪     掉落长剑

比较厚的一本书,有600多页吧。大一的时候没事干,就把这本书都看完了,讲解的不能再详细了,看了这本书,也确实知道了谭书少讲了很多东西,导致对很多东西理解都不透彻,比如缓冲区等,这本书还是建议初学的朋友看看,但是缺点就是太厚。

 


KO这两个,就具备基本的战斗能力啦,就可以打造自己喜欢的东东了,在这个阶段,楼主整了编程新手必备的贪吃蛇和扫雷,没写过贪吃蛇,你好意思说你学过编程?嗯哼。下图就是当年刚学完谭浩强的书自己做出的丑爆了的贪吃蛇和扫雷啦。

 



5~10级

3.《C和指针》     精英小怪       经验多多

这本书楼主全部看完了,特别推荐学C的朋友们看,由于作者考虑到了没有编程基础的读者,所以虽然标题为指针,但是仍让把C语言从语法开始一点点都讲解了一遍,只不过没有《C Primer Plus》那么详细,毕竟它的字数只有上本书的1/3不到吧,不够浓缩的都是精华。特别一提的是课后的习题非常不错,《C Primer Plus》的课后习题都是很基础的东西,但是《C和指针》的课后习题有一定难度,而且趣味性很足,对初学者吸引力非常大,并且给出了详细的解答。

 

4《C专家编程》   小怪Boss    打完可以直接升级了

很经典的一本书,但是难度有点大,谁让它是Boss呢,肯定不能和小怪一个难度哈。即使到现在楼主都没有完全看完整本书,大概还有两章没看,因为感觉看起来很头疼。楼主看书的原则是如果感觉看不懂就会放下,过段时间再说。这本书在近一年的时间内断断续续的看了大部分章节,每隔一段时间都会拿出来看一次,每一次都觉得经验大涨不少。

 

干掉了《C和指针》后,楼主初略的了解了一下Windows程序设计和MFC,就是最基础的那一点,犹记得当年学会用MFC贴图的欣喜若狂啊,瞬间感觉自己可以做出真正的游戏啦

下图就是当年自己做的游戏,全屏的,RPG,因为很喜欢仙剑,就仿了仙剑的风格,哈哈。现在看那时候的代码简直不忍直视,从来没有写过长程序,完全是一点点累起来的,大概写了1700行纯C风格的程序,没有一个类,全部写在一起,现在好佩服自己当时理清楚了那么复杂的逻辑,呵呵。不过自己琢磨出了背景移动,动画的实现和游戏中插入视频,虽然很简单的东西,但是现在想起来仍然感到高兴。

 


《C++ Primer》   NPC  随时对话


由于最开始自己尝试学习的是PC游戏,C++是必学的,所以就买了这本书。这本书应该算是学C++最权威的一本书了吧,但是实在是太厚了,所以虽然买了很久了,但是楼主一直没有看完,看了几章之后我就决定放下,去找了本很薄的C++的书看了一遍,对C++了解了基础之后,就在实践中学习它,而把这本书当做字典来用,因为现在自己已经没有耐心去看一本厚达750页的讲语言的书籍了。

 

 

完成上面这些,楼主就达到了转职的条件啦

10~100级

数据结构   终极BossA


算法导论   终极BossB


这两货联系的太紧密了,经常都是成对出现的,而且难度很大,要死很多次都不一定打得过的那种,不过感觉这两货是可以慢慢处理的,不必急于一时,完全可以每天磨它们一点血,哈哈。这两本书楼主学的并不好,只是了解基本的东西,在以后还是打算再好好学习一遍。这两本书是最经典的书了,没有之一。目前只能说这两本书养成了楼主基础的数据结构和算法素养,当做游戏需要学习新算法的时候,也就比较轻松一点了。

 

20~30级的时候,也就是半年前楼主转向了3D

《DirectX 9.03D游戏开发编程基础》 中级小怪


这本书就是传说中的龙书了,几乎学3D的人都会推荐这本书入门吧。当初要学3D的时候第一时刻入手了这本书。看完这本书后,楼主的感受就是它的确是一本入门书,讲述了最基本的3D东西,但是看完它是绝对不可能做出一个游戏的Demo,顶多能整出一个3D场景漫游的程序,但是这离我们想做出3D游戏的梦想还是差得太远。这本书讲述了3D的一些基本概念,但是很蛋疼的没有讲解动画,很是遗憾,但是看在它只有300多页,而且是小本书的情况上,它可以说是一本非常不错的书!即使不学3D,我觉得也是可以看看这本书,因为书不厚,但是可以对3D有一些基础的了解。另外,这本书的作者考虑到了初学者的心情,在每一节之后都可以让大家实现一个小小的效果,让大家有动力继续学习下去,这点很不错。

当然,由于它是一本入门书,对于3D的原理什么的没有讲解,比如投影变换和取景变换,视口变换的公式推导都省略了,这一点对于刨根问底的同学来说有点不足。

 

《DirectX  3D游戏编程使用教程》郑阿奇主编 中级小怪  


这本书也是针对于9.0版本的,同时它是一本国产书。其实现在的3D教材基本都是把DirectX SDK文档给抄了一遍或者翻译了一遍而已,这本书相对于其他书来说要好很多,事实上在楼主看来,它比龙书要强很多,而且要通俗很多。首先它讲解的内容比龙书要多很多,多讲了输入控制接口DirectInput,球形天空,碰撞检测,骨骼动画,实时阴影,广告牌技术,LOD地形,音频处理,联网控制DirectPlay等很多东西,同时也要比龙书详细很多,非常适合初学者。有时候楼主觉得龙书看起来不是那么好理解的地方,看这本书会觉得讲的很清楚,所以学习DirectX9.0c的朋友们,更建议学习这本书,但是后来由于感觉3D是在是个大坑,加上大二课程太紧张,这本书后半部分没读完,但是前半部分很赞。

 

3D还有一些杂七杂八的书,楼主都只看了其中一小部分,就不写出来了。

 

到了30级,楼主发现,3D真的是个巨坑啊,入行需谨慎,对于个人来说真的是太困难了,想完成一个游戏demo都不是那么容易的事情,所以到现在楼主也只实现了3D场景漫游的那种简单程序。

 

其实楼主看的书真心不多,虽然楼主买了很多书,但是很多其实都没翻开过。。。。。。楼主更喜欢去CSDN这种社区看看大家写的博客,学习大家分享的知识。对了还有一本书,对游戏感兴趣的朋友一定要读一下,就是云风大神的

《游戏之旅—我的编程感悟》 大补品  满蓝满血

 

这本书讲了一些游戏方面的技术,但是很多都已经过时了,毕竟它是云风大神十年前写的书,但是正如书名所言,书侧重的是编程感悟,书中包含了很多云风对游戏的思考和认识,写的很深刻,非常推荐大家读一下

 

在两个月前,楼主觉得3D比较困难,就把它作为业余爱好,慢慢研究。决定先走向2D之路,楼主花了十天时间整了第一个简单的ARPG游戏,写了2150行代码,就是下面这货,这一次楼主感觉代码风格组织好多了,至少楼主会分层次了,写了地图类,人物类,动画类,管理类等等大大小小十几个类,感觉还是像那么回事了,虽然楼主从来没有见过一个完整的游戏架构,不知道真正的游戏是怎么架构的。

 


在近一个月前,楼主偶然发现了cocos2d-x这货可以满足楼主不学Java而写Android游戏的愿望,于是学习了一段时间,这也是楼主第一次使用传说中的游戏引擎,在前几天弄出了第一个Android游戏,Hi,我在这里

 


嗯,楼主的经历就是这样,接触编程到现在已经接近两年了,楼主目前仍然是一个初学者。马上就开学了,楼主就要大三了。在大二干了杂七杂八很多种事情之后终于确定了要做游戏,期待着大三一年可以在游戏开发上学到更多的东西,至少做出一款出色的游戏!

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

游戏升级之路 的相关文章

  • ubuntu的终端log怎么保存

    script screen log 之后再在终端的输入就被记在screen log exit 退出
  • HDU 1215 七夕节(约数之和)

    七夕节 Time Limit 2000 1000 MS Java Others Memory Limit 65536 32768 K Java Others Total Submission s 39837 Accepted Submiss
  • 为什么无穷大总是0x3f3f3f3f?

    转自 http aikilis tk 如果问题中各数据的范围明确 xff0c 那么无穷大的设定不是问题 xff0c 在不明确的情况下 xff0c 很多程序 员都取0x7fffffff作为无穷大 xff0c 因为这是32 bit int的最大
  • CSU 1333 & Uva 12661 Funny Car Racing【最短路变形+spfa算法,链式前向星建图】

    Funny Car Racing Memory Limit 131072KB64bit IO Format lld amp llu Status Description There is a funny car racing in a ci
  • 根据Oracle数据库scott模式下的scott.emp表和dept表,完成下列操作.

    题目要求 xff1a 根据Oracle数据库scott模式下的emp表和dept表 xff0c 完成下列操作 将scott用户解锁 xff1a alter user scott account unlock scott的初始密码是tiger
  • 【死磕 Java 集合】— ConcurrentSkipListMap源码分析

    转自 xff1a http cmsblogs com p 61 4773 隐藏目录 前情提要简介存储结构源码分析 主要内部类构造方法添加元素添加元素举例删除元素删除元素举例查找元素查找元素举例彩蛋 作者 xff1a 彤哥 出处 xff1a
  • STL-set (集合)之删除元素

    set概述 和vector list不同 xff0c set map都是关联式容器 set内部是基于红黑树实现的 插入和删除操作效率较高 xff0c 因为只需要修改相关指针而不用进行数据的移动 在进行数据删除操作后 xff0c 迭代器会不会
  • 经典算法之一:快速排序

    快速排序由于排序效率在同为O N logN 的几种排序方法中效率较高 xff0c 因此经常被采用 xff0c 再加上快速排序思想 分治法也确实实用 xff0c 因此很多软件公司的笔试面试 xff0c 包括像腾讯 xff0c 微软等知名IT公
  • 矩阵乘法测试

    对于时间的函数 gettimeofday 函数使用方法 xff1a http blog csdn net hurmishine article details 60326345 矩阵乘法测试 xff1a 代码 xff1a 1 为了试验简单
  • Python爬虫自动获取CSDN博客收藏文章

    CSDN的Python创意编程活动开始第一天就看到了 xff0c 但是认为自己是菜鸟 xff0c 就向当 吃瓜群众 xff0c 后来看到有好多人的代码是关于爬虫的 xff0c 当初我就是由于对爬虫 感兴趣才自学的Python 现在也打算参加
  • 全网最!详!细!Tarjan算法讲解。

    Tarjan算法讲解的博客网上找到三篇比较好的 现在都转载了 个人只研究了第一篇 正如博主所说 讲的标比较详细 清晰 剩下两篇也可以看一下 卿学姐视频讲解 https www bilibili com video av7330663 以下内
  • MFC计算机图形学(1)

    这学期上了计算机图形学 xff0c 用MFC来绘制简单的图形 下面就简单介绍一下用cv 43 43 来绘制图形 VC 43 43 安装 VC 43 43 我基本不用的 xff0c 平时写C C 43 43 的代码都用Code Blocks
  • MFC计算机图形学(2)

    这里呢 xff0c 先把上一讲的联系讲一下 一般人都用是一个一个的去画 xff0c 但是那样好麻烦 xff0c 计算机的有点就是容易处理重复的事情 xff0c 那就定义成一个画正方形函数吧 xff0c 每次调用就可以了 怎么自定义函数呢 x
  • MFC计算机图形学(3)

    之前我们已经可以画出直线和曲线了 但是算法虽容易理解 xff0c 但是复杂度高 xff0c 今天就介绍比较流行的DDA画线法 xff0c 还有 xff0c 对鼠标进行事件有所响应 xff0c 即 xff0c 在画板上 xff0c 鼠标左键单
  • Ubuntu18.04安装realsense viewer

    一 下载realsense安装包 mkdir p librealsense install cd librealsense install git clone b v2 31 0 https github com IntelRealSens
  • 用D435i录制自己的数据集运行ORBslam2并构建稠密点云

    一 录制rosbag 二 播放rosbag并用rviz查看topic xff0c 记下rgb和depth流话题名 三 用如下脚本 xff08 python2而不是3 xff09 保存rgb和depth图片同时生成rgb txt depth
  • Unrecoverable error: corrupted cluster config file.

    from https www cnblogs com topicjie p 7603227 html 缘起 正在欢乐的逗着孩子玩耍 xff0c 突然间来了一通电话 xff0c 值班人员告诉我误重启了一台服务器 xff0c 是我负责的服务 x

随机推荐

  • 树莓派3B+无屏幕和键盘配置树莓派WiFi和SSH

    前言 树莓派3B 43 安装系统Raspbian xff0c 默认的SSH是关闭的 xff0c 如何在无屏幕和键盘的情况下 xff0c 让笔记本通过WIFI访问树莓派 树莓派3B 43 发布后不久 xff0c 树莓派官方 Raspbian
  • ubuntu分区设置

    ubuntu分区设置 swap区 xff1a 逻辑分区 xff0c 虚拟内存类似 xff0c 大小和电脑内存一样大 xff1b boot区 xff1a 主分区 xff0c 引导系统的 xff0c 分配200M 500M xff0c 条件好些
  • 图像系统概述和名词解析

    图像系统组成 光源 xff08 包含人造光 自然光 闪光灯 xff09 照到物体上 xff0c 光线反射进入成像系统 xff0c 经过镜头 xff08 对于变焦镜头有驱动马达调整镜片位置 xff0c 实现变焦 xff09 光圈 滤光片 快门
  • 海思IQ图像清晰度调试策略

    总策略 影响清晰度的关键指标 xff1a 锐度 噪点和gamma Gamma调试步骤 YUVsharpen锐度调试 LDCI局部对比度调节 Dehaze调节 去雾算法主要用在有场景中做处理 xff0c 调整图像的对比度使更加清 去雾算法主要
  • 海思ISP曝光调整策略

    AE曝光调整 Exposure Attr 影响参数 xff1a ExpTimeRange Min Max 曝光时间Gain 各种增益控制Speed 曝光速度 xff08 影响到曝光收敛 xff0c AE闪烁 xff09 Compensati
  • ADS(ARM Developer Suite)安装与卸载中的问题(转)

    ADS用来对ARM的裸机代码进行编辑和调试 我在安装ADS1 2的过程中 xff0c 遇到了一个小问题 xff0c 写下来和大家分享一下解决方法 1 在安装程序 xff0c 进度条到100 时 xff0c 会一直停在那 xff0c 十几分钟
  • ucosIII 学习资料汇总

    网站 书籍 1 嵌入式实时操作系统uc OS III 邵贝贝译 这本书其实就是一本工具书 xff0c 我参考了官方的说明文档 xff0c 发现雷同很高 感觉就是官方说明文档翻译的 xff0c 用来应用查查接口还有点用 xff0c 不是十分推
  • USB协议传输结构

    USB作为数据通信标准 xff0c 固件可分为枚举配置和类协议部分 xff0c 枚举配置实现USB主机对设备的枚举和配置 xff0c 类协议实现设备各自的数据传输 usb2 0协议chapter8 protocol layer 1 USB协
  • 蓝牙HCI协议

    HCI 层位于蓝牙高层协议和低层协议之间 xff0c 提供了对基带控制器和链路管理器的命令以及访问蓝牙硬件的统一接口 它是我们实现自己的蓝牙设备要接触的第一个蓝牙协议 起着承上启下的作用 HCI通过包的方式来传送数据 命令和事件的 xff0
  • 标准USB设备请求命令

    一 标准的usb设备请求命令 控制传输是最重要和结构最复杂的一种传输类型 控制传输的 初始设置步骤 中包含了1 个8 字节的DATA0 数据包 参见图6 6 这8 字节的数据包是主机用来发送控制阶段中的请求命令的 而这些请求命令是主机配置U
  • 卡尔曼滤波基本公式推导(高斯乘积法)

    前言 卡尔曼滤波的推导这里给出两种推导方法 xff1a 一种是利用高斯乘积定理和贝叶斯公式推导出来 的 xff0c 另一种借用的是最小误差的思想 xff08 IMSE xff09 关于卡尔曼滤波的应用场景以及通俗的解释 xff0c 我相信各
  • 计算机组成原理(唐朔飞)

    计算机组成原理 唐朔飞 存储器 存储器分类 存储介质分类 半导体存储器磁表面存储器磁芯存储器 淘汰 存储方式 存储结构 存储器容量 地址总线 xff1a CPU能访问的地址宽度 xff0c 32地址线表示能访问2的32次方个存储单元地址 数
  • ubuntu配置静态IP、DNS地址

    虚拟机需要使用桥接上网 1 ifconfig 查看网卡信息 2 vi etc network interfaces 打开并编辑配置文件 配置说明 xff1a auto lo iface lo inet loopback auto ens33
  • c调用libcurl库发送GET 和 POST请求

    libcrul请求的基本套路流程 1 调用curl global init 初始化libcurl2 调用curl easy init 函数得到 easy interface型指针3 调用curl easy setopt 设置传输选项4 根据
  • LINUX 操作GPIO口

    两种方法 1 写驱动的方式 缺 2 通过linux提供的用户空间 终端控制 通过在用户空间上来操作GPIO xff0c 控制入口在 xff1a sys class gpio 首先确认内核里是否已选择上gpiolib的sysfs接口功能 默认
  • V4L2简介

    http work blog readthedocs org en latest v4l2 20intro html 第一章 V4L2简介 1 1 什么是v4l2 V4L2 xff08 Video4Linux的缩写 xff09 是Linux
  • 电子设计项目

    全套完整毕业设计智能家居控制系统设计 16X16点阵滚动显示 单片机595 43 138LED点阵 基于WIFI传输的单片机传感器设计 xff08 毕业论文 xff09 基于单片机设计的多点测温系统 数码管显示温度 基于单片机设计的公交报站
  • 视觉惯导里程计VIO综述

    最近阅读了VIO中的一些论文 xff0c 在这里做个汇总方便以后查阅 xff0c 如有问题欢迎指正 一 背景 VIO xff08 Visual Inertial Odometry xff09 视觉惯导里程计 xff0c VINS xff08
  • 【Cocos2d-X-2.1.4游戏引擎】发布第一个游戏

    有一段时间没更新博客了 xff0c 最近一直在写一个小游戏 xff0c 游戏在今天终于搞好了 xff0c 又可以开始写写博客 xff0c 打打dota的悠闲的日子了哈 看了十几天cocos2d x后 xff0c 也依照官网的例子写了个打飞机
  • 游戏升级之路

    七十一雾央原创 转载请注明 http blog csdn net hust xy 楼主学习编程有两年了 xff0c 决定向游戏发展大概就是半年前了 xff0c 在这里总结一下游戏方面的学习经历过 xff0c 给初学的朋友们参考下 xff0c