AR pass through camera black screen

Using 4.24 on Android.

Been working on a small AR project and found that the passthrough camera feed won’t display (will just get black screen) in various scenarios but otherwise the AR sesion is functioning correclty. For example, with an image set up to track even when the screen is black you can still see any objects you attatch to tracked image.

The scenarios I have found where this happens are:

  1. on first run after launching on phone you get prompted for camera permissions but after accepting screen remains black. Closing the app and restarting, so you don’t get the permission prompt everything will then work fine
  2. Changing level in game. Stopping an AR session and moving to map ar set up then coming back to AR map get same thing, ie session works fine but no passthrough camera.
  3. Changing phone orientation, passthrough camera freezes after changing orientation.

What’s weird is that from testing the example projects this behaviour only happens on some of them. HelloAR and ComputerVision, camera works as expected no matter what you do but The augmented images/faces projects behave the same was my project (and the unreal AR template project) behave.

I have gone through the projects to see if they are doing anything diferently but can’t see anything. Tried to compare project settings to work out where the difference was coming from but none of the differences I could find seemed to effect it. Also, nothing comes up in logcat in the times when it doesn’t work. I do get some RHI error, but I also get that error in the apps that function correclty.

Anyone seen this/got any ideas?

there are many bugs in Unreal Engine with ARCore and ARKit. Other users have reported similar problems.

These problems are tracked at
If you search for AR or ARCore you can find an issue similar to yours, it is probably the same bug.

(Please note since yesterday, feb.12th, the bug report site is offline, but the link is correct, so you need to try again later.)

@NobbigvonL Thanks for the reply. Yeah I would usually have searched the issue tracker/answerhub but both have be down for at least a few days. Part of the reason for posting here regardless was that even if it is a bug it seems there shuold be someway to get round it given two what I mentioned about two of the demo projects being absolultey fine all the time. Just can’t figure out what the difference is and was hoping someone else had!

Hi. Have you succeeded with this issue? After searching internet and few test we found that issue with black screen appears at mali GPUs. Found two methods to avoid this: 1. HDR off - but without it antialiasing doesn’t work. 2. Migrate levels to clean project set all settings and build it, after this apk works well. Maybe you found another solution?

Sorry! Only just seen you had written here.

No I never found a solution.

It’s been a while now so can’t remember if I tried HDR on/off. I would have tried anything that differered between the projects that “worked” (like HelloAR) and ones that didn’t though. Your 2nd thing of migrating levels to clean project wouldn’t have helped though as I was getting the behaviour with a brand new project sometimes.

wanted to confirm and subscribe to this thread. after launching the game for the first time, the AR pass through camera seems fine on a session start. on attempts to restart the session, the AR session no longer functions. after closing the app and restarting the app, the game works fine on all starts/restarts of the AR session. am digging through some work-arounds, but nothing yet. this is with Android. i haven’t tested this behavior on iOS yet.

edit - just wanted to add, that testing an in-app purchase on a fresh install also killed the camera pass through and any acceleration ability. sorta devalued the hype of buying the in-app purchase, so i’ll have to design around this, but just a heads up for any others diving into the wild west of AR :slight_smile:

edit2 - looks like this is fixed in 4.26 Unreal Engine Issues and Bug Tracker (UE-87102)

Interesting, thanks for the update @paradoc! I’m pretty sure I had tested with candidate images assigned or not but it was a while ago and that issue does sound very similar to what I was experiencing.

found this thread on stack overflow:
android - Why the onPause method is called immediately after onCreate - Stack Overflow

was looking at logs and saw onPause was being called which may have stopped the session request. now looking into that pipeline to stop this behavior on first run per thread comments.