【Unity3D】如何解决可视化大屏windows PC 打包时候分辨率失效的问题
在unity完成一个自定义分辨率的游戏,打包成 PC 版本时,经常会遇到一个问题,就是明明已经在 build setting 中设定了分辨率,为什么打包后运行时却失效了?本文将讲解如何解决打包时分辨率失效的问题。
为什么分辨率会重置?
当你用 Unity 构建一个新的游戏时,他会为你在 Player Settings 的公司名称下保存一个 注册表键(windows 中) 或 preference file( Mac 上)。
默认情况下,这是 DefaultCompany。在第一次打包时,Unity 会自动像注册表中注册打包信息,后续打包时,如果公司名称没有变的话,注册表键 或 preference file 还包含之前显示设置和其他设置,不会覆盖当前你新构建的设置,也就是说下次打包即使重新设置分辨率也没用。
如何解决
方法一:修改项目名称
修改项目名称(Product Name),重新打包。(这种方法比较草率,治标不治本)
方法二:修改注册表
按 Win + R ,在运行窗口输入 regedit ,回车打开注册表。
Unity 注册的位置在 HKEY_CURRENT_USER \ Software \ (公司名称) \ (项目名称) 。
修改分辨率的高和宽,下次打包即可生效。
方法三:
此外还可以用代码来控制(大招,最终解决方案),在加载的第一个场景中的 C# 脚本中,Start() 函数中加入以下代码即可。
void Start()
{
// width 和 height 为分辨率的宽和高
Screen.SetResolution(width,height,true);
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南