33{
34 const FDropdownSettings* ResolutionSettings = FSettingsBase::CastSetting<FDropdownSettings>(&Settings);
35
36 if (ResolutionSettings == nullptr)
37 {
38 LOG_ERROR(LogCK,
"%s로 변환할 수 없습니다.", *FDropdownSettings::StaticStruct()->GetName());
39 return;
40 }
41
42 UGameUserSettings* CurrentGameUserSettings = GEngine->GetGameUserSettings();
43 checkf(CurrentGameUserSettings, TEXT(
"%s를 가져올 수 없습니다."),
NAMEOF(UGameUserSettings));
44
46 {
47 LOG_WARNING(LogCK,
"선택된 해상도 옵션이 유효하지 않아 적용하지 않습니다. SelectedKey: %s, InitialKey: %s", *ResolutionSettings->
SelectedKey.ToString(), *ResolutionSettings->
InitialKey.ToString());
48 return;
49 }
50
53
54 if (ResolutionOption.
Value.X <= 0 || ResolutionOption.
Value.Y <= 0)
55 {
56 LOG_WARNING(LogCK,
"해상도 값이 유효하지 않아 적용하지 않습니다. Resolution: %d x %d", ResolutionOption.
Value.X, ResolutionOption.
Value.Y);
57 return;
58 }
59
63
64 CurrentGameUserSettings->SetScreenResolution(ResolutionOption.
Value);
65}
#define LOG_ERROR(Category, Format,...)
Definition CK_UE.h:40
#define NAMEOF(Type)
Definition CK_UE.h:30
#define LOG_WARNING(Category, Format,...)
Definition CK_UE.h:39
Definition UserGameSettings.h:324
FIntPoint Value
Definition UserGameSettings.h:329
Definition UserGameSettings.h:266
const TDropdownOption & GetOptions() const
Definition UserGameSettings.h:510
FName SelectedKey
Definition UserGameSettings.h:296
bool HasValidSelection() const
Definition UserGameSettings.cpp:449
FName GetSelectionKey() const
Definition UserGameSettings.cpp:438
FName InitialKey
Definition UserGameSettings.h:293
Definition GlobalUserSettingsRuntime.h:5
FIntPoint Resolution
Definition GlobalUserSettingsRuntime.h:6
static void SetGlobalUserSettingsRuntime(const FGlobalUserSettingsRuntime &Runtime)
Definition UserGameSettings.cpp:26
static FGlobalUserSettingsRuntime GetCurrentGlobalUserSettingsRuntime()
Definition UserGameSettings.cpp:20