【Unity】使用Unity实现双屏显示

引言

在使用Unity的时候,有时候会需要使用双屏显示

简单来说就是需要在两个显示器中显示游戏画面

双屏显示注意点:

①双屏显示需要电脑有两个显示

②双屏显示只能用于PC端

③不仅仅可以双屏,Unity最大支持8屏显示

1.相机设置

①我们打开Unity后,新建一个Scene场景

②在场景中新添加一个Camera1,然后新添加的Camera1属性面板中Target Display设置为Display1(默认为Display1)

③在场景中新添加一个Camera2,然后新添加的Camera属性面板中Target Display设置为Display2

Display 1:在屏幕1显示

Display 2:在屏幕2显示

2.新建一个Canvas1

新建一个画布Canvas1,设置Target Display为Display 1

随便加一个Text组件或者Button组件,不需要另外的设置

3.建一个简单测试场景

然后在场景中随便创建几个几何体,调整一下摄像机的位置和游戏物体的位置

主要用于区分双屏显示

4.新建一个Canvas2

新建一个画布Canvas2,设置Target Display为Display 2

然后拼一个简单的UI,不需要另外的设置

5.屏幕切换

在Game视图中,可以切换屏幕,切换屏幕后,只能看到当前屏幕里的资源

但是在Scene视图是可以看见所有屏幕的资源。

6.脚本

默认情况下,只有一个显示器,所以当程序运行的时候,需要激活额外的显示器

可以通过代码 Display.Activate来实现.

需要注意的是,只需要激活一次,一旦激活了,就不能关闭激活状态。

在游戏启动逻辑里添加如下激活代码即可

csharp 复制代码
  void Start()
    {
        //循环遍历存在的所有屏幕
        for (int i = 0; i < Display.displays.Length; i++)
        {
            //开启存在的屏幕显示,激活显示器
            Display.displays[i].Activate();
            Screen.SetResolution(Display.displays[i].renderingWidth, Display.displays[i].renderingHeight, true);
        }

    }

7.打包测试

打包教程就不在这里赘述了

直接看结果

相关推荐
玖玥拾11 小时前
Unity3D RPG 入门项目(四)背包拖拽、物品悬浮提示、项目开发思维
3d·unity·游戏引擎
xcLeigh15 小时前
Unity基础:Start与Update方法——Unity脚本生命周期初探
java·unity·游戏引擎·教程
郝学胜-神的一滴16 小时前
[简化版 GAMES 104] 现代游戏引擎 05:游戏引擎世界构建核心机制深度解析
c++·程序人生·unity·游戏引擎·计算机图形学·opengl
松树戈2 天前
godot项目【宝石捕手】04~添加音效、记分
游戏引擎·godot
LONGZETECH2 天前
无人机实训高成本痛点解法:虚拟仿真实现 70% 耗材损耗下降
大数据·算法·unity·架构·无人机
五仁烧饼2 天前
Unity Addressables 静默资源策略
游戏·unity·addressables
ue星空3 天前
【Godot】更换编辑器外观主题
编辑器·游戏引擎·godot
fanfan_hongyun3 天前
unity 与cad 坐标系映射
unity·游戏引擎
神码编程3 天前
【Unity】 HTFramework框架(七十)MultiChoiceDropdown可多选的下拉菜单
unity·游戏引擎·ugui·dropdown·下拉菜单
ue星空3 天前
Godot 2D像素游戏移动抖动、模糊问题解决方案
游戏·游戏引擎·godot