小功能⭐️Unity动态更换天空盒、旋转天空盒

简介: 小功能⭐️Unity动态更换天空盒、旋转天空盒

🟥 Unity动态更换天空盒

1️⃣ 方法1

1、在摄像头上添加SkyBox组件

放到其他地方不管用。

2、创建SkyBox类型的的材质球。放入即可。

3、通过代码,你便可获取到SkyBox组件,便可动态更换天空盒了。


2️⃣ 方法2


🟧 旋转天空盒

该功能不按照“一、更换天空盒”那样设置,该功能实现步骤如下:

1、主摄像机——Camera——ClearFlags——DontClear

2、新建辅助摄像机:

a、Camera——CullingMask——Nothing
  b、Depth:设置的比主摄像机小
  c、添加 Skybox 组件,在该组件赋值你想看到的天空盒。

3、现在旋转辅助摄像头,就能看到效果了



小Demo:

效果:

代码:

using UnityEngine;
 
public class Skode_SkyBox : MonoBehaviour
{
    public string intro = @" * 功能:旋转天空盒,自动切换天空盒";
 
    [Tooltip("天空盒摄像头")]
    public Transform skyboxCamera;
 
    [Tooltip("旋转速度")]
    public float speed = 0.1f;
 
    [Tooltip("你想切换的天空盒")]
    public Material[] skybox;
 
    [Tooltip("延迟xs切换天空盒")]
    public float time = 3;
    float time_value;
    int current = 0;
 
    private void Start()
    {
        time_value = time;
    }
 
    void Update()
    {
        skyboxCamera.Rotate(skyboxCamera.up, speed);
 
        if (skybox.Length == 0)
            return;
 
        if (time > 0)
            time -= Time.deltaTime;
        else
        {
            current++;
            if (current == skybox.Length)
                current = 0;
            skyboxCamera.GetComponent<Skybox>().material = skybox[current];
 
            time = time_value;
        }
    }
}


相关文章
|
3月前
|
定位技术 C# 图形学
从零开始的unity3d入门教程(二)----基本功能讲解
这是一篇Unity3D入门教程,详细介绍了Unity界面操作、游戏物体创建修改、场景搭建、玩家控制、音效添加以及游戏测试和导出的全过程。
从零开始的unity3d入门教程(二)----基本功能讲解
|
3月前
|
图形学
小功能⭐️Unity获取场景中所有物体
小功能⭐️Unity获取场景中所有物体
小功能⭐️Unity获取场景中所有物体
|
3月前
|
图形学
小功能⭐️Unity UnityEvent实现代码的选择
小功能⭐️Unity UnityEvent实现代码的选择
|
3月前
|
机器学习/深度学习 图形学 Windows
小功能⭐️unity3d KeyCode各键值说明
小功能⭐️unity3d KeyCode各键值说明
|
3月前
|
图形学 Android开发
小功能⭐️Unity调用Android常用事件
小功能⭐️Unity调用Android常用事件
|
3月前
|
图形学
小功能⭐️获取Unity游戏物体上,所挂载组件的名称
小功能⭐️获取Unity游戏物体上,所挂载组件的名称
|
3月前
|
图形学
小功能⭐️Unity截屏功能的实现
小功能⭐️Unity截屏功能的实现
|
3月前
|
图形学
小功能⭐️Unity中Texture2D、Sprite、Texture、RenderTexture、image、byte的转换
小功能⭐️Unity中Texture2D、Sprite、Texture、RenderTexture、image、byte的转换
|
3月前
|
图形学
|
3月前
|
图形学
小功能⭐️解决Unity无法对一个物体上的所有材质球进行更改
小功能⭐️解决Unity无法对一个物体上的所有材质球进行更改