【Unity3D自学记录】Unity3D之自制小钟表
2014-07-23 15:23
471 查看
今天来写一个小钟表,其实很简单,就运用到了欧拉角。
首先创建时钟、分钟、秒钟以及4个点(12点、3点、6点、9点)偷懒了~~没弄那么多点。
时钟、分钟、秒钟这三个父级的中心一定要注意,我们旋转的是父级的欧拉角。
(父级的中心在子级的顶点)
如图:
接下来我们来写代码,如下:
所有的值都要 *6 ,因为一共60秒,一圈是360度,1秒就是6度。
写得比较简单啊。
大家不要见笑。。。
效果图:
首先创建时钟、分钟、秒钟以及4个点(12点、3点、6点、9点)偷懒了~~没弄那么多点。
时钟、分钟、秒钟这三个父级的中心一定要注意,我们旋转的是父级的欧拉角。
(父级的中心在子级的顶点)
如图:
接下来我们来写代码,如下:
using UnityEngine; using System.Collections; public class Clock : MonoBehaviour { public Transform shi; public Transform fen; public Transform miao; // Use this for initialization void Start () { } // Update is called once per frame void Update () { Debug.Log("时"+System.DateTime.Now.Hour); Debug.Log("分"+System.DateTime.Now.Minute); Debug.Log("秒"+System.DateTime.Now.Second); //秒钟 float miaonum=System.DateTime.Now.Second*6f; miao.eulerAngles = new Vector3(miao.position.x, miao.position.y, -miaonum); //分钟 float fennum = System.DateTime.Now.Minute * 6f; fen.eulerAngles = new Vector3(fen.position.x, fen.position.y, -fennum); //小时 float shinum = System.DateTime.Now.Hour * 6f; shi.eulerAngles = new Vector3(shi.position.x, shi.position.y, -shinum); } }
所有的值都要 *6 ,因为一共60秒,一圈是360度,1秒就是6度。
写得比较简单啊。
大家不要见笑。。。
效果图:
相关文章推荐
- 【Unity3D自学记录】 Unity 延迟执行一段代码的较为优雅的方式
- 【Unity3D自学记录】Unity3D Web Player 的server端联网配置
- 【Unity3D自学记录】导出切片精灵
- 【Unity3D自学记录】批量创建预设(Prefabs)
- 【Unity3D自学记录】Unity3D游戏开发之鼠标滚轮实现放大缩小
- 【Unity3D自学记录】Debug.Log()无法正常显示解决方法
- 【Unity3D自学记录】NGUI之多边形碰撞器
- 【Unity3D自学记录】打造网络图片异步加载与本地缓存工具类
- 【Unity3D自学记录】Unity5 之 standard参数
- 【Unity3D自学记录】Unity5之GI设置简介
- 【Unity3D自学记录】纯GUI实现Flappy Bird
- 【Unity3D自学记录】Unity3d+VideoPlayback
- 【Unity3D自学记录】Shader基础
- 【Unity3D自学记录】Html调用Unity3D方法
- 【Unity3D自学记录】Unity3D游戏开发之连续滚动背景
- 【Unity3D自学记录】Unity3D WebPlayer UnityObject介绍
- 【Unity3D自学记录】C#语法笔记
- 【Unity3D自学记录】自制作手机平衡球游戏
- 【Unity3D自学记录】用NavMesh实现鼠标点击跟随
- 【Unity3D自学记录】制作VR视频播放器