前些天看新闻,Unity Awards两项大奖颁给了暴雪的《炉石传说》,这真是对Unity一个再好不过的宣传了——你看,暴雪都开始用Unity了。大家都知道,目前Unity发布的游戏大多都没有对程序集进行混淆、加密,所以作为一个炉石的玩家&Unity的初学者,自然不能错过这个机会。让我们好好看一下暴雪的代码吧。
炉石传说的游戏内容的非常丰富多彩,所以我花了一些时间分析了其程序集,将一些设计思路记录下来,与大家分析。欢迎各路高手拍砖,欢迎转载,请注明出处:燕良@游戏开发,http://blog.csdn.net/neil3d/article/details/39104329。
做这些分析的主要目的是:
- 看看炉石如何组织游戏逻辑,以支撑复杂的技能逻辑、表现等;
- 看看炉石是如何使用Unity的,其结构设计和技巧上有什么值得学习的地方;
- 向暴雪的程序员好好学习一下英语。
下面我们就正式开始。我习惯先分析一下游戏的启动流程,这中间就涉及到了游戏基础数据的管理&初始化,各种管理器级别的类,以及相互引用关系也会初步显现。
首先看一下我找到的一些游戏启动过程相关的类,下面是他们的类图: