【解决】Unity 设置跨设备分辨率表现

开发平台:Unity 2018版本以上
开发语言:CSharp
编程平台:Visual Studio 2022

问题描述


  使用 UnityEngine.dll 中关于设置分辨率的方法时,无法满足应用以设定分辨率进行屏幕显示问题。因而造成画面不同程度的拉伸情况。而这种情况在当前显示器分辨率有限制的情况下,难以达到高分辨率效果。例如 1920x1080 显示呈现 2K、4K ,甚至电影剧院的画面比例以展示效果。

关于 Screen.SetResolution()


官方文档说明:链接跳转

在这里插入图片描述

  Screen.SetResolution() 可用于在 显示器支持分辨率内,设置应用使用分辨率大小。但这一点并未在文档中提及。其最大分辨率效果局限于显示器屏幕宽度大小。因此,若期望在有限显示器上实现高分辨率比例效果,解决上是基于现有屏幕最大分辨率宽度。如同电影院效果,画面之外显示黑色区域。

解决方法:基于 Screen.Width 或 Height 适配屏幕


public void Start()
{int _Width = Screen.Width;int _Height = Screen.Width * 2160/3980 * 1080;Screen.SetResolution(Width, Height, true);
}

  基于屏幕宽度设定分辨率尺寸比例。例如 在1920x1080 的显示器环境下,实现 3980 x 2160 的效果。在 1920 上以 3920:2160 的比例计算实际高度。则最终看到的画面近似于等比缩放。配合限定 Canvas Scale 组件设置分辨率,从而达到最终运行效果。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/318100.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

NLP论文阅读记录 - 2021 | SimCLS:抽象概括对比学习的简单框架

文章目录 前言0、论文摘要一、Introduction1.1目标问题1.2相关的尝试1.3本文贡献 二.相关工作2.1优势 三.本文方法——抽象概括的对比学习框架3.1 第一阶段:候选生成3.2 第二阶段:无参考评估3.3对比训练 四 实验效果4.1数据集4.2 对比模型4.3实施细节4.4…

微同城生活源码系统:专业搭建本地生活服务平台 附带完整的安装部署教程

随着移动互联网的普及,人们越来越依赖手机进行日常生活中的各种活动,包括购物、餐饮、娱乐等。而传统的本地生活服务平台往往存在着功能单一、用户体验差等问题,无法满足用户日益增长的需求。因此,开发一款功能强大、易用性强的本…

为什么避免在生命周期钩子中使用箭头函数

在Vue.js中,生命周期钩子是特殊的函数,它们在组件的不同阶段自动被调用。当这些钩子被调用时,Vue确保它们的this上下文指向当前组件的实例。这意味着在生命周期钩子内部,你可以通过this访问组件的数据、计算属性、方法等。这是Vue…

【鸿蒙杂谈①】——鸿蒙基础介绍及应用领域

1.前言 小伙伴们大家好,最近被复习整的痛苦无比,所以今天咱们了解 一点轻松的东西,至于高并发就先放放吧。好了,废话不多说,咱们进入正题。 相信小伙伴们都已经看到了最近鸿蒙的势头了,那鸿蒙究竟是怎么发…

Springboot集成RabbitMq二

接上一篇:Springboot集成RabbitMq一-CSDN博客 1、搭建项目-消费者 与之前一样 2、创建配置类 package com.wym.rabbitmqconsumer.utils;import org.springframework.amqp.core.Binding; import org.springframework.amqp.core.BindingBuilder; import org.spring…

2023年12月GESP C++七级编程题转Python真题解析

七、2023年12月GESP C(Python)七级编程题 2023年12月GESP Python最高六级,但C与Python同级编程题相同。本篇引用2023年12月GESPC七级编程题,用Python实现。 【七级编程题1】 【试题名称】:商品交易 时间限制:1.0 s 内存限制&…

4.vue学习(21-25)

文章目录 21.天气案例-监视属性引入22.监视属性23.深度监视24 监视的简写25 监视属性对比计算属性 21.天气案例-监视属性引入 效果:点击按钮,切换凉爽为炎热 vscode 开发vue的插件;vue 3 snippets 初步实现方式。计算属性: 案例中的坑&#…

在Go语言中实现HTTP请求的缓存

大家好,我是你们可爱的编程小助手,今天我们要一起探讨如何使用Go语言实现HTTP请求的缓存。听起来是不是很酷?让我们开始吧! 首先,我们要明白什么是缓存。简单来说,缓存就是将数据存储在内存中,…

基于SSM的网络游戏交易平台设计与实现

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:Vue 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目:是 目录…

多模态大模型Vary:扩充视觉Vocabulary,实现更细粒度的视觉感知

前言 现代大型视觉语言模型(LVLMs)具有相同的视觉词汇- CLIP,它可以涵盖大多数常见的视觉任务。然而,对于一些需要密集和细粒度视觉感知的特殊视觉任务,例如文档级OCR或图表理解,特别是在非英语场景下,clip风格的词汇…

内网穿透方案FRP内网穿透实战(基础版)

目录 前言方案 方案1:公网方案2:第三方内网穿透软件 花生壳cpolar方案3:云服务器做反向代理FRP简介FRP资源FRP原理FRP配置教程之SSH 前期准备服务器配置 下载FRP配置FRP服务端启动FRP服务端验证是否启动成功可能遇到的一些问题客户端配置 下…

融资项目——全局统一日志说明

通过日志可以查看程序的运行信息和异常信息等,便于维护。日志级别分为TRACE、DEBUG、INFO、WARN、ERROR级别,越往后打印的日志信息越少,如ERROR 级别只会在程序运行出错时才会打印日志。可在application.properties中设置日志级别。 logging…