processing/processing-android

VR library is broken

codeanticode opened this issue · 4 comments

Google stopped supporting the original VR SDK for Android a while ago:

https://developers.google.com/vr

but the last released VR aar files were still online until recently. They are now gone, so sketches that use VR would not build because they cannot resolve the VR dependencies.

Google now offers an Cardboard SDK for Android NDK:

https://developers.google.com/cardboard/develop/c/quickstart

so a potential replacement will not be easy.

@codeanticode true, need to either see the work around, if we could find the last release anywhere on web then we can add it as dependency in the final fat jar file or last option is to start migrating the whole processing-androidSDK to the new Cardboard APIs.

This gonna be challenging task if Google is not providing the migrating docs for it !

Anyhow if we will be able to fix a work around then I believe it would be for temporary basis only, soon we have to migrate whole VR SDK to new Cardboard SDK.

@codeanticode I will look into the Migration issue in depth soon and prepare a doc if possible and share here so anyone else who would like to contribute will get help from it !

Thanks !

Yes, a temporary workaround would be to include the VR aar/jar files into the Processing projects, maybe with a gradle module that just contains the local artifacts as described here. I also saw that @rupeshkumar22 added them to the VR library:

https://github.com/processing/processing-android/tree/master/mode/libraries/vr/libs

but when gradle build the sketches, still tries to resolve the dependency from the online repo.

I think that migrating to the new Cardboard SDK would involve creating some kind of Java layer that replicates the functionality needed by the Processing VR library, and uses the Android NDK to implement it... but not sure how to go about it.

Another alternative would be to remove the VR library.

Yes, a temporary workaround would be to include the VR aar/jar files into the Processing projects, maybe with a gradle module that just contains the local artifacts as described here. I also saw that @rupeshkumar22 added them to the VR library:

https://github.com/processing/processing-android/tree/master/mode/libraries/vr/libs

but when gradle build the sketches, still tries to resolve the dependency from the online repo.

I think that migrating to the new Cardboard SDK would involve creating some kind of Java layer that replicates the functionality needed by the Processing VR library, and uses the Android NDK to implement it... but not sure how to go about it.

Another alternative would be to remove the VR library.

Hi @codeanticode , seems like anyway we need to migrate to the cardboard sdk, so why not to put it as one of the priority tasks in the android wiki page for GSoC.

Will update this and some more priority tasks soon.

Thanks !

@ranaaditya @rupak0577 this commit 347abac fixes the VR library (for now) by incorporating google-vr as a local project containing the aar files. This should buy us some time until the library can be updated to use the new Cardboard SDK.