最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Unity 2017使用UGUI實(shí)現(xiàn)大轉(zhuǎn)盤抽獎

 更新時(shí)間:2020年10月28日 10:12:56   作者:伊卡-牛牛  
這篇文章主要為大家詳細(xì)介紹了Unity 2017使用UGUI實(shí)現(xiàn)大轉(zhuǎn)盤抽獎,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了Unity 2017實(shí)現(xiàn)大轉(zhuǎn)盤抽獎的具體代碼,供大家參考,具體內(nèi)容如下

涉及到的插件:Dotween

在“Hierarchy”面板創(chuàng)建一個Image,這個Image用來顯示大轉(zhuǎn)盤的那個圓盤,我用的UGUI里默認(rèn)的那個圓圓的圖片,放大后很模糊,不過不打緊

接著創(chuàng)建一個Panel名字改成“獎品組”,這個是獎品的父物體,記得吧Panel里的Image,Canvas Renderer組件刪了
然后在創(chuàng)建一個Panel名字改成“Awar”用制作獎品的,一樣的吧Image,CanvasRenderer組件刪除

然后在Awar中創(chuàng)建Image,Text,分別吧名字改為“Ico,desc”,然后設(shè)置一下自己想要的效果,我設(shè)置的Ico上方,Desc下方

如圖:

結(jié)構(gòu)圖:

 

*需要注意的地方:把Awar的小藍(lán)點(diǎn)移動到圓盤的中心如圖:

如果這步?jīng)]做后面的自動生成代碼生成就不準(zhǔn)嘍

然后寫一個代碼:生成的腳本

public class GenerateAwar:MonoBehaviour{
 public GameObject AwarGameObject; //上面制作的Awar物體
 public int Count = 10; // 生成個數(shù),當(dāng)你根據(jù)數(shù)據(jù)生成個數(shù)的時(shí)候記得修改

 void OnEnable ()
 {
 var angle = 360 / Count; // 計(jì)算每個獎品的Z軸度數(shù)
 var additionAngle = 0; //當(dāng)前角度
 for (var i = 0; i < Count; i++)
 {
  var obj = Instantiate(AwarGameObject);
  additionAngle = angle + additionAngle;
  obj.transform.Rotate(Vector3.forward,additionAngle);
  Log.Error(obj.transform.localRotation.eulerAngles.z);
  obj.transform.SetParent(transform,false);
  obj.SetActive(true);
 }
 }
}

然后掛到”獎品組“身上
如:

那個獎品就是Awar,我名字改不回來了,似乎是unity的問題,哇哈哈哈
然后運(yùn)行,就能看到如圖效果:

然后創(chuàng)建一個指針放在中心編寫一個腳本:旋轉(zhuǎn)指針的腳本

//這個腳本掛在指針身上,
//然后在抽獎按鈕的Button事件里拖入指針選擇這個類的SetTime方法
public class RotatePointer : MonoBehaviour
{

 private bool _isRotate = false;//是否旋轉(zhuǎn)
 public float ContinuousTime = 2;//旋轉(zhuǎn)時(shí)間
 public float Speed = 2000;//旋轉(zhuǎn)速度
 public float Angle = 0; // 這個是設(shè)置停止的角度
 private float _time;
 // Update is called once per frame
 void Update () {

 if (!_isRotate)return; //不旋轉(zhuǎn)結(jié)束

 if (Time.time < _time) // 沒結(jié)束
 {
  transform.Rotate(Vector3.forward * Speed * Time.deltaTime);
 }
 else
 {
 //結(jié)束,使用DoTween旋轉(zhuǎn)到結(jié)束角度,耗時(shí)1秒
 //這里有個360,使用來防止指針回轉(zhuǎn)的,如果不加這個360,你會看到指針倒退
  transform.DORotate(new Vector3(0, 0, 360 + Angle), 1f, RotateMode.FastBeyond360);
  _isRotate = false; // 設(shè)置不旋轉(zhuǎn)
 }
 }

 //外部調(diào)用,初始化時(shí)間和打開旋轉(zhuǎn)
 public void SetTime()
 {
 _time = Time.time + ContinuousTime;
 _isRotate = true;
 }
 //外部調(diào)用,設(shè)置停止角度
 public void SetAngle(float angle)
 {
 Angle = angle;
 }
}

指針:

開始按鈕:

因?yàn)殡娔X上沒什么制作動圖的軟件,如果效果我就結(jié)束,旋轉(zhuǎn)個1張

旋轉(zhuǎn):

