Найти в Дзене
Gamefiksa

Разрешение экрана unreal engine

Управление разрешением экрана в Unreal Engine — важный аспект оптимизации производительности и обеспечения наилучшего визуального опыта для игроков. Unreal Engine предоставляет различные способы установки и изменения разрешения экрана, как в редакторе, так и в упакованной игре.

1. Установка разрешения экрана в редакторе:

Viewport Resolution:

Разрешение, используемое для отображения сцены в окне просмотра редактора. Не влияет на разрешение в упакованной игре. Можно настроить в Viewport Options -> вкладка “Display Options” -> “Resolution”.

Play in Editor (PIE) Resolution:

Разрешение, используемое при запуске игры в редакторе (Play in Editor). Можно настроить в Editor Preferences -> Play -> “New Editor Window” -> “Additional Launch Parameters”. Добавьте параметр -ResX=ширина — ResY=высота (например, -ResX=1920 — ResY=1080).

Scalability Settings:

Используются для автоматической настройки графических параметров, включая разрешение, в зависимости от производительности системы. Можно настроить в Editor Preferences -> General -> Scalability.

2. Установка разрешения экрана в упакованной игре:

Command-Line Arguments (Аргументы командной строки):

Самый распространенный способ установки разрешения экрана в упакованной игре. Используйте аргументы -ResX=ширина — ResY=высота при запуске игры (например, MyGame. exe — ResX=1920 — ResY=1080). Позволяет игрокам настраивать разрешение экрана без необходимости изменять настройки игры.

GameUserSettings. ini:

Файл конфигурации, содержащий настройки игры, включая разрешение экрана. Расположен в папке %LOCALAPPDATA%\<имяпроекта> \Saved\Config\WindowsNoEditor. Игроки могут вручную изменять значения ResolutionSizeX и ResolutionSizeY в этом файле.

Blueprint/C++ Code:

Вы можете программно изменять разрешение экрана в игре с помощью Blueprints или C++. Используйте функции SetScreenResolution и ApplySettings из класса UGameUserSettings.

3. Использование Blueprints для изменения разрешения экрана:

Get Game User Settings:

Получите экземпляр класса UGameUserSettings с помощью узла “Get Game User Settings”.

Set Screen Resolution:

Используйте узел “Set Screen Resolution” для установки желаемого разрешения. Укажите ширину и высоту экрана. Укажите, использовать ли полноэкранный режим.

Apply Settings:

Используйте узел “Apply Settings” для применения изменений.

Restart Graphics:

Можете перезапустить графику.

4. Использование C++ для изменения разрешения экрана:

#include "GameFramework/GameUserSettings. h"

Void UMyGameInstance::SetResolution(int32 Width, int32 Height, bool bFullscreen)

{

UGameUserSettings* GameUserSettings = UGameUserSettings::GetGameUserSettings();

if (GameUserSettings)

{

GameUserSettings->SetScreenResolution(FIntPoint(Width, Height));

GameUserSettings->SetFullscreenMode(bFullscreen? EWindowMode::Type::Fullscreen : EWindowMode::Type::Windowed);

GameUserSettings->ApplySettings(false); // false = Не Перезагружать Игру

}

}

5. Поддержка различных разрешений экрана:

Anchor Layout (при использовании UI):

Используйте Anchor Layout для UI элементов, чтобы они правильно отображались на разных разрешениях экрана. Anchor Layout позволяет привязывать UI элементы к границам экрана или к другим элементам UI.

UI Scaling:

Используйте UI Scaling для автоматического масштабирования UI элементов в зависимости от разрешения экрана.

Screen percentage

6. Получение информации о разрешении экрана:

Get Supported Fullscreen Resolutions:

Получите список поддерживаемых разрешений экрана с помощью функции GetSupportedFullscreenResolutions из класса UGameUserSettings.

Get Desktop Resolution:

Получите разрешение рабочего стола с помощью функции GetDesktopResolution из класса UGameUserSettings.

7. Полноэкранный режим (Fullscreen Mode):

Unreal Engine поддерживает несколько режимов полноэкранного режима:

Fullscreen: Эксклюзивный полноэкранный режим. Предоставляет максимальную производительность, но может вызывать проблемы с переключением между окнами. Windowed Fullscreen: Полноэкранный режим без рамки. Предоставляет хорошую производительность и позволяет легко переключаться между окнами. Windowed: Оконный режим.

Используйте функцию SetFullscreenMode из класса UGameUserSettings для установки полноэкранного режима.

8. Оптимизация производительности:

Resolution Scaling:

Используйте Resolution Scaling для динамического изменения разрешения рендеринга в зависимости от производительности. Позволяет поддерживать стабильную частоту кадров, жертвуя качеством изображения.

Dynamic Resolution:

Используйте Dynamic Resolution для автоматической настройки разрешения рендеринга в зависимости от загрузки GPU.

Performance Profiling:

Используйте инструменты профилирования Unreal Engine для выявления узких мест и оптимизации производительности.

Управление разрешением экрана — важный аспект разработки игр в Unreal Engine. Используйте предоставленные инструменты и техники, чтобы обеспечить наилучший визуальный опыт и производительность для игроков на разных устройствах.

  📷
📷