Easy Touch 教程
转自:http://www.unitymanual.com/thread-31332-1-1.html
1.import “Easy Touch 3”的资源包
2.创建人物模型
3.创建地形
4.添加一个Joystick的实例 :Hedgehog Team->Easy Touch->Extensions->Add a new Joystick。这时我们可以看到它在左下角出来
5.设置摇杆的相关的参数,详见下图
6.新建一个脚本MoveController.cs 用来接收摇杆的事件,控制角色的移动。代码如下:
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
using
UnityEngine;
using
System.Collections;
public
class
MoveController
:
MonoBehaviour
{
void OnEnable
(
)
{
EasyJoystick.On_JoystickMove
+
=
OnJoystickMove;
EasyJoystick.On_JoystickMoveEnd
+
=
OnJoystickMoveEnd;
}
/
/
移动摇杆结束
void OnJoystickMoveEnd
(
MovingJoystick
move
)
{
/
/
停止时,角色恢复
idle
if
(
move
.joystickName
=
=
"MoveJoystick"
)
{
animation.CrossFade
(
"idle"
)
;
}
}
/
/
移动摇杆中
void OnJoystickMove
(
MovingJoystick
move
)
{
if
(
move
.joystickName !
=
"MoveJoystick"
)
{
return
;
}
/
/
获取摇杆中心偏移的坐标
float joyPositionX
=
move
.joystickAxis.x;
float joyPositionY
=
move
.joystickAxis.y;
if
(
joyPositionY !
=
0
|| joyPositionX !
=
0
)
{
/
/
设置角色的朝向(朝向当前坐标
+
摇杆偏移量)
transform.LookAt
(
new
Vector
3
(
transform.
position
.x
+
joyPositionX
,
transform.
position
.y
,
transform.
position
.z
+
joyPositionY
)
)
;
/
/
移动玩家的位置(按朝向位置移动)
transform.Translate
(
Vector
3.
forward
*
Time.deltaTime
*
5
)
;
/
/
播放奔跑动画
animation.CrossFade
(
"run"
)
;
}
}
}
|
完成收工,具体的效果图
最后我们来看看Easy Touch的参数
Easy Touch提供了虚拟摇杆的解决方案,基本能满足你的各种需求。包括前面所说的,定制UI,隐藏,指定区域等。可以在你的项目中尝试使用