123 第1页 | 共3 页下一页
返回列表 发新帖
查看: 11082|回复: 27
打印 上一主题 下一主题

[教程] 快速创建双摇杆的工具 - Easy Touch

[复制链接]

955

主题

164

听众

7万

积分

版主

Rank: 7Rank: 7Rank: 7

纳金币
59338
精华
28

活跃会员 荣誉管理 突出贡献 优秀版主 论坛元老

跳转到指定楼层
楼主
发表于 2013-4-11 12:55:55 |只看该作者 |倒序浏览
pstatus"> 本帖最后由 艾西格亚 于 2013-4-13 02:41 编辑

快速创建双摇杆的工具 - Easy Touch

在一些以往的教程里面大多已经介绍过了摇杆的GUI制作方式,不过对于一些不是懂程序的朋友来说,要做到将摇杆与场景内角色动作进行连接就有些难度了,有鉴于此,我们推荐一个比较方便的工具来完成上述的工作,这个使用的工具的为 Easy Touch,从名称上来看就能理解应该是很容易操作的一个东西。

现在,我们就来实际的安装与操作,首先导入Easy Touch的资源包,这个资源代号是2.5的版本,可以用在3.5.x 与4.0的Unity版本上面。插件下载位置 :http://www.narkii.com/club/thread-282960-1.html
1.jpg

如图,安装完成后,在Assets目录里面多了一个Easy Touch的文件夹。
2.jpg

我们在场景内放置了一个第三人称的角色,这个模型的套件是从Character Controller资源包内所导入,也是我们经常用来测试游戏效果的一套工具。
3.jpg

从模型的结构可看到里面有骨架动作(Bip01), 相机控制(CameraAxis)与Construction_Worker这几种组件。
4.jpg

接着选择 Hedgehog Team > Easy Touch > Extensions > Adding a new joystick功能,在Game视图内自动在左下方增加一个默认的摇杆图示。
5.jpg


将Hierarchy里面自动生成的New Joystick 更名为Move_Turn_Joystick,表示左边的摇杆的作用设定为移动与转向,同时系统内也会自动增加一个Easy Touch的控制组件。
7.jpg

Easy Touch的控制组件主要是一些基本属性的设定,原则上来说保持默认的设置即可。
8.jpg

在Move_Turn_Joystick的属性里面需要对摇杆的设置进行一些调整,首先是摇杆位置的调整,我们可以修改Joystick position的XY数值来改变摇杆在游戏画面的水平与高低位置。
9.jpg

如图,通过Joystick position的XY数值可随时调整摇杆的位置。
10.jpg

将Interaction的栏目第一个选项Interaction type更换为Direct And Event, 使用这个选项可以让摇杆的控制与角色的动作事件产生连接,将XY axis speed(水平与垂直的轴向移动)分别设定为50与10来调整摇杆的灵敏度, 然后将Player(角色组件)拖曳到Joystick X to 的栏位,Influenced 更改为Rotate,Axis influenced 设置为Y,表示在摇杆左右移动时角色会以Y为轴心进行旋转。Joystick Y to也是相同的做法,差别在于Influenced 设置为Translate Local的移动模式,选择Z轴表示摇杆在上下作用时,角色会在Z轴(地面)进行移动。
11.jpg

按下Play进行测试,当我们使用鼠标对摇杆进行不同方向的移动时,角色会进行左右视角的观看与前进的动作。
12.jpg

接下来设置右边的摇杆,同样的选择Hedgehog Team > Easy Touch > Extensions > Adding a new joystick功能增加另一个的摇杆组件,然后将名称更改为cameraController。
14.jpg

在游戏画面中cameraController是属于右摇杆的部分,所以我们需要调整Joystick position的XY数值,使其能与左摇杆有一个显示的区分。
15.jpg

16.jpg

由于右摇杆只用来控制相机的动作,所以在Interaction type只需选择Directi模式即可。
XY的Axis Speed设置为50与2,然后将相机的定位点CameraAxis拖曳到Joystick X to的栏位,Influenced 选择Rotate Local模式,对应的转向为Y轴。
将相机拖曳到Joystick Y to 的栏位,Influenced 选择Translate Local模式,对应的转向为Z轴,这个设定的作用是让右摇杆能控制相机视角的转向与远进。


设置完成后进行Play测试,现在两个摇杆分别控制了视角的变化与角色的行进动作。
19.jpg



完成所有设定之后,我们来看看角色对应左摇杆所使用的脚本内容:

using UnityEngine;
using System.Collections;

/// <summary>
/// Joystick event
/// </summary>
public class JoystickEvent : MonoBehaviour {

