正在进行画质设置,在设置GI的Scalability的时候发现一个问题,天光在中低档默认会关闭实时捕获,这个设置按照源码中的说明是不能在Runtime切换的,按我的理解那就是切换后不会立刻生效,需要重新loading场景之类的。
但在同时进行Effect的切换的时候发现天光出现了切换,逐个命令检查下来是r.detailmode的原因。
因为肯定是希望单独切换GI设置和同时切换所有设置的结果能保持统一,所以想知道在r.detailmode切换的时候触发了什么,是否也可以通过蓝图或者代码去触发来确保画质切换的结果符合设计。
Steps to Reproduce
1.场景中放置一个Skylight。
2.Skylight的Source Type选择SpecifiedCubemap,并贴一张CubeMap。
3.Skylight勾选上RealTimeCapture。
4.仅通过在ScalabilityGroup中将Global Illumination从High切换到Medium,Skylight不会发生变化。
5.通过控制台更改r.DetailMode的数值,Skylight会发生改变,从实时抓取变为使用设置好的CubeMap。
Liu.Wei
(Liu.Wei)
3
Hi,
你好,事实上第4步没有发生变化是一个bug,已经在5.6的版本里修复了 https://github.com/EpicGames/UnrealEngine/commit/3ed399c09b213b29add5d0c80bdc99cc210e47b5,所以第5步是符合预期的。
另外5.6的版本已经在所有设置里都开启了realtime capture,所以目前效果是一致的。当然应该是5.6里的skylight的realtime capture做过一定的优化。如果有可能,建议升级5.6的版本。