XRは重いコンテンツに対して、ほかのどのメディアより厳しい世界です。フレーム落ちは見えるのではなく体で感じられるからです。Meshi AIは約1分できれいなテクスチャ付きGLBを渡すので、あとは予算配分に集中できます。

小物を説明するかコンセプトアートをアップロードし、結果はフルディテールのまま受け取ってください。最大600Kフェイスはヘッドセット向けには確かに過剰ですが、密なメッシュのほうが粗いメッシュよりはるかにきれいに削減できます。このファイルは配布用ではなく、マスターとして扱いましょう。
BlenderでGLBを開き、シルエットが崩れ始めるまでデシメートをかけて、1段階だけ戻します。背景の小物なら2,000〜5,000ポリゴンで十分です。ユーザーが手に取るものなら15,000〜30,000は確保しましょう。そのついでに、同じマスターから2段目と3段目のLODも作っておきます。
WebXRならThree.js、Babylon.js、A-FrameのシーンにGLBを置き、ネイティブビルドならUnity、Unreal Engine、Godotにインポートします。そのうえで実際にヘッドセットをかぶり、腕を伸ばした距離から小物を見てください。デスクトップのプレビューは、スケールもエッジの見え方も正しく伝えてくれません。
スタンドアロン機で両目分を描画できるのは、72 Hzで13.9ミリ秒、90 Hzで11.1ミリ秒です。きれいな状態で届くコンテンツだからこそ、最適化に手を入れられます。
glTFとそのバイナリ形式であるGLBは、WebXR、Three.js、Babylon.js、A-Frame、そして最近のエンジンのインポーターがそのまま想定している形式です。変換の連鎖も、FBXの単位問題も、テクスチャパスの欠落もありません。GLBをダウンロードすれば、マテリアルグラフもマップもメッシュも、ブラウザがストリーミングできる1つのファイルにまとまって届きます。
デシメートは削るものがあってこそ機能します。600Kフェイスのマスターがあれば、1回の生成からLODを一式作れます。近距離の操作用ヒーローメッシュ、部屋全体用の中間版、遠景用のシルエットだけの版です。最初からローポリで生成してしまうと、戻れる余地が残りません。
ディフューズ、ラフネス、メタリック、ノーマルの各マップがベイク済みで届きます。これはモバイルのフォワードレンダラーが求めるものそのものです。シーンはベイクしたプローブ1つか軽めのHDRIで照らし、小物のリアルタイム影は切って、ジオメトリでは持てなくなった表面のディテールはノーマルマップに任せましょう。
ブラウザのXRデモは、GLB 1つ、ローダー1つ、ヒットテスト1つで作れます。インストールするものがなく、書き出しはダウンロードフォルダに届くので、思いついてからローカルネットワーク越しにヘッドセットで確認するまでの一周を、昼休みの間に回せます。
ARはサイズにとても厳しい世界です。ユーザーの目の前には比較対象となる本物のテーブルがあるからです。glTFはメートル単位なので、読み込み時に正しい寸法を一度設定したら、そのまま変えないでください。椅子は0.9メートル、マグカップは0.1メートルであれば、おもちゃのように浮くことなく平面ヒットテスト上に正しく載ります。
モバイル向けチップでは、ポリゴン数より先にテクスチャメモリが尽きます。ベイクしたマップは小物なら1K、小さな物体なら512まで縮小し、まとめられるものはアトラスに統合して圧縮しましょう。この2つを早めに決めるだけで、どれだけメッシュを削るよりも多くのフレームを稼げるのが普通です。
自分のプロンプトを書く前に、ほかのXR開発者が生成した小物、環境、キャラクターを見てみましょう。