    void OnEnable(){
        EasyJoystick.On_JoystickMove += On_JoystickMove;
        EasyJoystick.On_JoystickMoveEnd += On_JoystickMoveEnd;
    }
   
    void OnDisable(){
        EasyJoystick.On_JoystickMove -= On_JoystickMove    ;
        EasyJoystick.On_JoystickMoveEnd -= On_JoystickMoveEnd;
    }
        
    void OnDestroy(){
        EasyJoystick.On_JoystickMove -= On_JoystickMove;   
        EasyJoystick.On_JoystickMoveEnd -= On_JoystickMoveEnd;
    }
   
//用来对应建立的摇杆组件名称,在摇杆没有任何作用的情况下,角色为静止的动作。
    void On_JoystickMoveEnd(MovingJoystick move){
        if (move.joystickName == "Move_Turn_Joystick"){
            animation.CrossFade("idle");
        }
    }

// 摇杆的Y轴如果偏移值大于0并小于0.5的数值,角色动作更换为走路,如果等于或是大于0.5则切换为跑步的动作。

    void On_JoystickMove( MovingJoystick move){
        if (move.joystickName == "Move_Turn_Joystick"){
            if (Mathf.Abs(move.joystickAxis.y)>0 && Mathf.Abs(move.joystickAxis.y)<0.5){
                animation.CrossFade("walk");
               
            }   
            else if (Mathf.Abs(move.joystickAxis.y)>=0.5){
                animation.CrossFade("run");   
            }
        }
    }
}

Easy Touch是一个快速而方便的触控性插件,除了摇杆的制作功能,多点触控的设计亦是这个插件的极大优势,在后面的章节里面,我们将会针对多点触控部分进行更多的介绍。



分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏2 支持支持0 反对反对0
回复

使用道具 举报

40

主题

0

听众

2万

积分

资深设计师

Rank: 7Rank: 7Rank: 7

纳金币
279
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

沙发
发表于 2013-4-13 00:46:33 |只看该作者
谢谢楼主分享,正好缺少资料
回复

使用道具 举报

may    

8830

主题

80

听众

7万

积分

首席设计师

Rank: 8Rank: 8

纳金币
52304
精华
343

最佳新人 热心会员 灌水之王 活跃会员 突出贡献 荣誉管理 论坛元老

板凳
发表于 2013-4-13 02:41:53 |只看该作者
学习了,很方便的资源
回复

使用道具 举报

2317

主题

54

听众

2万

积分

资深设计师

Rank: 7Rank: 7Rank: 7

纳金币
20645
精华
62

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

地板
发表于 2013-4-13 03:12:33 |只看该作者
那个浮水印真是够大了。。。
回复

使用道具 举报

1

主题

1

听众

731

积分

初级设计师

Rank: 3Rank: 3

纳金币
7
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

5#
发表于 2013-4-13 09:29:53 |只看该作者
学习一下,这个创建摇杆很方便
回复

使用道具 举报

0

主题

2

听众

98

积分

设计初学者

Rank: 1

纳金币
-3
精华
0

活跃会员 灌水之王

6#
发表于 2013-4-13 10:30:01 |只看该作者
thanks学习一下,这个创建摇杆很方便
回复

使用道具 举报

may    

8830

主题

80

听众

7万

积分

首席设计师

Rank: 8Rank: 8

纳金币
52304
精华
343

最佳新人 热心会员 灌水之王 活跃会员 突出贡献 荣誉管理 论坛元老

7#
发表于 2013-4-13 15:28:34 |只看该作者
用在手机上应该也是ok吧
回复

使用道具 举报

6

主题

1

听众

1473

积分

助理设计师

Rank: 4

纳金币
126
精华
1
8#
发表于 2013-5-5 00:24:21 |只看该作者
老大V5~~~好教程!~
回复

使用道具 举报

0

主题

1

听众

142

积分

设计实习生

Rank: 2

纳金币
72
精华
0

最佳新人

9#
发表于 2013-5-6 16:52:12 |只看该作者
好教程  感謝大大
回复

使用道具 举报

1

主题

1

听众

731

积分

初级设计师

Rank: 3Rank: 3

纳金币
7
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

10#
发表于 2013-5-7 09:28:40 |只看该作者
这个做摇杆很方便啊
回复

使用道具 举报

123 第1页 | 共3 页下一页
返回列表 发新帖
您需要登录后才可以回帖 登录 | 立即注册

关闭

站长推荐上一条 /1 下一条

手机版|纳金网 ( 闽ICP备08008928号

GMT+8, 2024-4-28 18:24 , Processed in 0.095730 second(s), 35 queries .

Powered by Discuz!-创意设计 X2.5

© 2008-2019 Narkii Inc.

回顶部