Skip to main content
New Participant
February 5, 2024

Quest 3 Specific Build for graphical update

We've been having some issues with trying to make a Quest 3 graphical update filed and wondering what the best method of doing this would be.

We want to use device profiles to control both the texture resolution and other cvars that we are changing. We want to adjust the texture resolution and shader settings on Quest 3, making a specific Quest 3 build, without adjusting the Quest 2 package size.

Firstly we had an issue with it detecting a quest 3 . Here is a log taken from the game running on a quest 3


01-28 12:53:41.013: D/UE4(3199): [2024.01.28-16.53.41:013][ 0]LogAndroid: Checking 35 rules from DeviceProfile ini file.
01-28 12:53:41.014: D/UE4(3199): [2024.01.28-16.53.41:014][ 0]LogAndroid: Default profile: Android_Default
01-28 12:53:41.014: D/UE4(3199): [2024.01.28-16.53.41:014][ 0]LogAndroid: GpuFamily: Adreno (TM) 740
01-28 12:53:41.014: D/UE4(3199): [2024.01.28-16.53.41:014][ 0]LogAndroid: GlVersion: OpenGL ES 3.2 V@0746.0 (GIT@e0d95b0057, I5811eb47b8, 1697869180) (Date:10/20/23)
01-28 12:53:41.014: D/UE4(3199): [2024.01.28-16.53.41:014][ 0]LogAndroid: VulkanAvailable: true
01-28 12:53:41.014: D/UE4(3199): [2024.01.28-16.53.41:014][ 0]LogAndroid: VulkanVersion: 1.1.128
01-28 12:53:41.014: D/UE4(3199): [2024.01.28-16.53.41:014][ 0]LogAndroid: AndroidVersion: 12
01-28 12:53:41.014: D/UE4(3199): [2024.01.28-16.53.41:014][ 0]LogAndroid: DeviceMake: Oculus
01-28 12:53:41.014: D/UE4(3199): [2024.01.28-16.53.41:014][ 0]LogAndroid: DeviceModel: Quest
01-28 12:53:41.014: D/UE4(3199): [2024.01.28-16.53.41:014][ 0]LogAndroid: DeviceBuildNumber: SQ3A.220605.009.A1
01-28 12:53:41.014: D/UE4(3199): [2024.01.28-16.53.41:014][ 0]LogAndroid: UsingHoudini: false
01-28 12:53:41.014: D/UE4(3199): [2024.01.28-16.53.41:014][ 0]LogAndroid: Hardware: eureka
01-28 12:53:41.014: D/UE4(3199): [2024.01.28-16.53.41:014][ 0]LogAndroid: Chipset: unknown
01-28 12:53:41.014: D/UE4(3199): [2024.01.28-16.53.41:014][ 0]LogAndroid: HMDSystemName: Oculus Quest2
01-28 12:53:41.014: D/UE4(3199): [2024.01.28-16.53.41:014][ 0]LogAndroid: Selected Device Profile: [Oculus_Quest2]
01-28 12:53:41.014: D/UE4(3199): [2024.01.28-16.53.41:014][ 0]LogInit: Applying CVar settings loaded from the selected device profile: [Oculus_Quest2]


For some reason it seems that the headset is reporting its name as Oculus Quest2? And as such the profile which is used is the Quest2 profile. This can be solved by changing the way that it decides which profile to use, but is a bit weird.

At this point we do get a build that has any runtime changes made in the CVARs, but not any compile/cook time changes. I.e. We don't get the different texture resolutions that we want to use. We want a Quest 2 build that is not impacted by the larger texture resolutions that we can do on Quest 3, but not sure the way to do that in the device profiles & build step.

We could manually change our build process to inject the Quest 2/3 details rather than using the device profiles, but would prefer to use device profiels if possible.

Thanks for any help

This topic has been closed for replies.

8 replies

New Participant
April 15, 2024

Hi,

We are just setting up the Android device profiles for our project and are wondering the same question.

Does the Quest 3 have a device profile so that we can control the graphical quality on the platform?

Thanks,

Phil.

New Participant
May 13, 2024

Hi,

Totally get what you're saying. I'm facing the same thing. No matter what I tweak for Quest 3, it's like it's stuck on the settings from Quest 2.

New Participant
June 4, 2024

Hello, have you found a solution for this problem?

New Participant
July 11, 2024

I Found Solution! (ノ◕ヮ◕)ノ*:・゚✧

To fix the problem, you need to add a MatchProfile in your BaseDeviceProfiles.ini located in (Your Engine Loc)\Engine\Config\.

  1. Open BaseDeviceProfiles.ini.
  2. Find the existing MatchProfile for Meta_Quest_3.
  3. After the existing entry, paste the following:
 
+MatchProfile=(Profile="Meta_Quest_3",Match=((SourceType=SRC_DeviceMake,CompareType=CMP_Equal,MatchString="Oculus"), (SourceType=SRC_GPUFamily,CompareType=CMP_Equal,MatchString="Adreno (TM) 740")))

 

The Quest 3 has a different GPUFamily, so we create a rule to match the Quest 3 profile accurately.

Note: Unfortunately, differentiating between Quest 2 and Quest Pro is tricky since they share the same GPU. I tried adding a rule based on RAM, but no luck so far.

Inspiring
June 17, 2024

have you guys found a solution to this issue? our says

Active device profile: [0x7bd8a67900][0x7be3442ae0 49] Android
https://imaginegames.itch.io Let's make great games!
New Participant
July 10, 2024

Still having this issue, and now I know the Quest Pro has the same problem as the Quest 3.

Up and Coming
July 11, 2024

ok so I did this change to the meta engine and now my rendering is broken in one eye. Not sure why. So I don't know if I'm using the "correct" profile now or if the system didn't like that change and placed me at some other default profile. 

Bringing games to Life