プラットフォーム

MeshAR の構築方法

順番に 3 つのステージ。それぞれについて、それが何をするのか、あなたに何を必要とするのか、そして正直な限界はどこにあるのか。

ステージ01

取り込み — メッシュか CAD か

まったく異なる 2 つのソースが同じ場所に行き着きます。GPU 上の三角形と PBR マテリアルが、glTF/GLB としてパッケージ化されます。そこに到達すること自体は概念的に難しくありませんが、細部の作業が必要です — 単位(機械系 CAD はミリメートル、Unity はメートルで、まず 1000 倍の違いに気づくでしょう)、上方向の軸と座標系の向き、デザイナーが残した場所のままのピボット、そして携帯電話が描画できる量を桁違いに上回るポリゴン数です。

収束しないのはセマンティクスであり、それがプラットフォーム全体の構造上のポイントです。 CAD アセンブリには、パーツ、サブアセンブリ、変換行列を含むインスタンス、パーツ番号などのグラフがすでに含まれています。メッシュには、せいぜい、エクスポートした人によって決定されたノード名の階層が含まれています。この差額は下流では回収できません。

セマンティクスは 2 つではなく 3 つのレベル

派生

CAD から抽出: アセンブリツリーはすでにファイル内に存在します。信頼性は高い — デザイナー自身のデータだからです。これはクラス C の前提条件であり、代替できません。

従来の

宣言されたルールに従って作成されたメッシュ: 規則に従ったノード名、glTF エクストラ、マテリアルバリアント。それをエクスポートした人の規律と同じだけの価値があります — そしてそれこそが、実際にコンフィギュレーターが動作する土台です。

なし

任意のメッシュ: 写真測量、マーケットプレイスのダウンロード、フリーハンドのエクスポート。部屋に物を置くのに最適です。その内部のコンポーネントをアドレス指定することはできません。

ステージ02

ローカライズ — 唯一共通する段階

実装としてではなく、インターフェイスとして一般的です。 3 つのクラスには異なるアンカー戦略が必要であり、互換性はありません。構成者にとって正しいものは、概念的にはガイド付き訪問にとって間違っています。

使用中の戦略

  • 平面検出+タップ

    クラスB

    ユーザーがその場所を選択します。構成者にとって、これはフォールバックではなく正しい答えです。問われているすべての質問は、 それが自分の部屋に適合するかどうかです。

  • 物理マーカー

    クラスC

    既知のオフセットでマシンに貼られたステッカー。安価で堅牢で、ハイライトを隣のコンポーネントではなく適切なコンポーネントに着地させるのに十分な精度を備えています。

  • モデルターゲット

    クラスC

    自身の 3D モデルからオブジェクトを認識し、それ以外は何も適用しません。剛体で特徴的な形状には非常に有効ですが、滑らかで対称的、あるいは反射性のある面では精度が落ちます — これは多くの産業機械に当てはまるため、手動での位置合わせは初日からフォールバックとして維持されます。

  • 地理空間 / VPS および手動調整支援

    クラスA

    何かが実際に立っていた実際の場所に置かれなければならないコンテンツの場合。ここでユーザーのタップは概念的に間違っています。訪問者は壁がどこにあったかを知りません。これは、3 つの問題の中で最も難しいローカリゼーションの問題です。

ステージ03

プレゼンテーション — クラスが分かれる場所

共有されるベースラインは決して単純ではありません: 深度オクルージョン、信頼できる接触影、光の推定こそが、“画面に貼り付けられたモデル”と“部屋の中にある物体”を分けるものであり、これは 3 つのクラスすべてにとって重要です。そのベースラインより上では、3 つの分岐はほとんど何も共有しません。これは抽象化の欠如ではなく、むしろ正しい結果です。

クラス A — アニメーションガイド

リギングされたキャラクター、アニメーションのライブラリ、そしてどれを再生するかを選択する決定レイヤー。 AI がセリフとジェスチャーを選択します。ボーンごとにモーションを生成するわけではありません。空間内の動きは、ループ内のネットワーク呼び出しなしで、フレーム レートでローカルに実行されるステアリング動作です。

クラス B — コンフィギュレーター

AR アプリの外部に存在するアプリケーションの状態にバインドされた、ランタイム バリアントとマテリアルのスワップ。アプリはコンフィギュレーターのビューになるため、これはグラフィックスの問題ではなく、アプリケーション アーキテクチャの問題になります。

