Unity3D中使用SetResolution后无法获取真实屏幕宽高

Unity3D 专栏收录该内容
¥59.90 ¥99.00
42篇文章

在Unity3D中,我们经常需要根据屏幕的宽高来进行游戏的适配和UI布局。通常情况下,我们可以通过Screen类的属性来获取屏幕的宽度和高度,例如Screen.width和Screen.height。然而,在使用SetResolution函数之后,这些属性将不再返回真实屏幕的宽度和高度,而是返回SetResolution设置的分辨率。

SetResolution函数用于设置游戏窗口或全屏模式下的分辨率,并且在调用后会影响Screen类的属性。因此,如果我们在调用SetResolution函数之后试图获取屏幕的宽度和高度,将无法得到真实的数值。

那么,如何获取真实屏幕的宽度和高度呢?下面是一种解决方案:

using UnityEngine;

public class ScreenSizeManager : MonoBehaviour
深入了解Unity的Screen类:一份详细的技术指南(四) 在游戏开发中,处理屏幕分辨率、设备方向和全屏状态等相关问题是至关重要的,这些因素会直接影响到游戏的玩家体验,包括游戏的视觉效果和交互感受。Unity中的Screen类提供了很多与设备屏幕有关的属性和方法,它对于获取设备屏幕的详细信息,或者改变设备屏幕的一些设置是非常有用的。 阅读详情

相关推荐

Unity修改分辨率优化游戏性能

前两天浏览到腾讯游戏学院上的一篇文章,利用 RenderTexture 降低实际渲染分辨率以提升渲染性能,结合着我们自己的项目,对这一方案进行的探索研究。 关于修改游戏分辨率来提高游戏性能有另种方案: 第一种:使用unity引擎自身的API进行修改,Screen.SetResolution此时修改的是物理分辨率,具体底层实现涉及到底层图形渲染的可自行查找相关资料,此时有一个问题,调用此API...

Rhett 5555

Unity全屏与竖屏切换实战:避开Screen.width/height的坑,正确使用SetResolution

本文深入探讨了Unity中全屏与竖屏切换的实战技巧,重点解析了`Screen.SetResolution`的正确使用方法,并揭示了`Screen.width/height`的常见误区。通过完整的工程方案和代码示例,帮助开发者有效解决分辨率切换中的各种问题,提升应用在不同设备上的兼容性和用户体验。

weixin_27717759的博客 366

WPF与Unity3D高效集成:内存映射文件实现实时3D可视化交互

在桌面应用开发中,3D可视化与复杂交互的实现常面临技术选型挑战。WPF凭借其强大的数据绑定与MVVM模式,擅长构建数据驱动的2D用户界面,但在处理复杂3D渲染、物理模拟及高动态交互场景时,其原生能力存在局限。为解决此问题,开发者常寻求与专业游戏引擎的集成方案。通过进程间通信(IPC)技术,特别是高效的内存映射文件(MMF)机制,可实现跨进程的零拷贝数据交换,为WPF与外部渲染引擎的深度整合提供了高性能基础。该技术方案的核心价值在于,它允许WPF专注于业务逻辑与UI管理,而将图形密集型任务交由专业的3D引擎处

weixin_30258901的博客 413

Unity的屏幕坐标获取

你可以用这个代码测试,然后拖动游戏窗口game。屏幕窗口的当前宽度(以像素为单位)(只读)。

leoysq的博客 935

PDN设计

作者:AirCity 2020.2.6 Aircity007@sina.com 本文所有权归作者Aircity所有 PDN设计的目的是降低电源纹波水平,减小电压跌落。我们通常要求LDO的文波水平是30mV,DCDC是50mV,超过这个就需要PDN设计。 PDN设计的方法是用不同的容值,合适的总电容量,降低电源平面与地平面之间的交流阻抗,确定容值总量和电容大小的过程,就是PDN设计过程。 为什么需...

AirCity123的博客 4148

MATLAB实战:用ARMAX模型搞定电力系统惯量评估(附完整代码)

本文详细介绍了如何利用MATLAB中的ARMAX模型进行电力系统惯量评估,解决新能源占比提高带来的系统惯量下降问题。通过系统辨识技术,从电网运行数据中准确提取惯量参数,并提供完整的代码实现,帮助工程师快速应用于实际工程。

peach的博客 638

Win10家庭版中文用户名改英文全攻略:从注册表到环境变量一步不落

本文详细介绍了Windows 10家庭版中文用户名改为英文的完整流程,包括注册表编辑、环境变量调整等关键步骤。通过激活管理员账户、重命名用户文件夹、修改注册表键值等操作,彻底解决因中文路径导致的软件兼容性问题,并提供常见错误解决方案和系统维护建议。

weixin_29227425的博客 428

攻克Windows平台3DGS复现:从环境配置到可视化实战全记录

本文详细记录了在Windows平台成功复现3D Gaussian Splatting(3DGS)的完整流程,涵盖从环境配置、依赖安装、数据准备到模型训练与可视化的全步骤。重点解决了Windows下CUDA版本匹配、Visual Studio编译及SIBR_viewers可视化工具部署等核心难题,为开发者提供了一份详实的避坑指南与实战手册。

weixin_28839699的博客 253

ThingsBoard教程(十六):RPC部件的使用

前言 各位读者好,截止目前,ThingsBoard系列文章已经做了十篇,分别是 ThingsBoard教程(一):ThingBoard介绍及安装 ThingsBoard教程(二):租户,租户配置,部件组模块的使用 ThingsBoard教程(三):系统设置模块的使用 ThingsBoard教程(四):规则链简介与操作 ThingsBoard教程(五):客户,资产管理 ThingsBoard教程(六):设备管理 ThingsBoard教程(七):模拟设备遥测 ThingsBoard教程(八):自定义UI T

知无涯 4582

【STM32实物】基于STM32的扫地机器人/小车控制系统设计

扫地机器人系统采用分层结构设计,主要包括底层硬件控制层、中间数据处理层和上层用户交互层。底层硬件控制层负责对各个硬件模块进行控制和数据采集,中间数据处理层负责对采集到的数据进行处理和解算,上层用户交互层负责与用户进行交互并显示系统状态信息。

嵌入式阿齐Archie 1万+

ADAS方案设计-CAN网络管理与休眠唤醒机制

文章摘要:本文介绍了车载控制系统的五种工作模式及其转换条件,包括睡眠模式、准备睡眠模式、就绪睡眠模式、正常工作模式和重复消息状态。系统唤醒条件包括接收到网络管理报文或电源ON档信号,休眠条件则需满足电源OFF档、功能完成等多重要求。针对下挂节点的网络管理报文发送规则,详细说明了不同状态下的报文发送策略,特别是在哨兵模式、OTA模式等特殊场景下的处理方式。系统在满足休眠条件后会立即停止发送下挂节点网络管理报文,确保电源管理的有效性。

xiandang8023的博客 325

ML307R OpenCPU TCP使用

实现现象 平台下发数据,板子在收到数据之后,马上再发送到平台,通过串口助手可以看到已经接收到数据。ML307R TCP 是使用LWIP的标准的socket通信,具体TCP流程可以自行百度。实验目的:实现把接收的数据再发送到服务端。因为是4G,所以必须用外网的。

面朝大海春暖花开 2234

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

上一篇: 使用TextMeshPro组件提升Unity3D中的文本功能
下一篇: 中秋诗词鉴赏网页制作教程,共享中秋喜悦! Unity3D
普通网友
博客等级 码龄3年 32粉丝 0原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值