5月20日-6月4日:攻克2D物理引擎。
6月4日-6月13日:攻克《3D数学基础》。
6月13日-6月20日:攻克《3D图形教程》。
6月21日-6月22日:攻克《Raycasting游戏教程》。
6月23日-7月1日:攻克《Windows游戏编程大师技巧》。
7月2日-7月6日:攻克《雅达利2600汇编游戏开发》。
7月7日-7月11日:攻克《x86/x64汇编语言》。
7月11日-7月22日:学习《3D游戏编程大师技巧》(阶段性)。
7月14日-7月18日:学习《游戏引擎架构》(完成)。
7月23日-7月30日:攻克Python语言学习。
7月31日-8月5日:攻克《3D游戏编程大师技巧》。
下个目标《DirectX12 3D 游戏开发实战》。
(一)近况总结
从6月开始的时候,我当时不知道为什么,好像找到了人生的目标,所以动力非常足。从6月4号开始,到今天为止,我没有休息过一天。星期六,星期天都在工作。但是我终于被我的抑郁症反噬了。本来《3D游戏编程大师技巧》还有阴影一个小节我还没有实现。但是当我学习的时候,脑子里面一波一波地头痛,这是我的抑郁症和神经衰弱的并发症,只要一透支脑力,就会痛。
本来我打算到国庆之前都不休息的,来一个史诗级的远征。但是看来坚持不下去了。于是,这个里程碑到此结束,我的最长工作记录——2个月不休息。即便是没有抑郁症之前,我也没有2个月不休息过,只不过那时我只是不想做,而不是没能力做。
休息两天,再整装出发吧。
(二)《3D游戏编程大师技巧》学习总结
今天终于把《3D游戏编程大师技巧》全部攻略完成。最后一个实现的是透明材质,其实还有阴影部分没有实现。但是阴影部分因为都需要Alpha混合,而我的引擎加上了Alpha混合之后变得巨卡,我也不打算做下去了。反正这个软光栅的学习也是一个学习,并不是真正制作引擎。
我的下一个学习目标是《DirectX12 3D 游戏开发实战》,这是真正能够用于制作实用的引擎了。其实《3D游戏编程大师技巧》(还有他的姐妹篇《Windows游戏编程大师技巧》)被称为游戏编程四大坑书之首不是没有道理的。因为里面用到的技术不仅老旧,在现在看来也没什么价值。比如说8位模式,我的显示器已经没办法支持8位模式了。
但是,如果你知道自已想要什么,这本书仍然不失为一个经典。他坑的原因不仅是因为难,而且因为繁杂,其实这本书的前半,作者还坚持给每个渲染管线8位和16位的版本,到后面他自已可能都觉得麻烦了,只留下了16位版本。
我在学这本书之前还学了《3D图形教程》。这也是一个软件光栅化的教程。比这本书深入浅出得多。只不过内容并没有这本书里面的丰富。
但是这段旅程我相信是有价值的。
(三)游戏之神是什么?
在这本书里面,序言中提到了这样一个事情。在游戏行业中,有两种人,一种是擅长技术的,一种是擅长设计的。很多擅长技术的人,游戏感不一定很好,他们不会设计有意思的游戏。而“游戏感”强的人,也很少有人有强大的动手能力,能自已捣鼓出游戏。而《3D游戏编程大师技巧》的作者正好是这两者都非常强的人。
其实这在游戏行业里面,这并不是什么问题。因为游戏不是一件艺术品,他是一个工程,是需要很多人通力合作做出来的。就像是卡马克有他自已的搭档罗梅洛一样。
在我心中,卡马克是游戏行业中的唯一真神,不仅仅是因为他的能力,而且是因为他的理念,我的自由软件的理念受他的影响很大。我的《薪火引擎》自然也会开源的。
然而,即便是卡马克,他离真正的“游戏之神”也有一定的距离。因为他的技术力虽然非常强,但是对于游戏设计却并不痴迷。
“游戏之神”是什么?
但在我的心中,游戏之神一定是“制作游戏”和“设计游戏”都非常强的人。如果说一个设计者自已都做不出来游戏,怎么能称为游戏之神呢?那只是伪神而已。
当然了,这仅仅是我自已的信念,不能用这个去评价别人,而且也没有事实上的操作价值。因为每个人专精于自已的领域,比如说设计游戏的专精于设计,制作游戏的专精于制作,然后两人合作,才是是正道。
可是,游戏之神是什么,这是人类向上帝的提问,没有人拥有权威,谁都可以定义自已心中的游戏之神。
我真的希望自已成为那个“真神”。当我有天用自已的引擎做出《三千神界》的时候,我就可以说我做到了这一点。
因为我相信,当有一天我能站在那个地方的时候,能够看到不一样的风景。