クラス C — 手順

ノードのセットに対して順序付けられたステップによる、分離、ゴースト、分解、ハイライト。これにはステージ 1 のセマンティック グラフが必要で、忠実度ではなく読みやすさを重視して最適化します。つまり、どの部分がどの順序で美しいレンダリングに勝るかを知るためです。

測定

測定ベンチは製品の一部です

ドリフト、復帰時間、光の条件、有効距離は、一度実行すれば終わるチェックリストではありません。これらは計測項目です: すべてのクラスのすべてのローカライズ戦略が、同じ物差し — で測定され、“それは保持されるか?”という問いに、印象ではなく数値で答えます。

  • ドリフト — 2 分後の中央値は約 2.7 cm

    非常に異なるシーンにわたり、6 回中 5 回が 2.6~3.7 cm という有効な結果でした。この幅は驚くほど狭く、ドリフトはシーンに対して頑健であり、光の条件が判定を動かすことはありません。しきい値は事前に固定されていました — 2 cm 未満なら純粋な視覚アンカリングだけで修復手順に耐えられ、2~10 cm ならコンフィギュレーターには快適で、手順には物理的な参照が必要になる、という意味です。結果は中間帯に収まり、プラットフォームはそれに合わせて構築されています。

  • 収束 — 最初の 1 分間は信頼できない

    4 回の別々の実行で確認されました。配置後の最初の 10 ~ 48 秒で 8 ~ 19 cm のピークがあり、その後安定した値まで下がりました。精度が必要なものはすべて、それに基づいて設計する必要があります。これは制約であり、修正すべき欠陥ではありません。

  • 復帰 — 姿勢は保たれるが、待ち時間が問題

    3 回のトラッキング喪失サイクルを通じて、ドリフトは平坦なままでした: アンカーは元の場所に戻ります。最悪のケースでは 25 秒の待機が発生しましたが、これはトラッキングの問題というより UX の問題です — この区別は保つ価値があります。修正すべき場所が異なるからです。

  • 有効距離 — 20 から 25 メートル

    鮮明で再現可能なしきい値。その原因は、追跡が失敗するのではなく、オブジェクトが読み取れなくなることです。追跡状態はそれをはるかに超えて保持されます。これはコンテンツのサイズに関する質問であるため、実際のアセットを使用してプロジェクトごとに再測定されます。

Samsung SM-S711B、屋内および屋外で 7 回実行、2026 年 8 月。

限界

MeshAR ができないこと

お互いに電話をかける手間が省けるので、休憩の前に読む価値があります。

  • 自分が足を踏み入れた世界を認識しない

    カメラがたまたま見たものを何でも説明するガイドは、そこに存在しないものを自信満々に説明してしまう最も速い方法です。MeshAR は認識を位置情報に置き換えます: 自分がどこにいるかを正確に把握し、厳選された地図を読む、という方式です。これは事前にマッピングされた場所 — 住宅、美術館、特定のショールーム — では機能しますが、“電話をどこにでも向けて、見えているものを説明する”という用途には一般化できません。定義された場所においては、それが妥協ではなく正しい解決策です。

  • ネイティブのオートデスク形式にはコストがかかります

    ニュートラルな CAD — STEP、IGES — はライセンス費用ゼロでカバーされます。DWG と RVT には商用コンポーネントが必要で、それは見積もりの中で細部ではなく構造的な項目になります。実際にプロジェクトで必要になった時点で対応します。

  • Android / ARCore がデフォルトのターゲットです

    iOS 対応はプロジェクトごとの判断であり、前提とはしません。AR Foundation は共通部分を抽象化しますが、Depth API によるオクルージョンと LiDAR によるオクルージョンは同じ機能ではなく、一部のローカライズ戦略は 2 つのプラットフォームで利用可能性やライセンスが異なります。コンフィギュレーター — つまり販売ツール — にとっては、事前に決着をつけておく価値のある問題です。

部屋に置きたいものを教えてください

スキャンされた会場、製品カタログ、メンテナンスマニュアル付きの機械。最初に役立つ質問は、常にそれが 3 つのクラスのどれに分類されるかです — それにはメール 1 通あれば十分です。

連絡する →