源码阅读技巧

2022-08-15 08:32:20 浏览数 (1)

本文是本人学习Cocos Creator、LayaAir、EgretWing 游戏引擎源码(包括渲染流程、资源加载、音频、图片、网络、动画等模块)总结出来的源码阅读技巧

一、看教程视频快速上手

起初刚接触 Cocos,快速上手的好方法就是开发一个有图片、文字、动画、音频的例子,本人是通过开发Flappy Bird 入门的,点了 2 倍速快速浏览视频教程,之后自己手敲代码,完成后成就感大也基本熟悉了Cocos的小游戏开发过程。之后小项目基本都可以上手了,需要额外的功能就查下 API 文档可以十分快速的熟悉并开发。

  • 以下是我开发的 demo

这是腾讯课堂的cocos 开发Flappy Bird 教程: https://ke.qq.com/course/56205, Cocos 文档:https://docs.cocos.com/creator/manual/zh/

二、结合 API 文档以及博客文章熟悉源码的 GitHub 项目架构

谷歌搜索Cocos 源码的 GitHub 项目,起初不清楚其有多个版本,因此看了cocos2d-x 的 C 版本的源码,之后看博客文章才清楚其 cocos2d-js 才是 js 版本的cocos creator引擎源码,位于其 engine 文件夹下,之后结合搜索对应js版本的cocos creator源码的分析文章,熟悉了调试过程以及大概了解了一些模块。

1. 梳理 Cocos Creator/engine 的目录结构

三、针对对应模块写 demo,chrome 调试流程

之后自己写对应模块的 demo,比如音频、帧动画、粒子动画、图片加载等用chrome单步调试相关加载过程、渲染过程

1. 先第一遍简单过下流程,可以通过堆栈信息查看函数调用

2. 第二遍找出渲染流程的入口文件所在位置,先查看相关目录 renderer 每个文件的作用,利用 vscode 可以查看文件的大纲,由函数名推导文件的作用,梳理出目录结构

3. 第三遍开始认真调试流程,阅读函数代码,先整体浏览梳理逻辑,思维导图搭好框架,之后梳理内部细节,输出文档

具体可查看本人的 cocos 源码分析文章:https://www.yuque.com/qiuchen-z6ajg/ks1fop/qpiub9#1b024ad2

四、向有经验的人请教

与他人交流最好是自己先有梳理过一遍代码,这样效率高一点,他人不同的角度有助于理解源码。比如导师指出引擎精华是看怎么兼容各平台调用底层 API,看适配过程有啥坑;粒子动画尝试了解怎么读取plist文件里的属性等。这些初学的人是难有这意识,通过向有经验的人请教可以进一步加深对源码的理解

五、看业界相关著名书籍加深理解

书籍往往是别人研究纪念沉淀的精华,比如看《游戏引擎架构》可以全面了解游戏引擎相关的知识,加深知识广度和深度

0 人点赞