欢迎光临散文网 会员登陆 & 注册

[进阶教程]vxl抖动问题新解

2021-10-27 15:32 作者:雷德克里莫  | 我要投稿

抖动一直都是令vxl玩家十分头疼的问题,即使vxler十分确信自己绝对没有对vxl本体做过什么,抖动现象依旧在持续发生。除了最常见的直升机抖动,发射子机的单位的形态切换和矿车倒矿时的形态切换也会发生这种抽搐现象。

经典的直升机鬼畜
突然兴♂奋的V2

在田鼠的专栏中介绍过一种方法cv9090930(建议先看懂这篇的方法),思路是设置不同section在各帧里的显示与否,很好地解决了直升机抖动和遮挡的问题。但是正如其文中提到的缺点之一,当采用这种方法制作的vxl单位在游戏中成群出现时,游戏帧数会以肉眼可见的速度飞快下降——对游戏体验而言,这种方法显然不能大规模应用。

经过对这种方法的研究和试验,我得出了一个结论:vxl的抖动问题和组件形态的画布尺寸有关;当组件(包括同为一个vxl里的section)或者另一形态与本体的xyz体素值不一致时,就会发生抖动现象。

请看经过画布大小统一处理后的V2发射效果:

稳!
一致的尺寸

所以在绘制会切换形态的单位时,建议不要下意识用VSE里的Crop Section对画布尺寸进行自适应裁剪,而是前后两者保持一致的xyz值。

清楚了原理,我们再看直升机螺旋桨动画——只需要保持螺旋桨部分的尺寸和本体尺寸一致即可。并且同样可以采用田鼠提到的方法设置动画,这里对此方法进行简单通俗的再阐述:

section里面设置好本体部分、动画部分尺寸一致后,用HVA Builder给vxl添加帧动画(这里以2帧为例)

section设置,怎么添加section请自寻VSE教程
HB添加帧

HB保存vxl后再用VSE打开添加了帧动画的vxl,ctrl+H打开Voxel Header,调整section在各帧的显示

最后就完成了

附:之前提到的田鼠方法的vxl存在“多了就卡”的问题,为了解决它现在可以不必像那种方法一样每个section都要存在有本体已有的体素部分,而只需要画动起来部分的体素即可。但在解决了卡顿的问题又会伴生出螺旋桨被本体遮挡的问题,我这里分享的一个经验是单帧螺旋桨动画不要与本体Z方向有平行重叠,而是稍微错开一定角度,有助于缓解遮挡问题。


[进阶教程]vxl抖动问题新解的评论 (共 条)

分享到微博请遵守国家法律