《梦幻西游》电脑版官方论坛

标题: 对于缓解WIN7系统下梦幻西游频繁卡顿的一个试探性解决方案 [打印本页]

作者: 喵星球的汪星人    时间: 2013-10-27 13:05
标题: 对于缓解WIN7系统下梦幻西游频繁卡顿的一个试探性解决方案
本帖最后由 songsixiaohao 于 2013-10-27 13:47 编辑

自从梦幻西游采用xyqsvc.exe这个进程来解决锦衣祥瑞加载的问题以来,就一直有玩家不断的喊卡喊难以忍受。此贴仅讨论下非服务器原因以及非网速原因导致卡顿的最大可能性,以及尝试给出一个解决方案供有需要的各位进行尝试,顺便验证一下这个理论的正确性。
    正文开始:之所以想起来写这个帖子是因为楼主最近也遇到了这个问题。之前一直是好好的,突然的就开始卡顿。在人少的地方稍好,但移动过程中依然会卡顿会无响应,非常频繁。这种卡顿的频繁性无疑是不正常的,于是楼主尝试在论坛里找寻解决方法。方法没找出来一个,问题倒找出来一大堆。楼主在用尽能想到的各种方案尝试后仍然无效的情况下将梦幻文件夹整体迁移至另一盘符,奇迹发生了,卡顿的情况瞬间消失,流畅度堪比初装系统的时候。对比以前众人帖子里提供的线索,脑内整理了一下,提出个假设,各位不妨来看一看。

    梦幻是一款2D游戏,它的UI机制是通过从硬盘里不断调取图片进内存从而送给显卡GPU来输出到屏幕上。各位注意,这种机制和3D游戏完全不同。3D游戏的图形显示是基于代码指令的,而非图片。显卡GPU读取的是游戏客户端所接受的服务器发出的图形指令,GPU根据相应指令调取自身以及游戏自带的图形显示代码来构建基于浮点运算的3D图形显示。这二者的最大区别在于,2D游戏访问硬盘的数据量要大于3D游戏
    所以对那些玩3D游戏不卡但一玩梦幻就卡顿的电脑我们足以相信:电脑本身的CPU GPU 内存等都是没有任何问题的,真正的问题可能出在硬盘。
    我们来看看简单的机械硬盘(hdd)访问机制:CPU接到指令,调取硬盘数据进内存,然后读取内存中的信息后反馈给其他软件硬件。梦幻西游的图片等数据集中保存在梦幻西游对应文件内,文件数据以二进制码的方式保存于硬盘固定的扇区之上,硬盘磁头通过读取硬盘上的对应扇区来访问文件数据。这和固态硬盘(ssd)机制完全不同:ssd内是没有磁盘的,也不存在什么磁头。它完全由电流控制电子存储芯片来实现01二进制码,也就没有hdd的寻道时间等等问题,从而速度远远快于hdd。
    这有什么意义呢?有个别玩家反应换了ssd后就再也没出现类似现象了。到这里我们可以猜测:hdd硬盘频繁的寻道以及频繁读取同样扇区数据导致了梦幻的卡顿
    不知有过经历的大家有没有在意:当你频繁出现卡顿的时候,画面内的锦衣人物以及祥瑞等等的加载都很慢。更有甚者,在查看摊位的时候摊子显示的很快 但对应格子却迟迟无法加载出图片信息,鼠标放上去却可以显示出物品说明。这实际上是进程没有及时的获取图片信息导致的。进程需要从内存中获取信息,内存需要从硬盘获取,硬盘需要从磁头寻道并读取信息。内存给进程提供数据的过程是非常快的,而硬盘给内存提供信息就会慢上很多。于是我们可以相信,是硬盘给内存提供信息的过程出了问题。
    为什么硬盘会突然出现问题呢?相信很多朋友有过发现硬盘坏道的经历。这就是个别扇区的存储物理介质因为外力因素导致了物理性质的改变。当然,这个外力就很多了,包括局部过热,外力震荡,以及磁头频繁读取导致的问题。楼主改变了梦幻西游文件夹的存储路径从而使卡顿消失,实际上就是改变了数据存储的扇区,把数据迁移至硬盘上的其他扇区,从而使得磁头频繁读取信息的位置发生了变化,从而解决了问题。不过这并不意味着旧的扇区出现了损坏,很大的可能性是磁头频繁的读取同一扇区导致该扇区的物理层发生了一些轻微的变化。虽然是轻微的,但这会导致磁头对数据的不敏感导致重复读取,增加了信息读取的时间,从而最终导致GPU无法及时渲染出图片,因此卡顿。


    啰嗦了一大堆,方案很简单:你可以尝试把梦幻西游文件夹整体复制或迁移到其他的盘符上,可能会有好转。如效果不明显可以尝试采用ssd。当然,跟换对各个硬件要求较小的xp系统也不失为一个好方法

    最后抱怨一句:就算有内存的释放机制,梦幻作为一款2D游戏需要读取的图片数据也太腻马多了= =
