游戏开发论坛

 找回密码
 立即注册
搜索
查看: 8333|回复: 7

wow里的Cache文件夹是资源缓存么? 实现原理是什么?

[复制链接]

13

主题

36

帖子

301

积分

中级会员

Rank: 3Rank: 3

积分
301
发表于 2013-10-3 21:35:22 | 显示全部楼层 |阅读模式
本帖最后由 书径尘 于 2013-10-3 21:38 编辑

我看他这个Cache文件夹,随着游戏运行的次数越多,文件夹大小也越大,料想,应该就是资源缓存数据,
那这个怎么实现?? 用到哪些接口?

我在为一个游戏设计资源管理模块,我想缓存频繁使用的资源,所以,想到了wow的这个Cache, 不知道他是怎么做的,想借鉴一下,我以前的做法,都是在内存缓存.

201

主题

1437

帖子

1963

积分

金牌会员

Rank: 6Rank: 6

积分
1963
QQ
发表于 2013-10-24 21:13:34 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

13

主题

36

帖子

301

积分

中级会员

Rank: 3Rank: 3

积分
301
 楼主| 发表于 2013-10-25 20:17:04 | 显示全部楼层
niexuchina 发表于 2013-10-24 21:13
你要做的cache,有什麽好處?


我感觉,wow是把玩家曾经去过的地图,曾经使用的模型等资源给缓存到了磁盘,然后效果就是下次再进入加载曾经加载过的资源时,就会很快的加载出来。
只是不知道,他们到底缓存了什么,具体又是用了哪些技术.

201

主题

1437

帖子

1963

积分

金牌会员

Rank: 6Rank: 6

积分
1963
QQ
发表于 2013-10-25 21:37:34 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

6

主题

471

帖子

1047

积分

金牌会员

Rank: 6Rank: 6

积分
1047
发表于 2013-10-28 18:01:10 | 显示全部楼层
wow里的cache是一些参数类缓冲,大部分应该是后台编辑的动态数据。第一次启动时会下载很多。后面登录时会和服务器数据做类似md5码的比较,有更新就下载,没更新就直接载入客户端的cache,
模型资源都是在客户端里没必要cache.

13

主题

36

帖子

301

积分

中级会员

Rank: 3Rank: 3

积分
301
 楼主| 发表于 2013-10-28 22:17:59 | 显示全部楼层
filx 发表于 2013-10-28 18:01
wow里的cache是一些参数类缓冲,大部分应该是后台编辑的动态数据。第一次启动时会下载很多。后面登录时会和 ...


哦,挺复杂的样子..
能举个例子,什么是后台编辑的动态数据么?

13

主题

48

帖子

106

积分

注册会员

Rank: 2

积分
106
发表于 2013-10-29 16:47:07 | 显示全部楼层
之前没注意这个文件夹,WOW应该是没有类似资源动态下载的机制的。
所有的资源都是在本地的,典型的大客户端游戏的做法。
这个文件夹应该是客户端的.dat文件(记不清楚是不是这个后缀,其实就是文件包系统)动态解压出来的。方便下次用到直接使用,不再解压,提高性能。这就是为什么游戏越玩,客户端体积越大的原因。
楼上有说到后台数据缓存的,个人觉得这个应该是静态数据,一般都会包含在安装包里,动态的数据缓存在本地的复用意义并不大,每次通过和服务器MD5码比较再下载,为什么不直接请求数据呢。

6

主题

471

帖子

1047

积分

金牌会员

Rank: 6Rank: 6

积分
1047
发表于 2013-11-1 10:45:37 | 显示全部楼层
wq425101 发表于 2013-10-29 16:47
之前没注意这个文件夹,WOW应该是没有类似资源动态下载的机制的。
所有的资源都是在本地的,典型的大客户端 ...

实时请求要看项目规模,像wow这种大型项目里面的参数必定会频繁调整,而且参数很多,如果有可以动态添加修改的活动这些都是要登录时传输的,因为数据量比较大压缩后尺寸都有几十到几百kb之间.如果在每次登录时都强制更新的话会影响用户体验,做的不好的话更会堵塞登录(这点手游上比较明显,3g的网络本来就差,用户下载数据也是有流量限制的).
网络游戏本地的初始数据其实意义不大,因为版本更新比较快几乎每次更新都有数据上的变更.所以还是登录时比较数据是否需要更新比较好.

点评

Good  发表于 2013-11-1 11:40
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-6-16 00:41

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表