155{
157
158 if (RuntimeSettings == nullptr)
159 {
160 LOG_ERROR(LogCK,
"RuntimeSettings가 nullptr입니다.");
161 return;
162 }
163
164 const UEnum* UserGameSettingEnum = StaticEnum<EUserGameSetting>();
165 check(UserGameSettingEnum);
166
167 for (int32 Index = 1; Index < UserGameSettingEnum->NumEnums(); ++Index)
168 {
169 const int64 Idx = UserGameSettingEnum->GetValueByIndex(Index);
171
173 {
174 continue;
175 }
176
177 const FInstancedStruct* SettingStruct = RuntimeSettings->
GetSettings().Find(Setting);
178
179 if (SettingStruct == nullptr)
180 {
181 continue;
182 }
183
185
186 if (SettingBase == nullptr)
187 {
189 continue;
190 }
191
192 SettingBase->
ApplySettings(RuntimeSettings, GetGameInstance());
193 }
194
195 UGameUserSettings* CurrentGameUserSettings = GEngine->GetGameUserSettings();
196 checkf(CurrentGameUserSettings, TEXT(
"%s를 가져올 수 없습니다."),
NAMEOF(UGameUserSettings));
197 CurrentGameUserSettings->ApplySettings(false);
198}
#define LOG_ERROR(Category, Format,...)
Definition CK_UE.h:40
#define NAMEOF(Type)
Definition CK_UE.h:30
const TMap< EUserGameSetting, FInstancedStruct > GetSettings(const EUserGameSettingCategory Category) const
Definition UserGameSettings.cpp:455
virtual void ApplySettings(const UUserGameSettings *RuntimeSettings, UGameInstance *GameInstance) const
Definition UserGameSettings.cpp:265