温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Unity3D时钟与钟表小组件如何使用

发布时间:2023-02-01 09:44:33 来源:亿速云 阅读:135 作者:iii 栏目:开发技术

这篇文章主要介绍“Unity3D时钟与钟表小组件如何使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Unity3D时钟与钟表小组件如何使用”文章能帮助大家解决问题。

    效果:

    Unity3D时钟与钟表小组件如何使用

    实现

    1、场景搭建

    使用Cylinder搭建一个时钟面,然后使用TextMesh设置小时数,最后使用长短不一的Cube做成时针、分针、秒针。

    在这里需要说明的第一点是,需要将时针、分针、秒针拖到对应的父物体下,做成预制体,因为代码是使用Quaternion.AngleAxis函数进行绕轴旋转,所以直接旋转针的话,就变成自转了,所以需要旋转它的父物体,这样子物体就跟着转了,将父物体的坐标设置为0,0,0,那么子物体就是以中心点旋转了。

    搭建后如下图所示:

    Unity3D时钟与钟表小组件如何使用

    2代码实现

    using System;
    using UnityEngine;
    
    public class Clock : MonoBehaviour
    {
        private GameObject HourHands;//时针
        private GameObject MinuteHand;//分针
        private GameObject SecondHand;//秒针
    
        void Start()
        {
            HourHands = GameObject.Find("时钟/时针");
            MinuteHand = GameObject.Find("时钟/分针");
            SecondHand = GameObject.Find("时钟/秒针");
        }
    
        void Update()
        {
            TimeSpan time = DateTime.Now.TimeOfDay;
            HourHands.transform.localRotation = Quaternion.AngleAxis(30 * time.Hours, Vector3.up);
            MinuteHand.transform.localRotation = Quaternion.AngleAxis(6 * time.Minutes, Vector3.up);
            SecondHand.transform.localRotation= Quaternion.AngleAxis(6 * time.Seconds, Vector3.up);
        }
    }

    关于“Unity3D时钟与钟表小组件如何使用”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注亿速云行业资讯频道,小编每天都会为大家更新不同的知识点。

    向AI问一下细节

    免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

    AI