北京公司响应式网站建设价位,防网站模板,外国设计师素材网站,php网站开发就业前景5月20日-6月4日#xff1a;攻克2D物理引擎。 6月4日-6月13日#xff1a;攻克《3D数学基础》。 6月13日-6月20日#xff1a;攻克《3D图形教程》。 6月21日-6月22日#xff1a;攻克《Raycasting游戏教程》。 6月23日-7月1日#xff1a;攻克《Windows游戏编程大师技巧》。 7月…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汇编语言》。
下个目标《3D游戏编程大师技巧》
这次又是一次“异形”星球的征战。我昨天去骑行了60公里这不是一般的60公里最后20公里全是山路回来把我累死了。 今天的精神状态不是很好可以说“咬牙”把教程学完了。
但是我发现我还喜欢上这种感觉了。不像是雅达利2600汇编那样陌生。
学汇编真的像那种顶尖的对局真的一点错误也不能犯。我记的笔记比我一个学期记得还多。虽然就是几条语句但我都密密麻麻地写上了注释。我以前读大学的时候如果能这么用功就好了。 这次教程我学了两个一个是X86-32位的。一个是x86-64位的。两个都各有所长也各有所短。比如第一个教程教到最后都没教怎么调用函数。而64位的基础讲得很好但高级应用一点也没有。
这一通学习下来我有一个最大的感悟以前觉得汇编是比较“底层”的东西比较“落后“的东西毕竟现在的语言都冠上了一个“高级语言”的帽子。
这给我一种那要样的印象如果我用的编程语言是枪和炮那汇编语言就是冷兵器。怎么想都觉得有一种比较“落后”的印象。我学雅达利2600汇编的时候也是这个印象。
但是当我学了x86的汇编之后这个印象完全改观了。汇编简直是一种“次世代”的武器他不是冷兵器而是“高科技”是激光剑。
他只是“难用”而不是“弱”。相反他强的离谱。
以前我听别人说学汇编不止一次看到说现在的编译器很先进了即便你学了汇编写出的代码也不会像以前一样提升很多效率。我现在知道了这东西就纯属放屁。从MMX到AVX这种并行处理的能力你是无论如何用写代码也写不出来的什么编译器也做不到必须得用汇编才能把这个强大的功能用出来。
而我的应用正是游戏引擎最是需要批量处理图形的地方。
我之前学汇编其实只是看到了我的书上说有些注意性能的地方还是得用汇编。就是这么简单的一个作者的感受。我其实并没有想到汇编语言能够如此强大。
这其实也得益于我现在的“少即是多”的思想。因为我之前想着做游戏总想着跨平台做PC做手机现在我自已做引擎了要求不能那么高了跨平台是别想了所以我专心把PC平台做好。所以我才有了学汇编的念头。如果我总想着跨平台可能不会有这个念想。
以前金一南教授的一个讲座里面有一句话让我印象非常深刻
凡做难事必有所得。
这几乎成为了我人生的信条之一。这次又是印证了这句话的力量。
学汇编给我的收获比想象中大多了。我都有点迫不及待地去修改我之前的一些代码。比如以前我有一个Alpha混合的代码因为DirectX的DirectDraw并不支持Alpha通道。所以我自已写了一段Alpha混合来支持半透明物体。这东西巨慢本来800帧的可以一瞬间拉下到200帧。而仅仅只是主角的飞行器用这个算法而已。如果用汇编相信可以高很多。当然这个也只是去尝试改进而已其实主要的还是得靠硬件。如果只有Blt我的帧数可以达到4000多。这是怎么换算法都达不到的。
不过能够改进的地方还是得改进。比如我的SpritePack的功能。这东西是硬件管不了的都是靠我的算法来实现。这其中的效率提高汇编能够提供巨大的价值。
其实我本来想再学一下Python机器学习的。这段时间也不知道怎么了什么都想去了解。感觉AI将是我游戏开发中非常重要的一块拼图。我现在用AI制作图像原画用得非常顺手。这方面的知识想更深入的了解一下。
但是这段时间没有看书一直是学教程所以一直坐着腰都受不了了。如果是拿着书本学我可以看书的时候还躺一下所以我选择学《3D游戏编程大师技巧》。这样缓解一下我的腰的压力。
过了这段时间再看看能不能学Python。
加油