作者: 柠檬树下少年    时间: 2013-10-27 13:06
顶起。。。。。
作者: シ陌岸ˇ若相惜    时间: 2013-10-27 13:08
表示用SSD当主系统 HDD当辅助 4K对齐加速 在HDD上照样卡 除非在SSD上玩 win8.1下玩 游戏关系还会报xyqsvc.exe错误 开着梦幻开网银还会客户端异常  真心不解释WY的程序猿有多么垃圾 这DeBUG能力 呵呵 不解释
作者: 喵星球的汪星人    时间: 2013-10-27 13:14
表示用SSD当主系统 HDD当辅助 4K对齐加速 在HDD上照样卡 除非在SSD上玩 win8.1下玩 游戏关系还会报xyqsvc.e ...
cflnice 发表于 2013-10-27 13:08


那个报错不是硬件问题,也和卡顿无关。记得坛子里有人解决过,是安装了微软的某个框架文件,记不得是哪个了。不过确实是软件BUG
作者: whale    时间: 2013-10-27 13:14
提示: 作者被禁止或删除 内容自动屏蔽
作者: 绝恋碎心鱼    时间: 2013-10-27 13:16
楼主说的很符合我得情况啊,网易得技术部门就不能给解决下吗?
作者: 来去匆忙    时间: 2013-10-27 13:27
网易的技术部门白拿薪水的。。。
作者: 颜小灵°    时间: 2013-10-27 13:38
感谢楼主分享经验,另外需要提到的是,尽量是放在盘符靠前的分区,读取速度相对要快。关于图片多= =只能说是游戏时间长,内容自然也就比较多
作者: yk29423    时间: 2013-10-27 13:42
楼主你好,我们的程序员正在夜以继日的加班加点的给服务器机箱吹灰,擦金手指,涂硅脂。请每次打开梦幻之前配合我们将电脑设备送干洗店干洗。
作者: 243477790    时间: 2013-10-27 13:43
其实,我的监控系统早就注意到游戏文件的问题,不断的在读写硬盘,而且把I/O的接口都占满了,我不知道网易的工作人员有没有用软件进行测试,一个大型的3D游戏都不会对硬盘进行这么多的读写次数,但梦幻用缓存目录来生成临时的特效?我不知道有没有,但不信的同学而且使用window7的,可以使用资源管理器的监视器进行监察简易的数据读写数据,你会发现梦幻里面进程里面的简单的数据比较,基本可以和系统的缓存一拼了。。
作者: 亲爱的你慢慢飞    时间: 2013-10-27 13:48
lu路过学习了 。。。
作者: 昵称704034    时间: 2013-10-27 14:08
看来杂谈还是挺多同行啊
作者: 绝恋碎心鱼    时间: 2013-10-27 14:08
亲测有效
作者: lywbnnn    时间: 2013-10-27 14:16
其实游戏发展到现在,如果完全修改引擎不现实。最实际的给用户创造最佳用户体验的方法还是设置永久性F9。
作者: damen3090    时间: 2013-10-27 16:27
本帖最后由 damen3090 于 2013-10-27 16:30 编辑

梦幻卡的根本原因 就是梦幻是固定死30帧, 不管你机子快还是慢,效果都一样,在几年前这就是网易所谓低配置也能玩梦幻,而现在高配置也要跳帧。
另外梦幻客户端和服务端的程序做的太垃圾也是卡的原因。

