第1221章 这个哥哥真好(1 / 1)

边煜一屁股坐到主控台前,熟门熟路地把全息芯片夹进调试坞。

蓝色指示灯亮起。

一排参数从屏幕上滚过去。

沈恪站在旁边,手里拿着连接线,低头看了一眼接口。

“你上次说的延迟抖动,就是这里?”

“对。”边煜敲了两下键盘,“渲染引擎没问题,光场重建也能跑满,就是交互协议这块,帧同步偶尔会漂。”

“漂多少?”

“峰值十二毫秒。”

沈恪把线接好。

“对普通游戏不明显,对全息不行。”

“所以我说它欠揍。”边煜理直气壮。

其玉站在旁边,小手扶着桌沿,努力仰着脑袋看屏幕。

奈何个子太矮,再使劲儿,也只能看到一部分。

那些跳动的字母和数字更看不懂。

但他却看得认真。

边煜已经顾不上他了,一边启动模拟器,一边跟沈恪说:“你看这里,动作采样是六十帧,服务端判定也是六十帧,但本地渲染插帧到了九十。问题是延迟补偿算法没把手势预测算进去。”

沈恪坐到另一侧,调出源代码。

“你把手势和位移放在同一条预测链里了?”

“嗯。”

“难怪。”

边煜扭头:“嗯?什么情况?”

沈恪把一段代码选中。

“位移可以线性外推,手势不行。手指动作有停顿,有反悔,还有微调。你用同一个补偿模型,快的时候准,慢的时候就会飘。”

边煜盯着屏幕两秒:“……有道理。”

“把手势拆出来,单独做状态机。”

“状态机?”

“触碰、悬停、抓取、释放,每个状态给不同权重。比如抓取后,位置预测可以强一点,悬停的时候保守一点。”

边煜拍了下桌子:“可以啊沈恪!你这个人不说话的时候像在发呆,一说话就能救命。”

沈恪把键盘推给他:“少夸。改。”

“改就改。”

边煜嘴上不服,手已经飞快动起来。

其玉看着哥哥的手。

啪嗒啪嗒,很快,像小雨打在窗户上。

哥哥好厉害!

接着又看向沈恪。

en……这个哥哥不像煜哥哥那么话多。

眼神落得稳,手指指到哪里,煜哥哥就改到哪里。

两个人就像……拼积木。

一个负责把积木倒出来,一个负责指导怎么拼。

很快屏幕上全息游戏的测试场景打开。

半空里浮出一片浅蓝色网格。

网格向四周铺开,变成森林。

树叶不是贴图一样糊在平面上,而是有层次地悬在光里。

风一吹,叶片边缘有细微的折光。

远处有一条溪,溪水从石头旁绕过去,水面反射着天光。

边煜戴上轻量眼镜,拿起手势环。

“来,跑一把。”

沈恪也戴上,两人进入测试模式。

其玉站在旁边,一动不动。

边煜抬手,虚空里出现一把短弓。

沈恪那边是一枚透明的控制球,里面有一圈圈发光的坐标。

边煜拉弓,箭矢成形,瞄准远处的靶子。

松手——

箭飞出去,可惜没中红心。

偏了一点。

边煜立刻皱眉。

“怎么又这样?”

沈恪低头看日志:“不是渲染延迟,是输入上报晚了。你看,客户端第2417帧采到释放动作,服务端第2419帧才判定。”

“网络模拟只有三十毫秒,所以不是网络,是协议包。”

边煜把日志拉开,“我压缩了手势数据。”

“压太狠了。”沈恪说,“释放动作的关键帧被合并了。”

边煜沉默一秒,然后小声:“我为了省带宽。”

沈恪看他:“省到箭都飞歪了。”

边煜:“……”

其玉忽然开口:“哥哥,箭为什么要听电脑的话?”

两个少年同时停住。

边煜这才想起旁边还有个小不点:“哎,其玉,你还在啊。”

其玉点头:“我一直在哦。”

边煜有点心虚,挠挠头:“哥哥刚才忙,没顾上你。”

其玉认真地说:“嗯嗯,我知道,你们在修箭。”

沈恪摘下一边眼镜,弯腰看他。

“想试试吗?”

其玉看了看那个手势环,满眼好奇:“我……可以吗?”

“当然可以。”

边煜有些担忧:“他太小了吧,手势环都——”

话还没说完,沈恪已经把椅子往后挪了挪。

将其玉抱起来,让他坐在自己腿上。

“用儿童模式。”

“行吧。”边煜转身调设置。

沈恪把小一号的辅助环套到其玉手腕上。

“这个不重,你抬手,它就知道你想做什么。”

其玉抬了抬手,半空里出现了一只小木鸟。

鸟扑棱了两下翅膀,落在一根树枝上。

“哇!好神奇!”其玉眼睛亮了一下。

他伸出手,慢慢靠近。

小木鸟往旁边跳了一步。

其玉停住。

“它怕我?”

沈恪耐心解释:“不是怕,是它在判断你的动作。”

“判断是什么?”

“enn……就是它在思考,你是要摸它,还是要抓它。”

其玉低头看自己的手:“那我慢一点,它是不是就知道我要摸它?”

“对。”

沈恪握住他手腕,带着他慢慢往前。

“你看,动作慢,手掌打开,系统会把你判定成友好互动。”

小木鸟歪了歪头,然后低头啄了一下其玉的指尖。

其玉抿嘴,很轻地笑了一下。

边煜在旁边看见,忍不住说:“哇,它真给你面子,我刚才伸手它啄了我三次。”

其玉想了想,现学现卖:“是因为哥哥你动作太快了。”

边煜捂住心口:“好好好,我被三岁小朋友教育了。”

沈恪唇角弯了一下。

他把日志窗口缩小,给其玉打开简单任务。

“试试把这颗果子放进篮子里。”

树枝上垂着一颗红果,旁边有一个小篮子。

其玉伸手去拿,果子从枝头掉下来,滚到地上。

他愣了愣:“哥哥……我没拿住。”

“抓取的时候,手指要合起来。”沈恪示范,“这里有碰撞检测,你的手碰到果子以后,系统会看你的手指有没有收拢,如果收拢,就算你抓住了。”

其玉又试了一次,这次果子被他稳稳拿住。

他放进篮子,篮子亮了一下。

任务完成,屏幕角落跳出一颗小星星。

其玉看着那颗星星:“它又是怎么知道我放进去了?”

边煜马上兴奋起来:“这个我会!”

沈恪看他一眼。

边煜清清嗓子,“因为篮子有触发区域,你把果子移动到篮子范围里面,系统检测到它们的坐标重叠,就会判定完成。”

其玉想了想:“如果我放在篮子边上呢?”

“那要看碰撞体。”沈恪接过话,没有因为他只有三岁就敷衍糊弄,“如果只是视觉上挨着,但碰撞体没有进入篮子区域,就不算。”

其玉点点头:“我知道了,就像拼图,放在旁边,不是放进去。”

“对。”