变量,但李轩的眼睛只盯着那个八百。
“引擎的同屏渲染上限是八百个角色。”他说,声音不高,语速比平时慢一些,像在一边想一边说,“长安大街同时挤进来一千两百多个人,超过上限的那部分角色全部被引擎丢掉了。
被丢掉的角色的位置数据还在服务器端存着,但客户端不渲染。
服务器那边把这些角色的位置广播回来的时候客户端不知道该怎么处理,就出现了瞬移——角色在屏幕上的位置和服务器端的位置对不上,系统尝试修正的时候就直接跳过去了。”
他顿了一下,手指在桌面上轻轻敲了两下,又补了一句:“客户端本地算出来的位置和服务器发过来的位置中间差了一大截,系统每帧都在尝试把这两个位置拉到一起,拉不过来的时候就强制同步,那个强制同步的瞬间就是玩家看到的瞬移。”
梁永琪站在他身后。
“那把同屏渲染上限往上调呢?调到一千五或者两千。”她往前走了半步,视线落在屏幕上那个八百的数字上面,“服务器端能撑住一千两百个人,说明数据处理这块没问题,卡的是客户端渲染。
那把上限放开,让引擎多画几个人,问题不就解决了?”
李轩摇了摇头。
他的手从键盘上抬起来,搭在椅子扶手上。
“上限不是我们设的限制,是引擎的渲染管线本身扛不住。
每一帧要计算所有角色的模型变换、光照、阴影、动画骨骼,八百个角色同时渲染的时候引擎的帧预算已经用掉了七成,再往上加它会直接崩掉。”他停了一下,手指在扶手上收紧又松开,“帧预算这个东西是固定的,一帧十六毫秒,超了就是超了,没有商量的余地。
我如果把上限调到一千二,引擎会在第一帧就爆掉,不是卡顿的问题,是直接闪退。”
“但如果我把上限往下压,压到五百,长安城里就只能看到五百个人。
剩下的七百个人全部被引擎丢掉,玩家看到的是一座空了一半的长安城。
《梦幻》强调的就是热闹,长安大街上人挤人的那种感觉,如果砍掉一半的人数,那个热闹就没了。”他的声音低下去,像是在跟自己说话,“而且玩家不傻,他们会发现有些人明明在队伍列表里,在地图上就是看不到。
到时候论坛上全是帖子问为什么我队友站在我面前我看不见他。”
梁永琪靠在机房的门框
本章未完,请点击下一页继续阅读!