パッケージ、リポジトリ、アプリカテゴリを検索

パッケージ詳細v0.7.3

ar_flutter_plugin

(共同)拡張現実体験を作成するためのFlutterプラグイン - iOSのARKitとAndroidデバイスのARCoreをサポートしています。

AndroidiOS
30日間ダウンロード
399
いいね数
364
Pub ポイント
120

パッケージをインストール

flutter pub add ar_flutter_plugin

パッケージ概要

公開情報に基づく選定ガイドです。参考としてご利用ください。

ar_flutter_plugin は、Flutter アプリケーション内で拡張現実体験を構築できるようにし、iOS の ARKit と Android の ARCore をサポートしています。複数のユーザーがリアルタイムで同じ仮想コンテンツと相互作用できるため、共同ARを可能にします。このプラグインは Flutter プロジェクトにスムーズに統合され、統一された API を通じてデバイス固有の AR 機能にアクセスできます。インタラクティブな教育ツール、ゲーム、没入型製品ビジュアライゼーションに最適です。

用途

  • インタラクティブARゲーム
  • バーチャル製品プレビュー
  • 教育用ARアプリ
  • 共同AR体験
  • ARベースのナビゲーション

主な機能

  • ARKit (iOS) および ARCore (Android) をサポートしています
  • マルチユーザーARコラボレーションを有効にする
  • Flutter とのシンプルな統合
  • リアルタイムでの3Dオブジェクト配置
  • クロスプラットフォームAR開発

適している対象

  • Flutter を使用する AR 開発者
  • 教育アプリの作成者
  • 製品のビジュアライゼーションアプリ
  • ゲームアプリケーション
  • インタラクティブな物語共有プラットフォーム

注意事項

  • AR対応の互換デバイスが必要
  • 古くさいまたはサポートされていないハードウェアでの機能制限
  • 最適なパフォーマンスを発揮するには、追加のセットアップが必要になる場合があります
  • プラットフォーム固有のARフレームワークに依存
  • AR以外の用途には適していません

元の README

関連するソースリポジトリの README 原文のスナップショットです。最新の内容はリポジトリをご覧ください。

ar_flutter_plugin

pub package

Flutter Plugin for (collaborative) Augmented Reality - Supports ARKit for iOS and ARCore for Android devices.

Many thanks to Oleksandr Leuschenko for the arkit_flutter_plugin and to Gian Marco Di Francesco for the arcore_flutter_plugin which both served as a great basis and starting point for this project.

Getting Started

Installing

Add the Flutter package to your project by running:

flutter pub add ar_flutter_plugin

Or manually add this to your pubspec.yaml file (and run flutter pub get):

ar_flutter_plugin package extension

dependencies:
  ar_flutter_plugin: ^0.7.3
Importing

Add this to your code:

import 'package:ar_flutter_plugin/ar_flutter_plugin.dart';

If you have problems with permissions on iOS (e.g. with the camera view not showing up even though camera access is allowed), add this to the podfile of your app's ios directory:

  post_install do |installer|
    installer.pods_project.targets.each do |target|
      flutter_additional_ios_build_settings(target)
      target.build_configurations.each do |config|
        # Additional configuration options could already be set here

        # BEGINNING OF WHAT YOU SHOULD ADD
        config.build_settings['GCC_PREPROCESSOR_DEFINITIONS'] ||= [
          '$(inherited)',

          ## dart: PermissionGroup.camera
          'PERMISSION_CAMERA=1',

          ## dart: PermissionGroup.photos
          'PERMISSION_PHOTOS=1',

          ## dart: [PermissionGroup.location, PermissionGroup.locationAlways, PermissionGroup.locationWhenInUse]
          'PERMISSION_LOCATION=1',

          ## dart: PermissionGroup.sensors
          'PERMISSION_SENSORS=1',

          ## dart: PermissionGroup.bluetooth
          'PERMISSION_BLUETOOTH=1',

          # add additional permission groups if required
        ]
        # END OF WHAT YOU SHOULD ADD
      end
    end
  end
Example Applications

To try out the plugin, it is best to have a look at one of the following examples implemented in the Example app:

Example Name Description Link to Code
Debug Options Simple AR scene with toggles to visualize the world origin, feature points and tracked planes Debug Options Code
Local & Online Objects AR scene with buttons to place GLTF objects from the flutter asset folders, GLB objects from the internet, or a GLB object from the app's Documents directory at a given position, rotation and scale. Additional buttons allow to modify scale, position and orientation with regard to the world origin after objects have been placed. Local & Online Objects Code
Objects & Anchors on Planes AR Scene in which tapping on a plane creates an anchor with a 3D model attached to it Objects & Anchors on Planes Code
Object Transformation Gestures Same as Objects & Anchors on Planes example, but objects can be panned and rotated using gestures after being placed Objects & Anchors on Planes Code
Screenshots Same as Objects & Anchors on Planes Example, but the snapshot function is used to take screenshots of the AR Scene Screenshots Code
Cloud Anchors AR Scene in which objects can be placed, uploaded and downloaded, thus creating an interactive AR experience that can be shared between multiple devices. Currently, the example allows to upload the last placed object along with its anchor and download all anchors within a radius of 100m along with all the attached objects (independent of which device originally placed the objects). As sharing the objects is done by using the Google Cloud Anchor Service and Firebase, this requires some additional setup, please read Getting Started with cloud anchors Cloud Anchors Code
External Object Management Similar to the Cloud Anchors example, but contains UI to choose between different models. Rather than being hard-coded, an external database (Firestore) is used to manage the available models. As sharing the objects is done by using the Google Cloud Anchor Service and Firebase, this requires some additional setup, please read Getting Started with cloud anchors. Also make sure that in your Firestore database, the collection "models" contains some entries with the fields "name", "image", and "uri", where "uri" points to the raw file of a model in GLB format External Model Management Code

Contributing

Contributions to this plugin are very welcome. To contribute code and discuss ideas, create a pull request, open an issue, or start a discussion.

Plugin Architecture

This is a rough sketch of the architecture the plugin implements:

ar_plugin_architecture

カテゴリー

依存関係

依存関係一覧 4 件

ソースリポジトリ

このパッケージを使用しているプロジェクト