实现全屏窗口(伪全屏),gui焦点不错位,画面不拉伸。

2015年03月20日 15:35 0 点赞 0 评论 更新于 2025-11-21 17:53

网上关于 Unity 实现全屏窗体的例子似乎不多,基本思路都是借助 user32.dll 来完成。然而,大多数实现都会出现焦点错位的问题,或者由于窗口拉伸导致 3D 画面变得模糊。这是因为在打包 EXE 时,焦点捕获是依据窗口大小来判定的。

目前,我正在处理一个特殊客户的特殊需求,需要将其他窗体叠加在 Unity 画面之上。为此,我编写了这个小插件。由于代码尚未整理,可能存在一些杂乱的地方,若有问题,还请各位大侠指出并纠正。

实现功能

  • 可随意设置发布后窗体的大小。
  • 能够选择窗体是否带有边框。
  • 支持实现全屏窗口。
  • 可以调整窗体在屏幕中的深度(例如置顶等操作)。

适用环境

该插件适用于 Windows 系统。

运行效果

全屏窗口效果

在全屏窗口模式下,其他窗口可以叠加显示在 Unity 画面上方,同时 Unity 的 GUI 焦点不会出现错位,画面也不会因拉伸而变得模糊。

无边框窗口效果

插件支持设置无边框窗口。

设置选项

窗体风格

包括全屏、全屏窗体、普通窗体和无边框窗体四种类型。

屏幕深度

提供正常、Top、TopMost 三种选项。

使用方法

windowMod 文件附加到摄像机上即可。

下载地址

点击下载

作者信息

menghao

menghao

共发布了 3994 篇文章