Table of Contents

EasyAR 開発のはじめに

EasyAR は AR 開発をシンプルかつ効率的にします。EasyAR を使えば、さまざまなプラットフォームのアプリに拡張現実機能を簡単に統合できます。

EasyAR 製品概要

EasyAR は AR 開発向けに 3 つの主要製品を提供します。EasyAR Mega、EasyAR CRS(Cloud Recognition Service)、EasyAR Sense です。

  • EasyAR Mega は大規模シーン向けの空間認識・位置推定サービスで、広大なシーンや複雑なオブジェクトに対する AR 機能を提供します。
  • EasyAR CRS は高性能なクラウド画像認識サービスで、従来型の image recognition AR 機能を提供します。
  • EasyAR Sense はクロスプラットフォームの AR 統合機能を提供する augmented reality SDK です。

次の図は、製品構造を細分化したものです。

block
  columns 1
  block:groupTitle
    Title["EasyAR 製品構成図"]
  end
  block:groupTool
    Tool["ワークフローツール"]
    MegaToolbox["Mega Toolbox"]
    MegaStudio["Mega Studio"]
    space
  end
  block:groupSDK
    SDK["SDK"]
    Sense["Sense"]
    SenseUnity["Sense<br>Unity Plugin"]
    MegaWeChat["Mega<br>WeChat MiniProgram Plugin"]
  end
  block:groupService
    Service["クラウドサービス"]
    Mega["Mega<br>Service"]
    SpatialMap["SpatialMap<br>Service"]
    CRS["Cloud Recognition<br>Service"]
  end
  
  style groupTitle fill:none,stroke:none,stroke-width:0px
  style Title fill:none,stroke:none,stroke-width:0px
  style Tool fill:none,stroke:none,stroke-width:0px
  style SDK fill:none,stroke:none,stroke-width:0px
  style Service fill:none,stroke:none,stroke-width:0px
  • Cloud services は大規模な recognition と localization 能力を提供します
    • Mega Service: EasyAR Mega の中核コンポーネント。
    • SpatialMap Service: EasyAR Sense の sparse spatial map に cloud サポートを提供するサービス。
    • Cloud Recognition Service: EasyAR CRS の中核コンポーネント。
  • SDK は豊富なローカル機能を提供し、cloud services を利用してより強力な能力を提供します
    • Sense: EasyAR Sense の中核 SDK。
    • Sense Unity Plugin: EasyAR Sense の Unity plugin。
    • Mega WeChat MiniProgram Plugin: EasyAR Mega の WeChat Mini Program plugin。
  • Workflow tools は視覚的な管理およびテストツールを提供します
    • Mega Toolbox: EasyAR Mega の視覚的な collection および testing ツール。
    • Mega Studio: EasyAR Mega の視覚的な editing および management ツール。

AR アプリケーションを開発する際、異なるシナリオの機能要件を満たすために、1 つまたは複数の product modules を同時に使用する場合があります。

例:

  • 塗り絵アプリケーションを開発する場合、Sense Unity Plugin を使用して Unity で cross-platform アプリケーションを開発し、画像を tracking して 3D models を rendering できます。
  • Live Photo アプリケーションを開発する場合、Sense を使用して写真を認識・tracking して動画を再生する Android および iOS native アプリケーションを開発できます。または Cloud Recognition Service を使用して大量の写真に対する cloud recognition service を提供し、WeChat Mini Program でこの service interface を直接呼び出して photo recognition 機能を実現できます。
  • AR navigation アプリケーションを開発する場合、Mega Service を使用して large-scene localization を実現できます。Unity で Sense Unity Plugin を使用して EasyAR Mega の interface と EasyAR Sense の motion tracking 機能を呼び出し、AR navigation 能力を実現できます。また Mega Toolbox を使用して localization と tracking の効果を素早く検証できます。

EasyAR Mega は次の AR 能力を提供し、mobile application、WeChat Mini Program など多様なプラットフォームの AR アプリケーション構築に使用できます。

  • Mega fixed space: AR navigation、cultural tourism guides、landmark shows、large-space games などの large-space シナリオに適しています。
  • Mega complex object: AR cultural relic explanations、factory training、AR collectible effects、auto show marketing などの complex objects に適しています。

EasyAR CRS は次の AR 能力を提供し、mobile application、WeChat Mini Program、Web application など多様なプラットフォームの AR アプリケーション構築に使用できます。

  • Image cloud recognition: AR picture books、cultural and creative products、TCG cards、Live Photos などの large-scale image recognition シナリオに適しています。

