Dear Community,
I’d like to optimize our game performance for PC platforms based on different hardware devices, and I see that the BaseCompat.ini file lists a lot of GPU and CPU parameters.
I would like to divide the different PCs in WindowsDeviceProfiles.ini based on their overall performance. Change their TextureGroup parameters so that when loading they will run at the matching frame rate and quality based on the matching LODBias.
But I can’t figure out how to associate these parameters and blocks.
I see that the Android platform already has very clear zone settings in DefaultDeviceProfiles.ini, as follows.
[Android DeviceProfile]
DeviceType=Android
BaseProfileName=
-CVars=r.MobileContentScaleFactor=1.0
-CVars=slate.AbsoluteIndices=1
[Android_Low DeviceProfile]
DeviceType=Android
BaseProfileName=Android
-CVars=r.MobileContentScaleFactor=0.8
In BaseDeviceProfiles.ini, I see that Android defines different rules like this to classify different devices, based on wildcard characters, into high and low.
[/Script/AndroidDeviceProfileSelector.AndroidDeviceProfileMatchingRules]
MatchProfile=(Profile=“Android_Adreno4xx”,Match=((SourceType=SRC_GpuFamily,CompareType=CMP_Regex,MatchString=“Adreno \(TM\) 4[0-9][0-9]”)))
+MatchProfile=(Profile=“Android_Adreno5xx_Low”,Match=((SourceType=SRC_GpuFamily,CompareType=CMP_Regex,MatchString=“Adreno \(TM\) 5[0-1][0-9]”)))
Regarding the PC settings, I’ve read the source code, but I still can’t figure out how to add them. How can I divide the hardware gears and populate them with the GPU and CPU of the corresponding performance, and then modify their characteristics one by one, like Android does? Thanks