Unity多屏幕设置细节
本文地址:https://blog.csdn.net/t163361/article/details/123384272
项目中用到了多屏幕功能
使用过程中经常会出现windows框或者切出就自动最小化的现象,最近花精力研究了下具体如何设置才能呈现完美的效果
Fullscreen Mode可以设置4个模式,只实验了Fullscreen Window和Exclusive FullScreen模式
Fullscreen Window
1.设置为单屏时
进入项目不会显示边框
切出程序,程序不会最小化
2.设置为多屏时
第一次进入项目不会显示边框,但第二次进入时,当还没触发多屏激活时,会显示边框,触发多屏激活后,边框消失
Exclusive FullScreen
1.设置为单屏时
进入项目不会显示边框
切出程序,程序会最小化
2.设置为多屏时
进入程序不会显示边框,但是当触发多屏激活时,程序会触发最小化
理想效果
1.进入项目不会显示边框,激活多屏也不会触发最小化,也就是设置为Fullscreen Window,然后第一次进入的效果符合要求
通过查证注册表,发现Unity会把全屏窗口的设置项写入注册表,手动删除后,发现可以还原第一次进入的效果。
项目可以在运行时动态删除这个配置项。先激活多屏,等待一段时间,删除如下注册表中的选项就可以实现这个效果
Screenmanager Fullscreen mode Default_h401710285
具体试下代码如下
using System.Collections;
using Microsoft.Win32;
using UnityEngine;namespace MultiDisplay.Scripts
{public class MultiDisplay : MonoBehaviour{private const string _fullscreenMode = "Screenmanager Fullscreen mode Default_h401710285";// Start is called before the first frame updatevoid Awake(){Screen.SetResolution(Display.displays[0].systemWidth, Display.displays[0].systemHeight, FullScreenMode.FullScreenWindow);foreach (var display in Display.displays){display.Activate();}StartCoroutine(DeleteFullscreenMode());}private IEnumerator DeleteFullscreenMode(){yield return new WaitForSeconds(0.5f);DeleteFullscreenModeValue();}private static bool DeleteFullscreenModeValue(){RegistryKey kml = Registry.CurrentUser;RegistryKey software = kml.OpenSubKey("SOFTWARE", true);if (software == null){return false;}RegistryKey company = software.OpenSubKey(Application.companyName, true);if (company == null){return false;}RegistryKey product = company.OpenSubKey(Application.productName, true);if (product == null)return false;product.DeleteValue(_fullscreenMode);return true;}}
}
具体实验的程序可以看如下github库
Program项目下的MultiDisplay测试用例
Unity多屏幕设置细节相关推荐
- Unity URP管线设置 后处理的使用
Unity推出通用渲染管线和高清渲染管线有很长一段时间了,但是感觉使用度上不是很高,很多人不愿意尝试新的渲染管线. 我在最开始使用Unity做可视化大屏的时候,也是选择的默认渲染管线,主要是Asset ...
- Unity之正确设置手机显示布局获取手机朝向
目录 Unity之正确设置手机显示布局 && 获取手机朝向 前言 开篇 Unity版本及使用插件 正题 设置手机屏幕显示布局.Screen.orientation 获取手机当前朝向.I ...
- 如何给屏幕设置一个充满全屏的图片
如何给屏幕设置一个充满全屏的图片 html{ width:100%; height:100%; overflow:hidden; } body{ background:url("bg_1.p ...
- sci-hub谷歌插件_Google Home Hub具有隐藏屏幕设置菜单
sci-hub谷歌插件 You can adjust the brightness or set an alarm on your Google Home Hub with a voice comma ...
- 嵌入式 linux 屏 翻转,linux下如何把屏幕设置成竖屏
23 个回复 spindrift C'est La Vie 2013-12-20 LinuxApp版的回帖也看了,你们用 DirectFB?图形是有 DFB 直接画么?还是用 Qt/GTK? CLI ...
- win10怎么给多个桌面屏幕设置不同壁纸
具体步骤如下: 1.把壁纸图片统一放到一个文件夹下,路径随意 2.选中所有壁纸(Ctrl+A) 3.在任意一张壁纸上点击右键,选择"设置为桌面背景" win10怎么给多个桌面屏幕设 ...
- 保护眼睛的屏幕设置 Win2008R2中的Win7桌面效果设置
一.保护眼睛的屏幕设置 设置方法:打开控制面板中的"显示"选择外观(appearance)-高级(advanced),然后在项目(items)那栏选窗口(windows),再点颜色 ...
- 笔记本当服务器显示屏,笔记本当服务器屏幕设置
笔记本当服务器屏幕设置 内容精选 换一换 晓查 发自 凹非寺量子位 报道 | 公众号 QbitAI本月,微软给VS Code加入了一项令人感到惊喜的功能:直接在编辑器中运行调试Jupyter Note ...
- Unity URP 2020 设置DOTS
为了方便看包的信息,不做也无所谓 首先点开Advance 两个都勾选上 安装hybrid com.unity.rendering.hybrid 设置hybrid v2 ENABLE_HYBRID_RE ...
- ubuntu16.04外接显示器扩展屏幕设置
刚装的系统,外接显示器之后笔记本屏幕不亮,显示器屏幕正常显示,看网上说的重装驱动什么的都不靠谱,最后发现果然只是简单的设置问题 首先打开终端输入 xrandr 查看显示器情况,我这里显示了连接了两个显 ...
最新文章
- Kafka一条消息如何被存储到Broker上?
- mysql 索引 normal_mysql索引类型 normal, unique, full text
- linux监控目录变动
- 2019年六月刷题列表
- 【s操作】轻松优雅的解决孩子的小学数学题
- MySQL数据库:触发器Trigger
- linux常用安装命令集锦
- mvc @html.editorfor,在MVC中,@Html.EditorFor(m = ( )_CSharp_开发99编程知识库
- Visio中如何绘制黑白图像
- python莫比乌斯内接矩形_莫比乌斯反演例题集 ^_^(示例代码)
- 平衡二叉树(AVL树)和红黑树区别
- NIM(Network Installation Manager)使用一例(mksysb)
- HDU-5889 Barricade
- 【原】上一学年的课程设计
- php gethostbyname ipv6,支持IPV6方法
- Android 标题下划线 选中效果
- 求分子分母最大公约数c语言,怎么求两个分数的最大公约数?
- OPENWRT-LUCI开发总结-LUCI目录结构介绍
- 云里黑白第五回——联想Y430p系统迁移
- android2.3 微信,Android新版微信2.3支持周边朋友查找
热门文章
- 【技术分享】Lombok!代码简洁神器还是代码“亚健康”元凶?
- 计算机桌面备份在哪里,电脑备份文件在哪里
- 【暴躁版】Java如何用IO流读取一个文本,按行输出到控制台?
- android camera hal3 新增vendor tag
- 七分天注定,三分靠打拼
- 电子设计教程4:稳压管稳压电路
- 火狐 全屏_如何禁用Firefox的全屏警告消息
- 修改远程端口后登录不上的解决办法[作者:Jackie]
- 计算机网络按覆盖地域分为,计算机网络按其所覆盖的地域范围一般可分为________ 。...
- android移动应用开发答案,Android移动应用开发习题答案.pdf