結(jié)束:

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • C#?xml序列化實(shí)現(xiàn)及遇到的坑

    C#?xml序列化實(shí)現(xiàn)及遇到的坑

    在C#中,當(dāng)我們需要將對象存儲到文件或通過網(wǎng)絡(luò)發(fā)送時(shí),我們可以使用XML序列化將C#對象轉(zhuǎn)換為XML文檔,以便于存儲、傳輸和還原,本文主要介紹了C#?xml序列化實(shí)現(xiàn)及遇到的坑,感興趣的可以了解一下
    2023-09-09
  • C#中使用NLog庫進(jìn)行日志記錄的流程詳解

    C#中使用NLog庫進(jìn)行日志記錄的流程詳解

    NLog 是 .NET 的日志記錄框架,具有豐富的日志路由和管理能力,極大地幫助您生成和管理日志,NLog 是一個庫,可以輕松地同時(shí)記錄和管理多個不同區(qū)域中的數(shù)據(jù),本文將給大家介紹在C#中使用 NLog 庫進(jìn)行日志記錄的教程,需要的朋友可以參考下
    2024-06-06
  • C# 通過同步和異步實(shí)現(xiàn)優(yōu)化做早餐的時(shí)間

    C# 通過同步和異步實(shí)現(xiàn)優(yōu)化做早餐的時(shí)間

    本文以一個簡單的小例子—如何做一頓早餐及如何優(yōu)化做早餐的時(shí)間來讓大家具體了解一下同步和異步方法的區(qū)別,需要的朋友可以參考一下
    2021-12-12
  • C#/VB.NET實(shí)現(xiàn)將XML轉(zhuǎn)為PDF

    C#/VB.NET實(shí)現(xiàn)將XML轉(zhuǎn)為PDF

    可擴(kuò)展標(biāo)記語言(XML)文件是一種標(biāo)準(zhǔn)的文本文件,它使用特定的標(biāo)記來描述文檔的結(jié)構(gòu)以及其他特性。本文將利用C#實(shí)現(xiàn)XML文件轉(zhuǎn)PDF?,需要的可以參考一下
    2022-03-03
  • C#中timer類的用法總結(jié)

    C#中timer類的用法總結(jié)

    System.Windows.Forms.Timer是應(yīng)用于WinForm中的,它是通過Windows消息機(jī)制實(shí)現(xiàn)的,類似于VB或Delphi中的Timer控件,內(nèi)部使用API SetTimer實(shí)現(xiàn)的。它的主要缺點(diǎn)是計(jì)時(shí)不精確,而且必須有消息循環(huán)
    2013-10-10
  • ToLua框架下C#與Lua代碼的互調(diào)操作

    ToLua框架下C#與Lua代碼的互調(diào)操作

    這篇文章主要介紹了ToLua框架下C#與Lua代碼的互調(diào)操作,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • C#實(shí)現(xiàn)實(shí)體類和XML的相互轉(zhuǎn)換

    C#實(shí)現(xiàn)實(shí)體類和XML的相互轉(zhuǎn)換

    本文詳細(xì)講解了C#實(shí)現(xiàn)實(shí)體類和XML的相互轉(zhuǎn)換,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-02-02
  • 使用C#語言實(shí)現(xiàn)的查詢條件界面展開和收起功能

    使用C#語言實(shí)現(xiàn)的查詢條件界面展開和收起功能

    這篇文章主要介紹了使用C#語言實(shí)現(xiàn)的查詢條件界面展開和收起功能的完美解決方案,需要的朋友可以參考下
    2016-11-11
  • C#版免費(fèi)離線人臉識別之虹軟ArcSoft?V3.0(推薦)

    C#版免費(fèi)離線人臉識別之虹軟ArcSoft?V3.0(推薦)

    本文只是簡單介紹了如何使用虹軟的離線SDK,進(jìn)行人臉識別的方法,并且是圖片的方式,本地離線識別最大的好處就是沒有延遲,識別結(jié)果立馬呈現(xiàn),對C#離線人臉識別虹軟相關(guān)知識感興趣的朋友一起看看吧
    2021-12-12
  • C#隊(duì)列的簡單使用

    C#隊(duì)列的簡單使用

    隊(duì)列的特性很簡答,就是先進(jìn)先出,一般利用數(shù)組來實(shí)現(xiàn),本文就介紹了C#隊(duì)列的簡單使用,文中根據(jù)實(shí)例編碼詳細(xì)介紹的十分詳盡,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03

最新評論

抚远县| 玉田县| 宁陵县| 临沭县| 志丹县| 天全县| 武定县| 鄱阳县| 临沭县| 英吉沙县| 凤山市| 瓮安县| 施秉县| 贵州省| 清徐县| 泾川县| 永嘉县| 卓资县| 突泉县| 广德县| 临高县| 新民市| 通化县| 临猗县| 报价| 凤城市| 景宁| 榆树市| 东海县| 岱山县| 蛟河市| 鹤庆县| 内黄县| 平利县| 石楼县| 南岸区| 泉州市| 来宾市| 司法| 察雅县| 北海市|