Unity 摄像机的深度切换与摄像机画面投影

摄像机可选:透视、正交

正交类似投影,1比1

透视类似人眼,近大远小

摄像机投影

在项目中新建:渲染器纹理

将新建纹理拖动到相机的目标纹理中

新建一个平面,将新建材质组件放到平面中即可。

相机深度切换

使用代码调整相机的深度值即可实现切换相机。

通过角色与相机的距离来判断角色与相机远近,离某个相机近时,修改相机的深度值,将游戏画面切换到此相机,从而实现,角色在场景中移动动态切换视角。

脚本组件放在角色上,将两个相机拖动到脚本上。

csharp 复制代码
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class c1 : MonoBehaviour
{
    // 将相机拖动到声明的变量中
    // 获取 相机1与相机2
    public Camera camera1;
    public Camera camera2;


    // Update is called once per frame
    void Update()
    {
        // 获取玩家与第一个相机的距离
        float dis1 = Vector3.Distance(camera1.transform.position, transform.position);
        // 获取玩家与第二个相机的距离
        float dis2 = Vector3.Distance(camera2.transform.position, transform.position);

        // 判断哪个距离更近
        if (dis1 < dis2)
        {
            // 相机深度值 哪个台相机的深度值越大,游戏视角就会切换到那个相机上
            // 设置相机深度值
            camera1.depth = 1;
            camera2.depth = -1;
        }
        else
        {
            // 设置相机深度值
            camera1.depth = -1;
            camera2.depth = 1;
        }

    }
}
相关推荐
avi911113 小时前
UnityProfiler游戏优化-举一个简单的Editor调试
游戏·unity·游戏引擎·aigc·vibe coding·editor扩展
学嵌入式的小杨同学13 小时前
C 语言实战:动态规划求解最长公共子串(连续),附完整实现与优化
数据结构·c++·算法·unity·游戏引擎·代理模式
学嵌入式的小杨同学16 小时前
顺序表(SqList)完整解析与实现(数据结构专栏版)
c++·算法·unity·游戏引擎·代理模式
程序猿多布17 小时前
HybridCLR热更打包后AOT泛型函数实例化缺失处理
unity·hybridclr·aot generic
平行云18 小时前
实时云渲染支持数字孪生智能工厂:迈向“零原型”制造
人工智能·unity·ue5·云计算·webrtc·制造·实时云渲染
dzj202118 小时前
Unity中使用LLMUnity遇到的问题(一)
unity·llm·llmunity
Howrun77718 小时前
虚幻引擎 C++ 制作“射击FPS游戏“
游戏·游戏引擎·虚幻
DowneyJoy18 小时前
【Unity通用工具类】列表扩展方法ListExtensions
unity·c#·交互
极客柒18 小时前
Unity 大地图 高性能路径引导Shader
unity·游戏引擎
孟无岐19 小时前
【Laya】InputManager 输入管理器
typescript·游戏引擎·游戏程序·laya