一、准备素材
用设备拍一张全景图,或者拍几张自身360度的环境图拼接成全景图,也可以在网上直接搜索全景图
二、新建项目材质
1.新建项目
2.把全景图复制粘贴到unity的Project面板里
3.在Unity的Hierarchy面板中,右键点击创建一个新的球体
4.创建一个相机,移动到球体里自行调整好角度,项目自带的太阳光也一并移动到球体里
5.把全景图拖动到球体里
6.在Unity的Project面板中,右键点击并创建一个新的C#文件并编写代码
代码如下:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class xiangji : MonoBehaviour
{
float mouseX;//保存鼠标移动距离
float mouseY;
private bool flag = true;
float speed = 300;
float y = 3;// Start is called before the first frame update
void Start()
{
}
// Update is called once per frame
void Update()
{
if(flag)
{
//全景图自动旋转
this.transform.Rotate(new Vector3(0, y * Time.deltaTime, 0));
}
//鼠标拖动全景图
float mouseX, mouseY;
if(Input.GetMouseButton(1))
{
flag = false;
//获取鼠标移动的方向,x和y
mouseX = Input.GetAxis("Mouse X");
mouseY = Input.GetAxis("Mouse Y");
this.transform.eulerAngles = new Vector3(this.transform.eulerAngles.x + mouseY * speed * Time.deltaTime, this.transform.eulerAngles.y - mouseX * speed * Time.deltaTime, 0);
}
//如果鼠标右键抬起
if(Input.GetMouseButtonUp(1))
{
//打开自动旋转
flag = true;
}
}
}
7.把C#文件绑定到相机上,点击相机在右侧Inspector面板里面点Add Component(添加组件)搜索C#文件名赋予
三、成果展示
效果:自动旋转,点击鼠标右键移动
My project