为什么第一件事要介绍预缓存?
如果你创建了一个dota2mod项目,然后用IDE打开了这个项目的目录,看到scripts目录的vscripts,你会发现有一个文件addon_game_mode。
这就是dota2mod脚本的运行起点。而这文件开始写了两种东西,预缓存和游戏开始响应的函数(Activate())。
这就是我们计划为什么第一项会写预缓存和代码运行流程。
预缓存是干什么的?为什么需要预缓存?
如果你运行一张dota2mod,游戏本身开始会缓存所需要的模型,声音,特效。如果没有缓存而创建这些模型,声音,特效,加载是没有反应的。你看一些dota2mod地图加载很慢,说明需要加载的东西很多。
另外dota2也会自动加载一些自带的模型,声音,特效。
除了游戏开始预缓存,游戏运行中途是否能缓存模型,声音,特效?
在技能模块的数据驱动中,是有缓存的列表提供,不过不太清楚是什么时间进行缓存。
在脚本的api中,dota2mod提供英雄和道具异步缓存的api。