Unity多屏幕设置的具体方案

最近制作了一个多屏幕的项目,多屏幕指的是一个电脑主机,连接多个显示器。我这个项目使用了一个显卡连接了三个显示设备。Unity UGUI提供Canvas画布,在画布上有一个TargetDisplay的解决解决方案。

Canvas结合Camera就可以实现多屏显示。

多屏还需要一个Display.displays[1].Activate屏幕激活。

public class DisplayScreen : MonoBehaviour
{
    void Awake()
    {
        for (int i = 0; i < Display.displays.Length; i++)
        {
            Display.displays[i].Activate();
            Screen.SetResolution(Display.displays[i].renderingWidth, Display.displays[i].renderingHeight, true);
        }
    }
}

注意1、你有两个或者多个屏幕你就需要添加多个canvas画布,canvas有一个SortOrder的属性深度,前后的意思,数值越大越靠前,如果你添加了多个层,display场景一中按钮无法点击可能就是camvas画布层不对设置一下。

2、一定不要忘记Display.displays[1].Activate,你可以把它放到任意一个物体上,如果你得屏幕数是固定你可以写死,如果这里出现问题就会出现其他屏幕黑屏无法显示。开始以为黑屏和分辨率有关系还是这个Activte没有激活,或者多次激活了。

目前就遇到这两个问题,单纯这一个小项目,做个笔记记录一下问题,之后在遇到就比较轻松解决了。

