Unity时钟

这篇博客介绍了如何在Unity中创建一个3D时钟。通过创建一个包含小时、分钟和秒针的游戏物体,并调整它们的位置和缩放比例,实现时钟的显示。小时针位于坐标(0, 0.75, 0),缩放比例为(0.1, 1.5, 0.1);分钟针在(0.1, 0, 0),缩放为(0.1, 2, 0.1);秒针在(0.15, 0, 0),缩放为(0.1, 3, 0.1)。" 133436990,19974269,使用Python、C++和Java打开IGS文件,"['Python编程', 'C++编程', 'Java编程', '文件处理', '三维模型']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

效果图:



工程里需要有个Clock的空物体,脚本挂上去,物体下有时,分,秒3个空物体,三个空物体下分别放时分秒的指针(游戏物体,位置自己调整下),然后把时分秒的空物体拖到脚本对应的位置。


位置参考:

时钟的全部物件归0后:

小时坐标:0,0.75,0  Scale:0.1,1.5,0.1

分坐标:01,0  Scale:0.1,2,0.1

秒坐标:01.5,0  Scale:0.1,3,0.1

using System.Collections;

using System.Collections.Generic;
using UnityEngine;
using System;


public class Clock : MonoBehaviour {
    DateTime time;
    public Transform hourTransform, minuteTransform, secondTransform;
    private float degreesInHour, degreesInMinute, degreesInSecond;
    // Use this for initialization
    void Start () {
        degreesInHour = 360 / 12;     // rotate 360/12 in hour. //一圈12小时,则每小时要转360/12多个角度
        degreesInMinute = 360 / 60;    // rotate 360/60 in minute.
        degreesInSecond = 360 / 60;    // rotate 360/60 in second.
    }

// Update is called once per frame
void FixedUpdate () {
        DateTime time = DateTime.Now;
        hourTransform.localRotation = Quaternion.Euler(0f, 0f, time.Hour * -degreesInHour);
        minuteTransform.localRotation = Quaternion.Euler(0f, 0f, time.Minute * -degreesInMinute);
        secondTransform.localRotation = Quaternion.Euler(0f, 0f, time.Second * -degreesInSecond);
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值