很多小伙伴在做游戏时可能想实现比力传神的实际结果, 好比若何在unity中, 做出日夜瓜代的结果?经由过程本文, 你仅编写简单的剧本就可以实现:进入游戏时, 随机到一个时候(太阳在随机高度), 然后太阳以必然速度活动 。 最后还给太阳加上简单的光晕结果, 使你的项目加倍真实 。
需要这些哦
安装有unity3d肆意版本的电脑一台
unity3d软件(本文利用unity2018)
一、筹办工作1打开unity, 新建一个项目, 取名为demo, 选择项目类型为3D, 然后建立项目 。
文章插图
2新项目会自带一个本家儿相机(Main Camera)和一个偏向光(Directional Light) 。 我们删除本家儿相机, 操纵偏向光作为太阳, 然后再新建一个平面(Plane)作为地面 。
文章插图
3我们导入(Standard Assets)官方尺度资本包(若是没有这个包的到Asset store自行下载), 在资本包中按照Asset->Standard Assets->Characters->FirstPersonCharater的路径找到第一人称节制器(如图), 并将其拖入场景中作为本家儿角, 便利待会不雅察场景 。
文章插图
二、太阳扭转剧本1我们在项目视图窗口新建一个C#剧本, 取名为sunMove, 而且选择偏向光, 把剧本拖到其组件上 。
文章插图
2双击打开剧本, 进行剧本的编写, 剧本源码及诠释如下:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
【如何用Unity3D做出昼夜交替的效果】public class sunMove : MonoBehaviour
{
public float speed = 0.1f;
private int degree;
void Start()
{
degree = Random.Range(0, 360);
gameObject.transform.Rotate(degree, 0, 0);
}
void Update()
{
gameObject.transform.Rotate(-speed * Time.deltaTime, 0, 0);
}
}
申明
1.变量speed是太阳的扭转速度, 变量degree是太阳初始的角度 。
2.在start方式中, 随机生当作一个0-360的角度作为初始角度, gameObject.transform.Rotate(degree, 0, 0);语句是把偏向光(太阳)这个物体的初始角度(X轴)设置当作适才随机生当作的degree 。
3.update方式里, 每一帧按speed的速度改变太阳的角度, 实现太阳扭转的结果 。
文章插图
3我们保留剧本, 运行游戏, 就可以看到太阳起头时随机在一个角度, 然后起头扭转 。 若是扭转速度太慢, 我们可以在检视面板及时调整speed的值 。
文章插图
推荐阅读
- 如何利用手机进行身份证扫描?
- 如何在word中输入小方框?
- 如果你脸上这4个部位有痣,不要点掉!留着到老都优雅
- 梦幻西游手游如何评分歌曲
- 明日之后珍稀装备如何精致修理
- mysql如何查看某个数据库下所有表状态列表
- mysql如何查看系统权限列表
- mysql命令行如何分屏查看更多结果
- 档案寄往何处 如何填写报到证上的报道地址?
- 如何扫描文件到电脑