Unityは全画面設定のプレーヤー設定をエクスポートし、黒い境界線をキャンセルします



Unity Exports Player Settings Full Screen Settings



今回は、UnityエクスポートPCパッケージについてのみ説明します。 Android、Webなどは別途参照してください。
1.1。 画像
一般的なオプション:製品名エクスポートされたソフトウェア名デフォルト名エクスポートされたスタートアップアイテムアイコン
デフォルトのカーソルはマウスのスタイルです
2.解像度設定に焦点を合わせます
画像
解像度とプレゼンテーション解像度と説明
(1)解決策
デフォルトはフルスクリーンデフォルトはフルスクリーン
デフォルトはネイティブ解像度ですデフォルトはネイティブ解像度です
バックグラウンドで実行バックグラウンドで実行、プログラムが現在のウィンドウにないときに継続的に実行するか、一時停止するか
(2)Stadalone PlayerOptionsスタンドアロンテスト
単一画面のキャプチャ単一画面のキャプチャ。これをメイン画面にのみ表示するか、分割画面に表示できるか。
[解像度の表示]ダイアログには、プログラムの実行後に解像度と品質の選択インターフェイスを表示するかどうかを示す[解像度]ダイアログボックスが表示されます。
プレーヤーログのユーザーログを使用する
サイズ変更可能なウィンドウを使用すると、ユーザーはスタンドアロンプ​​レーヤーウィンドウのサイズを調整できます
Mac AppStoreの検証MacAppStoreの検証
D3D9 / D3D11フルスクリーンモードの3Dエフェクトオプション
バックグラウンドで表示[バックグラウンドで表示]オプションがチェックされていない場合、ファイルを開くか別のウィンドウに切り替えると、U3Dプログラムは自動的に最小化されますが、このオプションをオンにすると、U3DプログラムはWindowsウィンドウのように戻されます。 、ただし最小化されません。
フルスクリーンスイッチを許可する
単一インスタンスの強制------同時に開くことができるプログラムは1つだけです
サポートされているアスペクト比サポートされているアスペクト比、[解像度]ダイアログで選択できるアスペクト比。このリストにより、プロジェクトのモニターでサポートされている解像度が有効になります。

ここで問題が発生します。フルスクリーンを設定したい場合、通常はデフォルトがフルスクリーンであるかどうかを確認しますが、エクスポートをチェックした後、黒い境界線がある場合、またはフルスクリーンをチェックした後、フルスクリーンではない場合があります。エクスポートされた設定がないのと同じように、まだウィンドウがあります。



解決:
1.コード設定

//Get and set the current screen resolution Resolution[] resolutions = Screen.resolutions //Set the current resolution Screen.SetResolution(resolutions[resolutions.Length - 1].width, resolutions[resolutions.Length - 1].height, true) Screen.fullScreen = true //Set to full screen

この方法では、PlayerSettingsの設定を無視して全画面表示にすることができますが、全画面表示できないという問題が発生する場合があります。これは、コンピューターモニターを取得するときにUnityによって取得された最後の解像度配列が、必ずしも最大の解像度のものであるとは限らないためです。 、したがって、取得した配列に対してプロセスを実行する必要があります。



Resolution[] resolutions = Screen.resolutions//Get and set the current screen resolution //Find the maximum resolution int width = resolutions[0].width, height = resolutions[0].height //Sort the array for (int i = 0 i < resolutions.Length i++) { if (resolutions[i].width > width) { width = resolutions[i].width height = resolutions[i].height } if (resolutions[i].width == width && height > resolutions[i].height) { width = resolutions[i].width height = resolutions[i].height } } Screen.SetResolution(width, height, true)

これは基本的に問題ありません。UIは全画面表示の前に適応可能である必要があります。

2.ばか設定
多くのテストの後、私は簡単な方法を見つけました
解像度設定が混乱している場合
画像

最初にPlayerSettingコンポーネントのリセットを初期化し、次に一度エクスポートする解像度の選択ウィンドウを非表示にせず、対応する解像度を一度選択して開き、必要な設定に従ってエクスポートします。テストは利用可能です。とにかく、それが統一の問題であるかどうかを知ってください、とにかく、問題は解決されますO(∩_∩)Oはは〜