在经过稍微浅一些的水域时,要将手中的武器抬高至水面以上。要实现这个功能不能像实现后坐力那样为武器Pitch轴增加旋转量,而是要在武器的Z轴上进行提高。
首先定义全局变量AddDrawZ,储存武器location提高量。
在function setpostion()中添加以下代码
if(holder.TouchingWaterVolume())//使用者是否触碰水域
AddDrawZ=fInterpTo(AddDrawZ,10,WorldInfo.DeltaSeconds,1.f);//逐渐将AddDrawZ从0增加到10
else
AddDrawZ=fInterpTo(AddDrawZ,0,WorldInfo.DeltaSeconds,1.f);//逐渐将AddDrawZ从当前数值减少到零。
最后DrawOffset.Z+=AddDrawZ;//设置DrawOffset的Z轴
注 DrawOffset是armmesh的坐标。
效果如下(有过渡效果)


首先定义全局变量AddDrawZ,储存武器location提高量。
在function setpostion()中添加以下代码
if(holder.TouchingWaterVolume())//使用者是否触碰水域
AddDrawZ=fInterpTo(AddDrawZ,10,WorldInfo.DeltaSeconds,1.f);//逐渐将AddDrawZ从0增加到10
else
AddDrawZ=fInterpTo(AddDrawZ,0,WorldInfo.DeltaSeconds,1.f);//逐渐将AddDrawZ从当前数值减少到零。
最后DrawOffset.Z+=AddDrawZ;//设置DrawOffset的Z轴
注 DrawOffset是armmesh的坐标。
效果如下(有过渡效果)

