亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在Unity 2017中使用UGUI實現大轉盤抽獎

發布時間:2021-05-31 17:59:35 來源:億速云 閱讀:328 作者:Leah 欄目:編程語言

怎么在Unity 2017中使用UGUI實現大轉盤抽獎?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

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

 void OnEnable ()
 {
  var angle = 360 / Count; // 計算每個獎品的Z軸度數
  var additionAngle = 0; //當前角度
  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);
  }
 }
}

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

怎么在Unity 2017中使用UGUI實現大轉盤抽獎 

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

怎么在Unity 2017中使用UGUI實現大轉盤抽獎

然后創建一個指針放在中心編寫一個腳本:旋轉指針的腳本

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

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

  if (!_isRotate)return; //不旋轉結束

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

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

指針:

怎么在Unity 2017中使用UGUI實現大轉盤抽獎 

開始按鈕:

怎么在Unity 2017中使用UGUI實現大轉盤抽獎 

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

陇川县| 阳春市| 聂拉木县| 呼伦贝尔市| 乌海市| 井陉县| 清徐县| 昌图县| 府谷县| 新安县| 长白| 襄城县| 崇信县| 湖州市| 子洲县| 江都市| 儋州市| 九寨沟县| 栾城县| 土默特左旗| 长武县| 贵德县| 陈巴尔虎旗| 富裕县| 虎林市| 泊头市| 东城区| 巩留县| 开平市| 泰顺县| 中卫市| 融水| 辰溪县| 望奎县| 贵南县| 宁远县| 晋中市| 米易县| 阳新县| 梁河县| 集贤县|