欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

unity實現手機端搖桿控制人物移動

 更新時間:2020年04月14日 14:44:28   作者:魏恩君--Caroline  
這篇文章主要為大家詳細介紹了unity實現手機端搖桿控制人物移動,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

前言

玩過王者榮耀或者荒野行動的人,都知道,手機左下方或右下方都會有一個搖桿,滑動搖桿可以讓人物向360度方向移動。沒有玩過的可以看看下方圖片(荒野行動手機端為例)。本篇就來講解如何使用unity制作搖桿控制人物移動。

2種方法:

1.GUITexture制作,是unity自帶的一個joystick組件,主要由GUITexture和一個JS腳本構成。優(yōu)點:unity自帶,使用簡單方便。缺點是無法適應屏幕大小。

2.EasyTouch插件,可以實現1的功能并且克服了1的缺陷,可以適應屏幕大小。本篇文章也是主要講解使用easyTouch插件實現搖桿控制人物移動。

準備

1.導入easyTouch包。在網上下載easyTouch的package,然后import到項目中,這時候,菜單會出現Tools。這時候搖桿我們具備了。

2.導入人物。unity功能超級強大,自帶一個人物模型,叫Ethan。這個時候要導入Standard Assets。里面就有Ethan模型(具體在Standard Assets--character--ThirdPersonCharacter--Models--Ethan)。

具體實現

1.點擊菜單中的tools--Hedgehog Team--EasyTouch--Extensions--Add a new joystick,這時候scene中就有了一個搖桿。

2.導入Ethan,找到Ethan直接拖到scene中就OK。

3.joystick參數設置和介紹見下圖

3.寫腳本,綁定到人物Ethan上。

using UnityEngine;
using System.Collections;
 
public class MoveController : MonoBehaviour
{
 void OnEnable()
 {
 EasyJoystick.On_JoystickMove += OnJoystickMove;
 EasyJoystick.On_JoystickMoveEnd += OnJoystickMoveEnd;
 }
 
 //移動搖桿結束 
 void OnJoystickMoveEnd(MovingJoystick move)
 {
 //停止時,角色恢復狀態(tài)為idle 
 if (move.joystickName == "MoveJoystick")
 {
  GetComponent<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.Translate(Vector3.forward * Time.deltaTime * 100);
  //播放奔跑動畫 
  GetComponent<Animation>().CrossFade("run"); 
 }
 }
}
#endregion

4.由于腳本中人物的移動是播放動畫,unity本身就有很多走啊、跑啊、靜止的一些動畫,所以我們現在為Ethan添加動畫(animation)。如下圖所示:

5.由于我們的游戲是純第一人稱游戲,所以是不需要再游戲中看到自己的。所以為Ethan添加First Person Controller的腳本。(這個根據項目需要而定)。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • C# winfrom實現讀取修改xml

    C# winfrom實現讀取修改xml

    這篇文章主要為大家詳細介紹了C# winfrom實現讀取修改xml的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-05-05
  • C#圖片切割、圖片壓縮、縮略圖生成代碼匯總

    C#圖片切割、圖片壓縮、縮略圖生成代碼匯總

    這篇文章主要為大家匯總了C#圖片切割、圖片壓縮、縮略圖生成代碼,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-05-05
  • C#實現插入排序算法實例

    C#實現插入排序算法實例

    這篇文章主要介紹了C#實現插入排序算法,實例分析了插入排序算法的原理與實現技巧,需要的朋友可以參考下
    2015-05-05
  • 基于C#實現Word加蓋的騎縫章效果

    基于C#實現Word加蓋的騎縫章效果

    這篇文章主要為大家詳細介紹了如何使用C#實現Word加蓋的騎縫章效果,文中的示例代碼講解詳細,具有一定的借鑒價值,有需要的小伙伴可以參考下
    2024-01-01
  • C#下載網頁并在控制臺輸出的方法

    C#下載網頁并在控制臺輸出的方法

    這篇文章主要介紹了C#下載網頁并在控制臺輸出的方法,涉及C#基于http協(xié)議進行網頁抓取及控制臺輸出顯示的相關技巧,需要的朋友可以參考下
    2015-07-07
  • C#實現的簡單鏈表類實例

    C#實現的簡單鏈表類實例

    這篇文章主要介紹了C#實現的簡單鏈表類,涉及C#針對鏈表的定義、實現及鏈表節(jié)點的增加、刪除與修改技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-08-08
  • C#中 paint()與Onpaint()的區(qū)別

    C#中 paint()與Onpaint()的區(qū)別

    paint是事件onpaint方法onpaint方法是調用paint事件的,用哪一個,效果是一樣,就看那一個方便了內部是這樣實現的:
    2013-04-04
  • C#加密在實際中的應用

    C#加密在實際中的應用

    在系統(tǒng)的管理員有著實際的應用,對于一個數據庫管理系統(tǒng)來說,數據庫安全還是挺重要的,所以在存入到數據庫的密碼通常都是加密的
    2012-11-11
  • C#連接MySQL數據庫的方法步驟

    C#連接MySQL數據庫的方法步驟

    最近兩天在解決C#連接MySql數據庫的問題,通過不同的從網上學習,最終找到了解決的辦法,下面這篇文章主要給大家介紹了關于C#連接MySQL數據庫的方法步驟,需要的朋友可以參考下
    2023-01-01
  • 淺談C# winForm 窗體閃爍的問題

    淺談C# winForm 窗體閃爍的問題

    下面小編就為大家?guī)硪黄獪\談C# winForm 窗體閃爍的問題。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-01-01

最新評論