"We offer new support options and therefor the forums are now in read-only mode! Please check out our Support Center for more information." - Vuforia Engine Team

Scene loaded from assetbundle containing image targets

Hi,

For a bunch of our apps we combine the use of image targets and scenes from assetbundles. Basicaly, we want to add new streamed scene to a deployed applications and do so by using assetbundles. This creates a problem however, as the image target databse has to be in streaming assets and can therefor not be in the assetbundle. Currently we solve this by downloading the dataset to persistent storage and loading it / assigning trackables at runtime (like so https://developer.vuforia.com/forum/faq/unity-load-dataset-setup-trackables-runtime)

This technique works fine but overcomplicates our workflow, as it prevents us from simply creating image targets / dropping gameobjects on them in the editor. We have to write custom code to deal with scaling etc. etc.

Recently, I ran into the split OBB problem (this one https://developer.vuforia.com/forum/faq/load-dataset-android-split-binary-obb). Basicaly, if an APK is split into apk and OBB because its larger than 100mb, on android vuforia won't find the database because it's compressed into the obb. To solve this, theres a script which before initializing Vuforia writes these files to the persistent data path + "/QCAR" (I've seen this refered to as Vuforia's extended root) and Vuforia can then find it as if it were loaded the regular way from streaming assets.

So then I thought, I have a solution to our problem now, I can just put regular image targets in a scene and make sure the database is downloaded to the extended root, and vuforia will them find them. This doesn't appear to be the case, vuforia doesn't seem aware of the dataset even if its in persistent data path + "/QCAR", so no luck there.

Why is this happening? Is it because the dataset wasn't present at build time? If we could somehow add image targets at runtime without having to write custom code it would really simplify our workflow.