EasyAR Sense は次の AR 能力を提供し、mobile phones、XR headsets、PC など多様なプラットフォームの AR アプリケーション構築に使用できます。

  • Motion tracking: AR spatial brushes、remote collaboration などのシナリオに適しています。
  • Plane detection: AR product display、virtual decoration などのシナリオに適しています。
  • Sparse spatial map (room-level anchors): small-space interaction や games などのシナリオに適しています。
  • Dense spatial map (meshing): environmental interaction games などのシナリオに適しています。
  • Surface tracking (scaleless anchoring): AR spatial effects などのシナリオに適しています。
  • Image tracking: AR cards、coloring、brand marketing などのシナリオに適しています。
  • Object tracking: AR globes などのシナリオに適しています。

さらに、EasyAR Sense は以下の cloud または advanced 能力を統合して使用できます。

  • Mega fixed space
  • Mega complex object
  • Image cloud recognition

さまざまなプラットフォームで AR アプリを開発する

EasyAR を使うと、さまざまなプラットフォームで AR アプリを開発できます。

Unity で AR アプリを開発する方法は推奨されています。Unity なら、クロスプラットフォームな 3D コンテンツとインタラクションを効率よく開発できます。

alt text

Unity で開発した AR アプリは次の機能を利用できます。

  • EasyAR Mega の全機能
  • EasyAR CRS の全機能
  • EasyAR Sense の全機能

Unity で開発した AR アプリは次のデバイスとプラットフォームに公開できます。

  • Android のスマートフォン、タブレットなど
  • iOS のスマートフォン、タブレット
  • 各種 XR headset
  • Windows PC
  • macOS PC

WeChat Mini Program

WeChat Mini Program プラットフォームでは、Mega WeChat MiniProgram Plugin または Cloud Recognition Service API を使って WeChat AR アプリを開発できます。Mini Program では XR-Frame を使って 3D レンダリングとインタラクション開発ができます。また PlayCanvas や Three.js などの他の Web 3D エンジンも利用できますが、より複雑な追加対応が必要です。

alt text

WeChat Mini Program プラットフォーム上の AR アプリは次の機能を利用できます。

  • EasyAR Mega の全機能(XR-Frame のみ)
  • EasyAR CRS の全機能
  • Motion tracking1
  • Plane detection1
  • Image tracking1(EasyAR Mega とは併用不可)
  • Object tracking1(EasyAR Mega とは併用不可)

WeChat では AR navigation と AR culture and tourism 向けの成熟したソリューションも提供しています。必要に応じて EasyAR のビジネスサポートへご連絡ください。

ネイティブアプリ

ネイティブ API を直接使って AR アプリを開発することも可能ですが、推奨はしません。主な理由は、AR に必要な 3D コンテンツとインタラクションを 3D engine なしで実装するのは複雑で、コンテンツ制作効率も低いためです。通常は、単純な図形描画や動画再生のようなシンプルな用途にのみ向いています。

alt text

ネイティブ API で開発した AR アプリは次の機能を利用できます。

  • EasyAR Mega の全機能
  • EasyAR CRS の全機能
  • EasyAR Sense の全機能

ネイティブ API で開発した AR アプリは次のデバイスとプラットフォームに公開できます。

  • Android のスマートフォン、タブレットなど
  • iOS のスマートフォン、タブレット
  • 各種 XR headset2
  • Windows PC
  • macOS PC

独自の AR プラットフォームを構築する

3D engine を独自開発している場合、または EasyAR がまだ対応していない 3D engine で EasyAR を使いたい場合は、EasyAR Sense のネイティブ SDK を使って EasyAR 機能をその 3D engine に統合できます。この方法には、強い C/C++ 開発経験と、3D engine 実装への十分な理解と制御力が必要です。一般的には、アプリに Unity を導入したくない企業向けの方法です。

この方法で構築した AR プラットフォームやアプリは次の機能を利用できます。

  • EasyAR Mega の全機能
  • EasyAR CRS の全機能
  • EasyAR Sense の全機能

この方法で構築した AR プラットフォームやアプリは次のデバイスとプラットフォームに公開できます。

  • Android のスマートフォン、タブレットなど
  • iOS のスマートフォン、タブレット
  • 各種 XR headset2
  • Windows PC
  • macOS PC

Unreal

EasyAR の Unreal 対応はまだ実験段階です。必要であれば EasyAR のビジネスサポートに連絡し、カスタム開発についてご相談ください。

alt text

同時に、あなたやチームに十分な C/C++ 開発経験があり、特に Unreal Engine の rendering pipeline や plugin 開発への理解があるなら、EasyAR Sense のネイティブ SDK を使って Unreal Engine に EasyAR 機能を統合することも検討できます。

ここから始める


  1. WeChat VisionKit によって提供されます。↩↩↩↩

  2. ネイティブアプリで headset をサポートするには、通常はデバイスベンダーの専用 SDK 対応も必要です。Apple Vision Pro を除き、多くのベンダーは EasyAR の統合に必要なインターフェースやデータをネイティブ SDK で公開していません。↩↩