到此这篇关于Unity多屏幕设置的具体方案的文章就介绍到这了,更多相关Unity多屏幕内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Unity 点击UI与点击屏幕冲突的解决方案

    Unity 有点击屏幕进行移动操作,通过Input.GetMouseButtonDown(0).如果点击到了一些UI上面会触发点击屏幕事件. 引入UnityEngine.EventSystems,用函数判断一下即可 using System.Collections; using System.Collections.Generic; using UnityEngine; using DG.Tweening; using UnityEngine.EventSystems; public class

  • unity实现屏幕上写字效果

    本文实例为大家分享了unity实现屏幕上写字效果的具体代码,供大家参考,具体内容如下 先建立一个RawImage,然后再在这个图片上加个LineRenderer组件,再建个材质球,把材质球的Shader改成Particles/Additive,把材质球拖给LineRenderer组件的Materials/Element 0(不拖也可以),最后再把代码拖给空物体即可,代码的Target是RawImage,下面的代码 using System.Collections; using System.Co

  • Unity3D Shader实现动态屏幕遮罩

    屏幕可视范围跟随目标物体移动,可修改可视范围大小,边缘渐变大小.以及遮罩颜色,支持最高物体数量可在Shader中修改,当前版本支持最多9个物体. 效果图如下: 控制面板如下: Shader代码如下: Shader "Peter/DarkEffect" { Properties { _MainTex ("Texture", 2D) = "white" {} } SubShader { // No culling or depth Cull Off

  • Unity屏幕雪花另类实现方式示例

    今天是圣诞节平安夜,为此特别制作了一个雪花飘落的场景,我们的雪花渲染方式不同于网上流行的使用Camera Filter,需要将脚本挂接到相机上面,而我们是挂接到空对象上面,实现方式采用的是自定义Mesh,自定义Mesh可以帮助我们实现很多的效果,而且对效率的提升非常有帮助,雪花实现方式分为:C#脚本和Shader渲染,C#负责雪花的生成,Shader负责雪花的飞舞和渲染.下面我们介绍实现方式: 关于unity,每帧可渲染65000顶点,表示雪的网状物每1片雪花使用4个顶点,65,000 / 4

  • Unity相机移动之屏幕边缘检测

    本文实例为大家分享了Unity相机移动之屏幕边缘检测的具体代码,供大家参考,具体内容如下 功能: 类似LOL 红警 相机移动方式. 鼠标移动到屏幕边缘,相机随之移动. 当然还有可以加亿一点点细节,比如鼠标指针变化,滚轮推进拉远视野,中键平移视野等.(没做). 效果图: 这里做了可视化数据(可以看到限定的屏幕距离),线框内为检测的距离. 代码: 复制脚本,直接挂载相机上就可以用. using UnityEngine; /// <summary> /// 相机边缘移动 /// </summa

  • Unity多屏幕设置的具体方案

    最近制作了一个多屏幕的项目,多屏幕指的是一个电脑主机,连接多个显示器.我这个项目使用了一个显卡连接了三个显示设备.Unity UGUI提供Canvas画布,在画布上有一个TargetDisplay的解决解决方案. Canvas结合Camera就可以实现多屏显示. 多屏还需要一个Display.displays[1].Activate屏幕激活. public class DisplayScreen : MonoBehaviour { void Awake() { for (int i = 0; i

  • 恢复 Windows3.2 的屏幕设置

    一台安装 Windows3.2 中文版的机器,由于菜鸟的胡乱设置,使屏幕分辨率变为 480x320,颜色也十分难看,使一些软件操作起来十分不方便.恢复 600x480 分辨率时系统提示要源安装盘拷贝显示驱动程序,但手头一时找不到.这时可以试着把路径指向 Windows\system,如果系统原来能正常使用,那么一定能找到显示驱动程序.果然找到了.其实在 Windows9x/NT/2000 下,往往也能在 Windows 的 system 文件夹下找到一些设备驱动程序,不必去找安装盘.

  • 解析Android截取手机屏幕两种实现方案

    最近在开发的过程中,遇到了一个需要截取屏幕保存为图片的需求,具体为截取webview的视图保存图片. 方法1:首先想到的思路是利用SDK提供的View.getDrawingCache()方法: public void printScreen(View view) { String imgPath = "/sdcard/test.png"; view.setDrawingCacheEnabled(true); view.buildDrawingCache(); Bitmap bitmap

  • 4种Android屏幕自适应解决方案

    Android支持多屏幕机制即用为当前设备屏幕提供一种合适的方式来共同管理并解析应用资源.本文就介绍了4中Android屏幕自适应解决方案. 一.细说layout_weight 目前最为推荐的Android多屏幕自适应解决方案. 该属性的作用是决定控件在其父布局中的显示权重,一般用于线性布局中.其值越小,则对应的layout_width或layout_height的优先级就越高,一般横向布局中,决定的是layout_width的优先级:纵向布局中,决定的是layout_height的优先级. 传

  • JavaScript中的Screen屏幕对象

    这是基本JavaScript的屏幕对象 screen 屏幕对象 反映了当前用户的屏幕设置. width 返回屏幕的宽度(像素数). height 返回屏幕的高度. availWidth 返回屏幕的可用宽度(除去了一些不自动隐藏的类似任务栏的东西所占用的宽度). availHeight 返回屏幕的可用高度. colorDepth 返回当前颜色设置所用的位数 - 1:黑白:8:256色:16:增强色:24/32:真彩色 下面是英文的Navigator浏览器的屏幕对象: availHeight:min

  • 手机屏幕尺寸测试——手机的实际显示页面的宽度

    手机站开发遇到一些问题,设计页面使用多大的尺寸?为此做了一些研究,除IPhone特殊一些外,目前市面上的安卓系统的实际显示页面的宽度,都是360px. 手机型号 竖屏宽度 IPhone 5 320px IPhone 6 375px IPhone 6 Plus 414px Nexus 4 384px Android(大多数) 360px 前两年,安卓的分辨率多数还是240px 或 320px,现在是360px,为了向下兼容,向上也兼容,最终将 360px 定为设计的尺寸,后期可以使用CSS3 Me

  • JS获取当前网页大小以及屏幕分辨率等

    效果如下: 代码如下: <html> <head> <title>获取当前对象大小以及屏幕分辨率等</title> <body> <div style=" width:88%;margin:30px auto; color:blue;" id="div_html"> </div> <script type="text/javascript"> var

  • JavaScript入门教程(5) js Screen屏幕对象

    screen 屏幕对象 反映了当前用户的屏幕设置. width 返回屏幕的宽度(像素数). height 返回屏幕的高度. availWidth 返回屏幕的可用宽度(除去了一些不自动隐藏的类似任务栏的东西所占用的宽度). availHeight 返回屏幕的可用高度. colorDepth 返回当前颜色设置所用的位数 - 1:黑白:8:256色:16:增强色:24/32:真彩色 下面是英文的Navigator浏览器的屏幕对象: availHeight:minus permanent or semi

  • ios10以下safari设置style无效的解决方法

    项目中遇到的奇怪问题,已定位原因.Attempted to assign to readonly property报错 起因:项目中写了个点击事件,增加动态效果,类似于转一转,rotate(360).很简单的一个特效. 设置元素的transition:transform 1s. 然后动态改变元素的transfrom:rotate的角度.一切看起来没问题.本地测试,真机测试都OK.但是提测后,在测试的IOS10下的safari,竟然没有生效. 定位原因: 一开始以为是transform没有加上前缀

随机推荐