I just can’t have my game view at the size I want, because some voodoo magic resizes it to a “reasonable” size. How is that reasonable?
I want to create UI clips for iPad Pro, which is 2048x2732. I also want my UI to resize for that. But this weird game view thingy just prevents me from doing that.
Can I just disable it somehow?
Please help, this is enormously frustrating.
Seconded. Currently working on a UI that is far larger than 8192 in one dimension but Unity insists on scaling it down. Is there a work around? Would having a larger monitor help that? Just being able to flat-out disable it would be a great alternative.
Believe it or not Unity people develop for systems other than the one they’re working on. It’s hard to be constructive when criticising such an idiotic feature. Especially since it actually makes my game view wider as well as not as tall.
JFYI
I have a laptop (vaio s15) with physical button to switch between integrated and discrete graphics card to be used by default. I started to get this warning when I switched to the integrated mode. Setting it back to descrete mode fixed the problem.
Problem seems to be in that block of Unity’s GameView code.
May be there is an issue with my graphics card driver and some of SystemInfo calls returns weird result.
Did anyone find a workaround or fix? The solution above seems only to match for onbord vga?!
My target resolution is 11520*2160, the build does show it correctly, so gpu (rtx 2070) and unity build can do it!
I really need a higher editor resolutions to set things up.
" GameView reduced to a reasonable size for this system (8192x1536) UnityEngine.GUIUtilityProcessEvent (int,intptr,bool&) "
Hi, we also had the same problem of the Unity GameView being limited to 8K and working with much higher resolution projects and wanting to even display 1:1 across multiple monitors.
is there any news for this. I develop for a VR cave with a 9600x2384 resolution (6 screens of 1600x2364), the graphic card is a Quadro RTX 6000 but still the gameview is limited to 8100x2000 (or something like that).
Fun fact, the limitation is the same on the Cave with the rtx6000 and on my laptop equipped with a nvidia rtx A3000 laptop.
displaying 6 times a 1600x2384 with several displays works pretty fine,
if the app is compiled it works fine at the given resolution
/*
* Unity Editor の https://github.com/Unity-Technologies/UnityCsReference/blob/master/Editor/Mono/GameView/GameViewSizes.cs#L451 の dll へパッチを当ててGameViewで8192より大きな解像度を使用可能にする。
* Patch the dll in the Unity Editor at https://github.com/Unity-Technologies/UnityCsReference/blob/master/Editor/Mono/GameView/GameViewSizes.cs#L451 to use resolutions larger than 8192 in GameView.
*
* 1. Harmony ライブラリの取得:
* 1. Get the Harmony library:
* - Download the latest version of Harmony-Fat.2.3.6.0.zip from https://github.com/pardeike/Harmony/releases
* - https://github.com/pardeike/Harmony/releases から最新版の Harmony-Fat.2.3.6.0.zip をダウンロード。
*
* 2. Unity プロジェクトへ Harmony をインポート:
* 2. Importing Harmony into your Unity project:
* - "net35/0Harmony.dll" を Unity プロジェクト内の "Assets/Plugins/" フォルダへコピー
* - Copy "net35/0Harmony.dll" to the "Assets/Plugins/" folder in your Unity project.
*
* 3. Unity プロジェクトへ このスクリプトをコピー
* 3. Copy this script into your Unity project:
* - このスクリプトを Unity プロジェクト内の "Assets/Editor/GameViewMaxResolutionPatch.cs" などへコピー
* - Copy this script to "Assets/Editor/GameViewMaxResolutionPatch.cs" in your Unity project.
*
* 4. Unity エディタを終了させる。
* 4. Close the Unity Editor.
*
* 5. "Library/BurstCache"、"Library/ScriptAssemblies" フォルダをを削除。
* 5. Delete the "Library/BurstCache" and "Library/ScriptAssemblies" folders.
*
* 6. Unity エディタ起動するとにパッチが適用されます。
* 6. The patch will be applied when you start the Unity Editor.
*
* ※起動時にコンソールログに"Failed to find entry-points:"と表示されますが問題ありません。
* *"Failed to find entry-points:" will be displayed in the console log upon startup, but this is not a problem.
* 注意点:
* Notes:
* - Unity 6000.0.36f1 で動作確認。将来、UnityEditorの変更により動作しなくなる可能性があります。
* - Tested with Unity 6000.0.36f1. It may not work in the future due to changes in UnityEditor.
* - Unity Editor が起動出来なくなった場合は該当ファイルを削除してください。
* - If you are unable to start Unity Editor, please delete the relevant file.
* - ビルドされたアプリケーションには影響しません。
* - It has no effect on the built application.
*/
using System.Collections.Generic;
using System.Reflection;
using System.Reflection.Emit;
using HarmonyLib;
using UnityEngine;
using UnityEditor;
[InitializeOnLoad]
public static class GameViewSizePatcher
{
static GameViewSizePatcher()
{
var harmony = new Harmony("com.example.gameviewpatch");
var targetType = typeof(Editor).Assembly.GetType("UnityEditor.GameViewSizes");
var method = targetType?.GetMethod("GetRenderTargetSize", BindingFlags.Static | BindingFlags.Public | BindingFlags.NonPublic);
if (method != null)
{
harmony.Patch(method, transpiler: new HarmonyMethod(typeof(GameViewSizePatcher), nameof(Transpiler)));
Debug.Log("GameViewSizes.GetRenderTargetSize patched to allow higher resolution.");
}
}
public static IEnumerable<CodeInstruction> Transpiler(IEnumerable<CodeInstruction> instructions)
{
foreach (var instruction in instructions)
{
if (instruction.opcode == OpCodes.Ldc_R4 && (float)instruction.operand == 8192f)
{
instruction.operand = 16384f;
Debug.Log("Replaced maxResolutionSize 8192f -> 16384f");
}
yield return instruction;
}
}
}