<strong id="h7llx"><track id="h7llx"></track></strong>

<li id="h7llx"><object id="h7llx"></object></li>

<em id="h7llx"><acronym id="h7llx"><u id="h7llx"></u></acronym></em>
<rp id="h7llx"><acronym id="h7llx"><input id="h7llx"></input></acronym></rp>
<rp id="h7llx"></rp>
    <tbody id="h7llx"></tbody>

     找回密碼
     注冊帳號

    掃一掃,訪問微社區

    Unity unity 實現 指針跟隨鼠標旋轉和GTA武器菜單選擇等效果

    23
    回復
    4615
    查看
    打印 上一主題 下一主題
    [ 復制鏈接 ]
    5熟悉之中
    926/1000
    排名
    8080
    昨日變化

    3

    主題

    85

    帖子

    926

    積分

    Rank: 5Rank: 5

    UID
    216680
    好友
    2
    蠻牛幣
    47
    威望
    0
    注冊時間
    2017-4-7
    在線時間
    686 小時
    最后登錄
    2021-4-6

    馬上注冊,結交更多好友,享用更多功能,讓你輕松玩轉社區。

    您需要 登錄 才可以下載或查看,沒有帳號?注冊帳號

    x
    本帖最后由 狠沖洞 于 2020-4-30 14:04 編輯


    GTA武器菜單選擇

    簡單實現這種效果

    簡單實現這簡單實現這種效果簡單實現這種效果簡單實現這種效果簡單實現這種效果簡單實現這種效果簡單實現這種效果種效果


    Demo的效果






    以下是主要代碼


    [C#] 純文本查看 復制代碼
    using System.Collections;
    using System.Collections.Generic;
    using UnityEngine;
    using UnityEngine.UI;
    
    public class Menu : MonoBehaviour {
    
        public Image[] items;
    
        public Color nomorlColor;
        public Color heightColor;
    
        int oldItemIndex = 0;
    
        // Use this for initialization
        void Start () {
            
        }
       
        // Update is called once per frame
        void Update () {
            int currentItemindex = GetItemIndex();
            //設置高亮,并將其他item置回默認樣式
            if (oldItemIndex != currentItemindex)
            {
                items[currentItemindex].color = heightColor;
                items[oldItemIndex].color = nomorlColor;
                oldItemIndex = currentItemindex;
            }
    
            if (Input.GetMouseButtonDown(0))
            {
               //點擊左鍵確認選擇,這里未做處理
            }
        }
    
        //根據角度獲得當前鼠標所處的image數組的index
        int GetItemIndex()
        {
            //V是鼠標相對屏幕大小以中心點原點的2維向量
            Vector2 v = new Vector2(Input.mousePosition.x / Screen.width - 0.5f, Input.mousePosition.y / Screen.height - 0.5f);
            //f是(相對屏幕大小以中心點原點的坐標系)(0,1)與v的角度
            float f = Mathf.Atan2(v.x, v.y) * Mathf.Rad2Deg + 180;
            //根據f返回index
            return ((int)(f / (360/items.Length)));
        }
    
    }
    



    ---

    指針跟隨鼠標旋轉

    效果1





    效果2





    這里可以看到,旋轉的中心不再局限于屏幕中心的位置了,而是可以以任意位置為中心進行旋轉.



    需要注意的是




    Canvas需要設置為overlay模式,其他模式下實現方式需要大家自己研究,這里只能使用overlay模式




    以下是主要代碼

    [C#] 純文本查看 復制代碼
    using System.Collections;
    using System.Collections.Generic;
    using UnityEngine;
    using UnityEngine.UI;
    
    public class RotateNeedle : MonoBehaviour {
    
        public Transform center;
        public Transform needle;
    
        public Color heightColor;
        private Color nomorlColor = Color.white;
    
        private Image needleImg;
        private bool isRotate = false;
    
        void Start () {
            needleImg = needle.GetComponent<Image>();
            nomorlColor = needleImg.color;
        }
       
        void Update () {
            if (Input.GetMouseButtonDown(0))
            {
                isRotate = true;
            }
            if (Input.GetMouseButtonUp(0))
            {
                isRotate = false;
                needleImg.color = nomorlColor;
            }
            if (isRotate)
            {
                SetNeedleAngle(needle, center);
                needleImg.color = heightColor;
            }
        }
    
        void SetNeedleAngle(Transform _needle, Transform _center)
        {
            if (_needle == null || _center == null)
            {
                return;
            }
            var centerX = _center.transform.position.x;
            var centerY = _center.transform.position.y;
    
            var centerScreenPos = Camera.main.WorldToScreenPoint(center.transform.position);
            var mouseScreenPos = Camera.main.WorldToScreenPoint(Input.mousePosition);
            var angle = new Vector3(mouseScreenPos.x - centerScreenPos.x, mouseScreenPos.y - centerScreenPos.y, 0);
            var f = Mathf.Atan2(angle.x, angle.y) * Mathf.Rad2Deg;
            _needle.eulerAngles = Vector3.back* f;
        }
    }
    



    下載地址




    回復

    使用道具 舉報

    7日久生情
    2481/5000
    排名
    8744
    昨日變化

    0

    主題

    340

    帖子

    2481

    積分

    Rank: 7Rank: 7Rank: 7Rank: 7

    UID
    236487
    好友
    10
    蠻牛幣
    7627
    威望
    0
    注冊時間
    2017-8-8
    在線時間
    2005 小時
    最后登錄
    2021-3-31
    沙發
    2020-5-12 15:18:47 只看該作者
    狠沖洞
    5熟悉之中
    771/1000
    排名8082昨日變化
    3
    主題       
    82
    帖子       
    771
    積分
    Rank: 5Rank: 5
    UID216680好友2蠻牛幣124威望0注冊時間2017-4-7在線時間534 小時最后登錄2020-5-11
    回復 支持 反對

    使用道具 舉報

    5熟悉之中
    568/1000
    排名
    5605
    昨日變化

    1

    主題

    39

    帖子

    568

    積分

    Rank: 5Rank: 5

    UID
    264005
    好友
    0
    蠻牛幣
    868
    威望
    0
    注冊時間
    2018-1-11
    在線時間
    276 小時
    最后登錄
    2021-3-17
    板凳
    2020-5-15 13:37:38 只看該作者
    借鑒一下
    回復

    使用道具 舉報

    8常駐蠻牛
    7964/10000
    排名
    246
    昨日變化

    0

    主題

    4062

    帖子

    7964

    積分

    Rank: 8Rank: 8

    UID
    3215
    好友
    0
    蠻牛幣
    20
    威望
    0
    注冊時間
    2013-9-4
    在線時間
    1906 小時
    最后登錄
    2021-3-30
    地板
    2020-5-16 08:40:27 只看該作者
    6666666666666666666
    回復 支持 反對

    使用道具 舉報

    0

    主題

    27

    帖子

    36

    積分

    Rank: 1

    UID
    347133
    好友
    0
    蠻牛幣
    3
    威望
    0
    注冊時間
    2020-5-16
    在線時間
    9 小時
    最后登錄
    2020-11-26
    5#
    2020-5-17 14:33:42 只看該作者
    6666666666666666666
    回復 支持 反對

    使用道具 舉報

    0

    主題

    6

    帖子

    11

    積分

    Rank: 1

    UID
    328760
    好友
    0
    蠻牛幣
    1
    威望
    0
    注冊時間
    2019-8-6
    在線時間
    5 小時
    最后登錄
    2020-5-20
    6#
    2020-5-20 12:18:43 只看該作者
    感謝分享 已收藏
    回復

    使用道具 舉報

    4四處流浪
    418/500

    0

    主題

    16

    帖子

    418

    積分

    Rank: 4

    UID
    325168
    好友
    0
    蠻牛幣
    82
    威望
    0
    注冊時間
    2019-6-19
    在線時間
    402 小時
    最后登錄
    2020-12-7
    7#
    2020-5-22 10:41:31 只看該作者
    6666666值得學習
    回復 支持 反對

    使用道具 舉報

    4四處流浪
    348/500

    0

    主題

    126

    帖子

    348

    積分

    Rank: 4

    UID
    342428
    好友
    0
    蠻牛幣
    59
    威望
    0
    注冊時間
    2020-3-16
    在線時間
    222 小時
    最后登錄
    2021-4-6
    8#
    2020-5-24 10:55:31 只看該作者

    6666666666666666666
    回復 支持 反對

    使用道具 舉報

    6蠻牛粉絲
    1015/1500
    排名
    16592
    昨日變化

    0

    主題

    130

    帖子

    1015

    積分

    Rank: 6Rank: 6Rank: 6

    UID
    159377
    好友
    1
    蠻牛幣
    336
    威望
    0
    注冊時間
    2016-7-28
    在線時間
    843 小時
    最后登錄
    2021-4-5
    9#
    2020-5-25 10:25:41 只看該作者
    馬克一下代碼
    回復

    使用道具 舉報

    4四處流浪
    393/500
    排名
    10110
    昨日變化

    5

    主題

    76

    帖子

    393

    積分

    Rank: 4

    UID
    61899
    好友
    7
    蠻牛幣
    0
    威望
    0
    注冊時間
    2014-12-17
    在線時間
    203 小時
    最后登錄
    2020-5-26
    10#
    2020-5-26 10:55:06 只看該作者
    thanks for share
    回復

    使用道具 舉報

    4四處流浪
    422/500
    排名
    24130
    昨日變化

    0

    主題

    190

    帖子

    422

    積分

    Rank: 4

    UID
    8
    好友
    0
    蠻牛幣
    1
    威望
    0
    注冊時間
    2013-5-27
    在線時間
    214 小時
    最后登錄
    2021-3-30
    11#
    2020-5-27 10:20:46 只看該作者
    看起來效果很不錯
    回復 支持 反對

    使用道具 舉報

    0

    主題

    28

    帖子

    80

    積分

    Rank: 2Rank: 2

    UID
    312439
    好友
    0
    蠻牛幣
    41
    威望
    0
    注冊時間
    2019-1-22
    在線時間
    52 小時
    最后登錄
    2021-4-7
    12#
    2020-5-27 17:50:51 只看該作者
    可以 很強大6666
    回復

    使用道具 舉報

    5熟悉之中
    835/1000
    排名
    5511
    昨日變化

    2

    主題

    180

    帖子

    835

    積分

    Rank: 5Rank: 5

    UID
    258871
    好友
    0
    蠻牛幣
    1377
    威望
    0
    注冊時間
    2017-12-10
    在線時間
    395 小時
    最后登錄
    2021-2-23
    13#
    2020-6-1 14:48:30 只看該作者
    可不可以做個圓環顏色漸變
    回復 支持 反對

    使用道具 舉報

    5熟悉之中
    889/1000
    排名
    8913
    昨日變化

    1

    主題

    138

    帖子

    889

    積分

    Rank: 5Rank: 5

    UID
    247146
    好友
    0
    蠻牛幣
    525
    威望
    0
    注冊時間
    2017-10-4
    在線時間
    620 小時
    最后登錄
    2021-2-5
    14#
    2020-6-10 10:10:39 只看該作者
    白嫖黨福音,扎鐵了老心
    回復 支持 反對

    使用道具 舉報

    2初來乍到
    148/150
    排名
    64952
    昨日變化

    0

    主題

    74

    帖子

    148

    積分

    Rank: 2Rank: 2

    UID
    277854
    好友
    0
    蠻牛幣
    369
    威望
    0
    注冊時間
    2018-4-18
    在線時間
    72 小時
    最后登錄
    2021-3-30
    15#
    2020-6-12 21:30:33 只看該作者
    感謝分享?。?!
    回復

    使用道具 舉報

    您需要登錄后才可以回帖 登錄 | 注冊帳號

    本版積分規則

    關注游戲蠻牛公眾號送vip
    神马电影34pp影视午夜|久久热视频任意撸|155女生能接受几厘米|97色色97成人
    <strong id="h7llx"><track id="h7llx"></track></strong>

    <li id="h7llx"><object id="h7llx"></object></li>

    <em id="h7llx"><acronym id="h7llx"><u id="h7llx"></u></acronym></em>
    <rp id="h7llx"><acronym id="h7llx"><input id="h7llx"></input></acronym></rp>
    <rp id="h7llx"></rp>
      <tbody id="h7llx"></tbody>