我电脑有16g内存,搞了个内存硬盘,把梦幻整个游戏都放到内存里, 运行起来效果和物理硬盘上的没区别,该卡的时候还是卡
作者: 红颜翎情    时间: 2013-10-27 16:34
技术帝 看不懂
作者: li284xiang    时间: 2013-10-27 16:40
回去試試看。。。另外。。電腦小白問下。。。SSD什麽意思哦?
作者: 飘渺霓裳    时间: 2013-10-27 16:55
LZ很强大,确实如此。
不过即使转移了盘符,也只是短时间有效。

WIN 7无法彻底禁用虚拟内存。而梦幻西游由于调用图片缓存太多,会形成虚拟内存快速膨胀,而恰恰这些虚拟内存是在硬盘上面,自然会影响速度。
作者: 喵星球的汪星人    时间: 2013-10-27 16:56
回去試試看。。。另外。。電腦小白問下。。。SSD什麽意思哦?
li284xiang 发表于 2013-10-27 16:40

固态硬盘
梦幻卡的根本原因 就是梦幻是固定死30帧, 不管你机子快还是慢,效果都一样,在几年前这就是网易所谓低配置 ...
damen3090 发表于 2013-10-27 16:27


这游戏现在想重构太晚了点 就算可以估计开发组也没重写代码的计划和动力 如果一定要玩的话 偶尔卡一卡只能忍一忍了
作者: 喵的咪    时间: 2013-10-27 22:22
内容从口袋版就知道梦幻技术部是扶不起的阿斗
作者: jxin0301    时间: 2013-10-27 23:48
慢慢看。。。。
作者: 旧梦矢约°    时间: 2013-10-28 02:06
马克下1111111
作者: 小小米兰蒂尼    时间: 2013-10-28 08:22
提示: 作者被禁止或删除 内容自动屏蔽
作者: 11335577    时间: 2013-10-28 09:14
看不懂~~~~~
作者: gdmm    时间: 2013-10-28 09:29
回复 1# songsixiaohao


    用内存开个虚拟盘,梦幻主程序都放里面。。该卡一样卡。
只能说梦幻程序员太烂。
作者: 我不重要    时间: 2013-10-28 10:41
内容好专业的感觉完全不懂
作者: ホ风景ツ    时间: 2013-10-28 10:46
回去试试看喽 感谢卤煮
作者: 北岸℃清清    时间: 2013-10-28 10:47
网易的程序员应该进修了
网易的技术部门经理也该换新的了

顺便呼吁一下请解决河北1缘聚唐城卡机问题,人这么少的区还卡,肿么搞的
作者: 寂寞江南    时间: 2013-10-28 10:53
技术贴啊。。。
作者: 僵尸°    时间: 2013-10-28 10:58
这个可行吗?
作者: qw87058655    时间: 2013-10-28 11:17
不管楼主分析的正确与否,结论都是一样----屎一样的客户端。从没有那一款发行10年的游戏还需要考虑机械硬盘的性能。梦幻,你又做到了第一。
作者: 梦£已成冰    时间: 2013-10-28 11:28
论坛果然高人辈出
作者: 可否抱紧我    时间: 2013-11-5 22:32
帮忙置顶哦~
作者: 晨光熹微.    时间: 2013-11-6 17:33
LZ技术人才 网易不聘用你真是 失误!
作者: 柠檬树下少年    时间: 2013-11-6 17:33
手机党。顶一个。
作者: xunlei123    时间: 2013-11-6 23:38
锦衣太多了  没锦衣是5开也没出现卡顿的情况
作者: 渡不过,    时间: 2013-11-9 20:00
这位帅哥还是美女 谢谢你,爱死你了,听了你的话 把我E盘的东西放在D盘 就不卡了。  确实是更新过一个什么东西 就卡成屎。。现在一点都不卡了
作者: 可否抱紧我    时间: 2013-11-9 20:00
必须支持一下。~~!!!
作者: 浮靡.M1ss°    时间: 2013-11-9 20:31
好厉害的样子。
作者: 月す痕    时间: 2013-11-9 20:43
我用一个RefreshPC 2.0就解决了卡屏问题,居然没人信,呵呵呵呵呵
作者: 残留繁华    时间: 2013-11-9 20:51
提示: 作者被禁止或删除 内容自动屏蔽
作者: 李某人    时间: 2013-11-9 21:16
16g内存,搞了个内存硬盘,




欢迎光临 《梦幻西游》电脑版官方论坛 (http://xyq.netease.com/) Powered by Discuz! X3.3