CariusLars / ar_flutter_plugin

Flutter Plugin for AR (Augmented Reality) - Supports ARKit on iOS and ARCore on Android devices
MIT License
333 stars 251 forks source link

Thanks for this! #12

Closed Sameerkash closed 3 years ago

Sameerkash commented 3 years ago

thanks for this starting this package, this was quite needed as I recently struggled with implementing AR in my android app. and that's a very ambitious goal and architecture which I hope to help and see soon come alive.

In the current ar_core_flutter_plugin, it uses scenform, which was the major bottleneck. I also saw sceneform as a part of this, but also google-ar-core, I wanted to confirm and understand how this is better than the previous implementation and will it truly give flutter the power to utilize all AR features?

P.S, I'd like to get involved more and contribute, it'd be great if you can create discord, gitter, or just open the discussions tab.

CariusLars commented 3 years ago

Hey @Sameerkash, thanks for mentioning the discussions tab, I wasn't aware it's deactivated, it is now enabled :)

About Sceneform: Could you elaborate why exactly it was the bottleneck of the ar_core_flutter_plugin? I used it because I feel like even though it is now only community-maintained, it is still the most straight-forward renderer to use with ARCore on Android, but I'm more than happy to be convinced differently! what would you use, straight OpenGL?

Sameerkash commented 3 years ago

@CariusLars , by bottleneck, I mean scene form is deprecated and lacks support from google.

also, I had trouble showing high-quality 3D models exported from blender, not sure if this is a limitation of android itself or it can be better with the ar: core dependency instead, Also I was not able to fetch 3D models from remote URL and hence had to put all the models as assets which made the app very big.

here is the project I recently built https://github.com/Sameerkash/FoodMagic

you can also see an open discussion here about migrating the plugin from sceneform to new AR core API

CariusLars commented 3 years ago

@Sameerkash cool app! fetching 3D models from URL definitely works with sceneform, I implemented it in the "External Model Management" tab of the sample app in this plugin. Not sure about very high quality 3D models, haven't tested it... I can definitely see the problem with google having dropped support and wouldn't mind if this plugin was migrated to another renderer, do you have any experience which one would be better? ARCore is imported and the base of the tracking etc., but it doesn't contain its own renderer as far as I understand, so something like Sceneform or OpenGL has to be used as well

Sameerkash commented 3 years ago

@CariusLars, I personally have not much idea as I have not done any native android development. Will have to dig into it. But I did see that scenform was deprecated so thought it might not be the best use case.

How are the latest android implementations doing it? are they using sceneform too along with AR Core? Cause I'm not sure.

But in any case, whatever works best will be the best to implement. As I see new features like object occlusion, depth tracking would be amazing to have in flutter. anyways, if you can point me in some direction I can research a bit more and also help with any code.

p.s we can move this to discussion so anyone else who stumbles across this can give their opinion.

CariusLars commented 3 years ago

Moved to #13 #