ARPG游戏打击感相关的技术简单总结

说好的技术总结,根据近期的工作总结一下体现游戏打击感相关的技术。一般arpg的游戏打击感除了场景的氛围的烘托,策划的数值:连击,奖励伤害数字的连贯积累反馈,硬直加物理击飞ragdoll,更不可忽视的也是最基本的是保证攻击受击图像效果,声音和打击、受击动作的准确配合。
这个过程就可以有一些技术辅助体现了。
例如挥刀过程中出现的刀光轨迹、对表现气流的变化造成的空间扭曲、甚至由于技能强势战斗激烈造成的相机晃动、还有一些全屏特效的烘托,比如全屏的colorgrading控制黑白甚至饱和度、反色的渐变。抑或是普通的屏幕特效沾满的血迹。说技术。

刀光轨迹制作:
程序可以自动生成平滑的刀光轨迹,一般是每帧获取刀尖和刀柄的控制点的POSITION,并通过两帧的控制点差值出新的顶点,共同构建曲面贴图而成。这种节约了美术的工作量及资源的内存量,稍微消耗一些运行期的性能。
当然更好的刀光轨迹效果是美术预编辑的mesh制作的特效动画,增加一些资源量和工作量而已。

扭曲效果实现:
扭曲可以简单的实现在后处理中,场景绘制结束后,通过对场景图的UV进行扰动,使用新的UV采样场景图作为最终的场景颜色,类似视察texture的算法。

一般的可以最后绘制带有扭曲的特效,将扰动的信息统一绘制到buffer中。如图扭曲的样例。  

ARPG游戏打击感相关的技术简单总结
相机震动
播放某技能时相机可以有一定的晃动,类似角色敲击地面时为了表现力道,相机可以高频的上下晃动,一般就是对相机进行相应的变换即可。

enum AxisType
{
AT_CAMERA_DIR = 0, // 沿相机前后抖动
AT_CAMERA_RIGHT, // 沿相机左右抖动
AT_CAMERA_UP, // 沿相机上下抖动
AT_WORLD_Z, // 沿世界坐标系 Z轴抖动
};

对相应的轴向做震荡变换,震荡的波形也可以选择常数波,三角波,正弦波等。可以做出工具由美术设计师发挥。

其他的,还比如一些破碎等通过物理引擎模拟,或者直接做死动画;基于深度的贴花;残影,motionblure表现出招的迅速等。

 

你可能感兴趣的:(RPG)