转载请标明出处:http://blog.youkuaiyun.com/u013015161/article/details/46495561
使用EasyTouch插件,其提供的虚拟摇杆有一个Dynamic stick属性, 勾选之后, 只有当鼠标或者手指触摸到屏幕, 才会在手指或鼠标触碰的位置出现虚拟摇杆。
当场景中存在UI控件时,会出现以下场景。
很显然 , 当玩家点击按钮的时候依然弹出虚拟摇杆是不合理的。
解决这个问题,首先得看虚拟摇杆何时会弹出, 在EasyJoystick.cs中可以找到以下代码:
if ((showZone && areaTexture!=null && !dynamicJoystick) || (showZone && dynamicJoystick && virtualJoystick && areaTexture!=null)
|| (dynamicJoystick && Application.isEditor && !Application.isPlaying)){
if (isActivated){
GUI.color = areaColor;
if (Application.isPlaying && !dynamicJoystick){
EasyTouch.RemoveReservedArea( areaRect );
EasyTouch.AddReservedArea( areaRect );
}
}
else{
GUI.color = new Color(areaColor.r,areaColor.g,areaColor.b,0.2f);
if (Application.isPlaying && !dynamicJoystick){
EasyTouch.RemoveReservedArea( areaRect );
}
}
if (showDebugRadius && Application.isEditor){
GUI.Box( areaRect,"");
}
GUI.DrawTexture( areaRect, areaTexture,ScaleMode.StretchToFill,tr