[Unity][Animator]抽奖卡牌
发布日期:2021-05-09 11:58:29 浏览次数:24 分类:技术文章

本文共 2336 字,大约阅读时间需要 7 分钟。

 

 

 

 

 

 


 

主摄像机的 Rotation的 X 为90,使其正对着Panel

 

using UnityEngine;using UnityEngine.AI;public class Test_Card : MonoBehaviour {    public Camera cam;//主摄像机    public int hitDistance = 1000;    ///     /// 抽奖卡牌 实体    ///     public Transform card1;    ///     /// 抽奖卡牌 实体    ///     public Transform card2;    ///     /// 抽奖卡牌 实体    ///     public Transform card3;    ///     /// 抽奖卡牌 实体,移动的目的地    ///     public Transform trans_Pos1;    ///     /// 抽奖卡牌 实体,移动的目的地    ///     public Transform trans_Pos2;    ///     /// 抽奖卡牌 实体,移动的目的地    ///     public Transform trans_Pos3;    // Use this for initialization 当程序 运行时,一开始运行的代码    void Start () {        if (card1 != null && trans_Pos2 != null)        {            card1.GetComponent
().SetDestination(trans_Pos2.position); ;//using UnityEngine.AI; card1.transform.GetComponent
().Play("TestCard_Card", 0);//播放动画 } if (card2 != null && trans_Pos3 != null) { card2.GetComponent
().SetDestination(trans_Pos3.position); ;//using UnityEngine.AI; card2.transform.GetComponent
().Play("TestCard_Card", 0); } if (card3 != null && trans_Pos1 != null) { card3.GetComponent
().SetDestination(trans_Pos1.position); ;//using UnityEngine.AI; card3.transform.GetComponent
().Play("TestCard_Card", 0); } } // Update is called once per frame void Update () { Ray ray = cam.ScreenPointToRay(Input.mousePosition); RaycastHit hit; int layA = LayerMask.NameToLayer("Card"); if ( Physics.Raycast( ray, out hit, 1000, (1 << layA) ) //&& hit.collider.gameObject.layer == LayerMask.NameToLayer("Floor") )//从 主摄像机发出射线 { if (hit.collider.gameObject.layer == layA && Input.GetMouseButton(1))// 判断鼠标点击右键 { Animator animator; //Debug.Log(" hit.point:" + hit.point); animator = hit.transform.GetComponent
(); //animator.Play("TestCard_Card",0);//播放卡牌动画 animator.SetBool("isTrans", true); } if (Input.GetMouseButton(0) && hit.collider.gameObject.layer == layA && hit.transform.GetComponent
() != null)// 判断鼠标点击左键 { Animator animator; //Debug.Log(" hit.point:" + hit.point); animator = hit.transform.GetComponent
(); //animator.Play("showReward", 0);//播放卡牌动画 animator.SetBool("isClick", true); animator.SetBool("isTrans", false); } } }}

 

 


 

 

 

 

 

参考资料:

1.

2.

3.

转载地址:https://blog.csdn.net/BuladeMian/article/details/88851240 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:[Unity][优化]Bilboard广告牌显示的多种实现方法以及优化
下一篇:[Unity]绳索Rope实现

发表评论

最新留言

能坚持,总会有不一样的收获!
[***.219.124.196]2024年10月03日 14时19分17秒