ue4玄学画面设置实现

Posted 我自己啊

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ue4玄学画面设置实现相关的知识,希望对你有一定的参考价值。

pc端项目临近发布之时,免不了向玩家提供一些自订选项,以适应各自的习惯和机能,画面设置就是必要的一环。

主要的画面选项有:

1.全屏/窗口化

2.分辨率

3.视野距离

4.抗锯齿

5.后期处理

6.阴影质量

7.贴图质量

8.特效

9.植被质量

上述选项对fps影响最大的其实还是分辨率,阴影质量如果开到0档就完全没有人影十分诡异,贴图质量以现在电脑的内存而言一般都能开到最高,对应的代码分别是:

APlayerController* PController = UGameplayStatics::GetPlayerController(gamemode->GetWorld(), 0);
PController->ConsoleCommand(TEXT("t.MaxFPS 144"), true);//先设置最大fps

UGameUserSettings* MyGameSettings = GEngine->GetGameUserSettings(); MyGameSettings->SetFullscreenMode(EWindowMode::Fullscreen); MyGameSettings->ApplySettings(true);//这句必须紧跟全屏才能立即全屏,不知为何 PController->ConsoleCommand(TEXT("r.setres " + resolutionnow), true);//先设置分辨率(形如1920x1080f,1280x720f) //如果用的是MyGameSettings形式设置分辨率会导致不能立即全屏,原因也不详 //接下来为了方便起见,以一个总体画质变量general_quality来设置 MyGameSettings->SetViewDistanceQuality(general_quality); MyGameSettings->SetAntiAliasingQuality(general_quality); MyGameSettings->SetPostProcessingQuality(general_quality); MyGameSettings->SetShadowQuality(general_quality); MyGameSettings->SetTextureQuality(general_quality); MyGameSettings->SetVisualEffectQuality(general_quality); MyGameSettings->SetFoliageQuality(general_quality); MyGameSettings->SaveSettings();

然而这样设置看似非常正确,实则还有问题。

每次设置画面之后的确能立即变更画质,然而下一次重新开启游戏后画面选项仍旧回到了引擎默认设置,至少需要再点一次应用设置才能见效,非常地离奇。

我查阅了一下log发现每次新打开游戏进行上述设置之后,这些选项会自动被设置回来。

 

于是我只好使出杀手锏——运行两次大法,也就是把上述代码段执行两次。。

for (int i = 0; i < 2; i++) 
{
//。。。。。。。。  
}

 

结果成功解决了!!!

 

以上是关于ue4玄学画面设置实现的主要内容,如果未能解决你的问题,请参考以下文章

UE4画面亮度可视化

[工作积累] UE4 并行渲染的同步 - Sync between FParallelCommandListSet & FRHICommandListImmediate calls(代码片段

短视频运营短视频剪辑 ⑤ ( 视频素材使用 | 设置插入后的视频素材属性 | 设置画面 | 设置音频 | 设置变速 | 设置动画 | 设置调节 )

如何实现人物闪白的游戏特效

我应该用片段替换 Android 活动吗?

ue4怎么实现动画蒙太奇播放完后物体出现在动画结束时候位置