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;
        }

    }
}
相关推荐
玖玥拾2 天前
C# 语言进阶(十四)Unity UI界面开发 + 网络消息联动
服务器·开发语言·网络·ui·unity·c#·游戏引擎
野区捕龙为宠2 天前
Unity 持久化数据
unity·游戏引擎·lucene
郝学胜-神的一滴2 天前
[简化版 GAMES 101] 计算机图形学 17:纹理技术从基础原理到多场景实战应用
c++·unity·游戏引擎·图形渲染·three.js·opengl·unreal
_ZHOURUI_H_2 天前
MyFramework: 同样是 Unity 游戏开发框架,和 HTFramework 的设计取向有什么不同?(下)
unity·游戏引擎·游戏开发·游戏ui·手游开发
丁小未4 天前
基于MVVM框架的XUUI 扩展的UI管理系统教程
unity·mvvm·ui框架·xuui·ui管理器
丁小未5 天前
基于MVVM框架的XUUI HelloWorld 新手教程
unity·性能优化·c#·游戏引擎
丁小未5 天前
基于MVVM框架的XUUI MoreComplex案例
unity·c#
EQ-雪梨蛋花汤5 天前
【Unity笔记】VR 一体机画面锯齿、模型边缘闪烁、接缝抖动排查:MSAA、Mipmap、Render Scale、Z-Fighting 全流程记录
笔记·unity·vr
松树戈5 天前
【Godot4精进之路】03~Godot编辑器常用界面介绍
编辑器·游戏引擎·godot
YigAin5 天前
Unity Spine 资源出现白边的解决办法
unity·游戏引擎·spine