【Unity】实现分屏开发

前言:

最近有个项目二期需要做分屏开发,今天恰好研究一下为后续的项目做个准备。

原理

整体的实现还是蛮简单的,主要是通过camera的一个targetDisplay属性进行设置

可以看到unity支持最多八个分屏

实现

场景搭建 ,这里直接使用了之前的一个垃圾场景

场景中一个unity 自带的 main camera,默认的属性也是display1,在项目启动的时候会自动激活

增加第二个项目,设置targetDisplaye属性为Display2,像上图一样,同时创建一个子物体cube

拉动cube的位置,可以看到就行

编辑器预览

如果你是单个屏幕,可以通过在game下切换不同的Display进行选择

发布应用

编辑器预览模式发布之后没办法激活第二个屏幕,需要写一些简单的代码

复制代码
using UnityEngine;

public class DupScreen: MonoBehaviour
{
    private void Awake()
    {
        Screen.fullScreen = true;
        if (Display.displays.Length > 1)
        {
            Display.displays[1].Activate();
            Display.displays[1]
                .SetRenderingResolution(Display.displays[1].systemWidth, Display.displays[1].systemHeight);
        }

        if (Display.displays.Length > 2)
        {
            Display.displays[2].Activate();
            Display.displays[2]
                .SetRenderingResolution(Display.displays[2].systemWidth, Display.displays[2].systemHeight);
        }
    }
}

将上面的脚本任意挂载到一个GameObject上,或者创建一个空物体挂载也行,总之就是在启动的时候能够激活脚本

运行之后会自动在双屏显示

相关推荐
WiChP3 小时前
【V0.1B9】从零开始的2D游戏引擎开发之路
c++·游戏引擎
游乐码8 小时前
Unity坦克案例疑难记录(一)
unity·单例模式
小贺儿开发10 小时前
Unity3D 编辑器对象锁定工具
unity·编辑器·编程·工具·对象·互动·拓展
AI前沿资讯14 小时前
一站式 AI 3D 创作首选:V2Fun—— 直连 Unity + 多人动捕双核心,重塑轻量化生产管线
人工智能·3d·unity
winlife_1 天前
Unity 域重载会清空一切:Editor 工具如何让状态在重载后续命
unity·游戏引擎
深度森林1 天前
无人机“路径规划”高价值专利案例:基于抗干扰粒子群优化的无人机路径规划方法
游戏引擎·cocos2d
小贺儿开发1 天前
Unity3D 串口通信上位机联调系统
unity·串口·协议·数据·通信·传输·互动
tedcloud1231 天前
ppt-master部署教程:快速搭建智能演示文稿系统
服务器·人工智能·系统架构·游戏引擎·powerpoint
垂葛酒肝汤2 天前
Unity的UI扫光效果Shader
ui·unity·游戏引擎
mxwin2 天前
Unity Shader Alpha测试 · 模板测试 · 深度测试
unity·游戏引擎