AR "Add Runtime Candidate Image" won't work

I have been trying to add an image to a SessionConfig Candidate Images list using the Add Runtime Image Candidate node in the editor and packaging for Android and I haven’t been able to make it work in 4.22.1, 4.21.1 or ARCore’s branch of 4.21.
I have tried different ways of referencing the SessionConfig, using JPEGs and PNGs in color and in grayscale and no matter what I do the node always returns null.
Do I need something special to make it work? Can anyone replicate?

Hi, I’ve got the same issue. Working with ARCore modified 4.21 engine.
Did you find a solution yet?

I have the same issue

Same isssue here, can anyone help?


how are you using jpes or pngs?
Are you converting to a Texture 2D and then ARCandidate Image at runtime?

For example in BPs:
“Import File as Texture 2D” -> “Add Runtime Candidate Image” -> Add Candidate Image

Yes, that is exactly my setup.
“Import File as Texture 2D” - return value into “Add Runtime Candidate Image”.

I could see the image after importing, converting it to a brush and making it an image widget.

Haven’t tried to see if it’s fixed in 4.23 or 4.24p yet.

Hey, F.Oliva, i met the some problems with you guys, are you finally figure it out?

I wasn’t able to get it working, but I didn’t try any of the new engine versions.

What version are you using? Is the texture being imported correctly?

Im using 4.21 ARCore soure version, Actually i tried two ways:

  1. I create a function called to add candidateImage with c++, with this way, i can get the the Friendly name and use this texture from ARCandidateImage as brush to display it, after i stop the project, i can actually find the “new arcandidateImage” inside ARSessionConifg, but those new ARCandidateImage from engine transient.

  2. The second way i tried is l use the native node “Add Runtime ARCandidateImage” to it, even this Texture is already a usasset, but after this node, i use node “isvalid” to test, its not valid …
    with second way i tried 4.21 source engine and 4.24 launch version, its same.

Well I’m a few years late but I got a warning on phone that the texture format must be PF_B8
R8G8A8 or PF_R8 (Don’t remember exact names tbh) for it to work.
that can be easily be fixed by setting texture compression settings to UserInterface2D type.
but AddRuntimeCandidateImage still gave me warnings:

Warning: Reloading inlined bulk data directly from disk, this is detrimental to loading performance. Filename: ‘/CardTextures/snake.uexp’.
D/UE4 : LogGoogleARCore: Warning: Failed to add runtime candidate image: No valid session!

And returned nothing. so still no avail. I’ll update you guys if I learn something new on this.

Has anyone found a solution?
On my side, the AR Candidate are well loaded in the AR Session Config but only the Candidate Images filled directly in the AR Session Config are taken into account.
The documentation says to restart the session. I tried to stop and start the session with some delay but it does not change anything.