欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

Unity3D實(shí)現(xiàn)虛擬按鈕控制人物移動(dòng)效果

本文為大家分享了Unity3D實(shí)現(xiàn)虛擬按鈕控制人物移動(dòng)的具體代碼,供大家參考,具體內(nèi)容如下

創(chuàng)新互聯(lián)建站是一家專注于成都做網(wǎng)站、網(wǎng)站制作與策劃設(shè)計(jì),張掖網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)建站做網(wǎng)站,專注于網(wǎng)站建設(shè)10年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:張掖等地區(qū)。張掖做網(wǎng)站價(jià)格咨詢:13518219792

創(chuàng)建Image的UI組件,在Image下新建一個(gè)Button按鈕。在Image 和Button上拖進(jìn)Sprite圖片

Unity3D實(shí)現(xiàn)虛擬按鈕控制人物移動(dòng)效果

在Button按鈕上掛載該腳本

using System.Collections;
using UnityEngine;
using UnityEngine.EventSystems;
using UnityEngine.UI;
 
public class MyJoystick : MonoBehaviour, IPointerDownHandler, IPointerUpHandler {
 
 public Canvas canvas;
 public static float h;  //h和v的值傳回給player腳本,使得物體移動(dòng)
 public static float v;
 
 private bool isPress = false; //Button按鈕是否按下
 private Vector2 touchPos = Vector2.zero; //按下的位置
 
 void Update() {
  if (isPress)
  {
   RectTransformUtility.ScreenPointToLocalPointInRectangle(canvas.transform as RectTransform,
    Input.mousePosition, null, out touchPos);
 
   //根據(jù)Canvas和Image的Rectransform位置相減得出
   touchPos += new Vector2(427, 299); 
 
   float distance = Vector2.Distance(Vector2.zero, touchPos);
 
   if (distance > 52) { //限制Button不能超出Image位置(兩者位置相減得出52)
    touchPos = touchPos.normalized*52;
    transform.localPosition = touchPos;
   }
   else
   {
    transform.localPosition = touchPos;
   }
 
   h = touchPos.x / 52;
   v = touchPos.y / 52;
  }
 
 }
 
 //鼠標(biāo)按下時(shí)觸發(fā)
 public void OnPointerDown(PointerEventData eventData) {
  isPress = true;
 }
 
 //鼠標(biāo)按鍵彈起時(shí)觸發(fā)
 public void OnPointerUp(PointerEventData eventData)
 {
  isPress = false;
  transform.localPosition = Vector3.zero;
 }
 
}

在玩家身上掛載控制玩家移動(dòng)的腳本

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
 
public class PlayerMove : MonoBehaviour {
 
 public float speed = 0.1f;
 
 private float h = 0;
 private float v = 0;
 
 void Update() {
  //首先檢測(cè)虛擬按鍵有沒有移動(dòng),沒有再選擇鍵盤輸入
  if (Mathf.Abs(MyJoystick.h) > 0 || Mathf.Abs(MyJoystick.v) > 0) {
   h = MyJoystick.h;
   v = MyJoystick.v;
  }
  else{
   h = Input.GetAxis("Horizontal");
   v = Input.GetAxis("Vertical");
  }
  //玩家位置移動(dòng)
  if (Mathf.Abs(h) > 0.1 || Mathf.Abs(v) > 0.1) {
   Vector3 targetDir = new Vector3(h, 0, v);
   transform.position += targetDir * speed;
 
   transform.LookAt(transform.position+targetDir);
  }
  
 }
}

這樣,就能通過(guò)按下Button來(lái)控制玩家移動(dòng)了。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。

當(dāng)前標(biāo)題:Unity3D實(shí)現(xiàn)虛擬按鈕控制人物移動(dòng)效果
文章路徑:http://www.aaarwkj.com/article34/jegipe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供用戶體驗(yàn)、品牌網(wǎng)站建設(shè)網(wǎng)站設(shè)計(jì)公司、動(dòng)態(tài)網(wǎng)站、網(wǎng)頁(yè)設(shè)計(jì)公司商城網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

小程序開發(fā)
日本在线一区二区不卡视频| 亚洲精品一区二区三区三州| 成人欧美黑人一区二区| 四虎免费在线高清观看| 日韩视频一区二区三区系列| 国产精品黄色91熟女| 人妻有码中文字幕在线| 日韩欧美性生活免费观看| 日韩av高清不卡一区二区三区| 日本少妇激情后入嗯啊| 中文字幕人妻丝袜乱一区二区| 日韩av在线专区观看| 91亚洲精品综合久久| 中文岳妇荡欲丰满肥熟| 欧美日本国产高清不卡| 日韩一区二区三区无吗电影| 日韩欧美一区二区大片| 久热在线这里只有精品| 熟妇一区二区三区av| 日韩人成理论午夜福利| 色综合色很天天综合色| 国产视频一区二区麻豆| 麻豆一区二区人妻网站| 91麻豆精品一二三区在线| 巨乳中文乱码国产一区二区| 国语自产精品视频在线不卡| 香蕉视频欧美久久精品| 国产三级三级三级三级三级| 国产精品白嫩初高中害羞小美女| 一本久久综合亚洲鲁鲁五月天 | 九九九热在线观看视频| 日韩有码大片最新自拍| 亚洲美女毛茸茸的逼逼| 日韩亚洲精品99综合观看| 国产网红女主播视频一区二区| 一区二区亚洲国产精品| 亚洲中文无码亚洲人vr在线 | av网址在线免费观看| 精品伊人久久大香线蕉| 亚洲国产精品综合久久网络| 91久久亚洲综合精品成人|