内容概要
2016年9月24日我在MDCC 2016 VR 峰会上我做了一个技术分享,这里是这次分享的技术资料

【欢迎转载,请注明作者:燕良,原文出处:游戏程序员的自我修养

演讲资料

为什么要深入学习引擎架构

现在商业3D引擎越来越成熟,特别是Unity3D引擎引领的引擎工具化潮流,大大提高了开发效率。开发的门槛也降低了很多,那我们是否还有必要去深入学习引擎底层算法、引擎架构呢?

个人认为还是非常有必要的!为什么呢?大家都知道,我们现代的软件工程是基于分层抽象建立起来的,好比说引擎是一层,它通过抽象把底层的复杂度封装了起来,这样在上层就可以更关注自己的业务。然而,系统分层和抽象封装可以提供开发效率,却不能提高学习效率,这是因为它在80%的时候工作的很好,但是在20%的时候会失效,如果你对底层完全不理解,那你就完全蒙圈。举个另外的例子,你看很多搞网络编程的兄弟,经常捧一本比砖头还厚的《TCP/IP详解》。以上这个观点,来自一本文集《Joel说软件》:抽象漏洞定律。我读完之后,深以为然。

从另外一个角度说,游戏开发技术是建立在很多概念之上的,引擎对这些概念进行了实现和封装,方便我们直接调用。但是,如果你并不理解这些概念,以及它背后的算法,那你对它的时间效率和空间效率等问题就很难有一个正确的把握。

So,尽管商业引擎越来越成熟,对于爱知求真的小伙伴,还是要沉下心,去深入学习,建立起稳固的知识体系。