这篇文章主要介绍“Unity3D时钟与钟表小组件如何使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Unity3D时钟与钟表小组件如何使用”文章能帮助大家解决问题。
效果:
实现
1、场景搭建
使用Cylinder搭建一个时钟面,然后使用TextMesh设置小时数,最后使用长短不一的Cube做成时针、分针、秒针。
在这里需要说明的第一点是,需要将时针、分针、秒针拖到对应的父物体下,做成预制体,因为代码是使用Quaternion.AngleAxis函数进行绕轴旋转,所以直接旋转针的话,就变成自转了,所以需要旋转它的父物体,这样子物体就跟着转了,将父物体的坐标设置为0,0,0,那么子物体就是以中心点旋转了。
搭建后如下图所示:
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时钟与钟表小组件如何使用”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注编程网行业资讯频道,小编每天都会为大家更新不同的知识点。