AR作成でハマった備忘録

この記事は約4分で読めます。

 趣味で作っているARで苦労したポイントを備忘的に記録しています。主にA-Frameです。「とりあえず解決した」程度のものですので、あまりアテになさらないように。

A-Frame関連

アニメーションが動かない

<a-animation>はA-Frame0.9.0で廃止された。

ARが揺れすぎる

<a-marker>に以下のsmooth属性を設定する。smoothThresholdがsmoothToleranceを下回るとARは静止するとのことだが動くときは動く。正直、効果がわかりにくくてチューニングしにくい。

  • smooth=“true”
  • smoothCount=数値
  • smoothTolerance=数値
  • smoothThreshold=数値

他にもARマーカーに問題がある場合も。

  • マーカーが不鮮明(解像度とコントラスト)
  • マーカー画像が回転対称や同一パターンでできている
  • マーカーの大きさに対してオブジェクトが大きすぎる

particle-system-componentが動かない

A-Frame1.4.0では動きませんでした(2023年10月時点)。1.3.0を使いましょう。

aframe-physics-systemが動かない

ネットでは古いバージョンのA-Frame(0.8.0とか)でしか動かないという情報が多いけど、以下にあるバージョンならA-Frame1.4.0でも動いた(2024年2月時点)。

https://github.com/c-frame/aframe-physics-system/blob/fa6c457f778cfb341b1d7ce15e1d5d96e2c1efaa/dist/aframe-physics-system.js

オブジェクトの配置を好きな角度から確認したい

ブラウザで当該シーンを表示している状態でAlt+Ctrl+iで空間が表示される(Visual Inspector)。

  • マウスホイール:前進・後退
  • 左ドラッグ:上下左右旋回
  • 右ドラッグ:上下左右移動
  • オブジェクト左クリックで位置や角度、寸法も編集可能

オブジェクトをテキトーに配置し、Visual Inspectorで位置とか角度を調整してから、そのエンティティのHTMLソースをコピー(画面右上のCopy entity HTML to clipboardをクリック)すると楽。

カメラを固定したい

固定したいエンティティをカメラエンティティ<entity camera>で囲む(子要素にする)。look-controlsを入れていると、dynamic-bodyはモーションセンサー(旋回)の影響を受けてしまう。

HTML関連

サイトアクセス時にWebcamErrorが出る

 Webcam Error Name:Message:WebRTC issue-!
Navigator.mediaDevices not present in your browser

作ったサイトへのアクセスがHTTPの場合に出る。HTTPSにすると解決する。

3D関連

オブジェクト(OBJやGLBファイル)を差し替えても反映されない

 FTPでOBJやGLBを上書きアップロードしたのに、サイトを閲覧しても3Dの内容が更新されていないことがある。これは<a-assets>にキャッシュ機能があるため。

 一度FTPでサイト上のファイルを削除して、ブラウザでサイトにアクセスしてからFTPで再度アップロードするとよい。

blenderで作成したアニメーションが動かない

  • OBJファイルはメッシュ情報のみで、アニメーションを含めることができない。GLBで。
  • アニメーション付きGLBの再生にはA-Frameのanimation-mixerコンポーネントが要る。
  • blenderのパーティクルアニメーションはGLBでもエクスポートできない。
  • GLBエクスポート時のオプションで「Force sample animations」をONにすること(Blender2.79でのお話)。Windowsなら「3D Builder」で動くか動かないかを確認するのが手っ取り早い。

blenderが起動しない

「Unsupported Graphics Card or Driver」と表示されるならPCのグラフィックカードが古いのが原因。

 グラフィックカードを新しくするか、blender2.79を使いましょう。それでも私のような初学者には十分です。

 Mesa3Dを使えば無理矢理動かせますが。

マテリアルが反映されない

blenderのCyclesレンダーはなぜか反映されない。blenderレンダーなら反映される。

Blenderでエクスポートするとテクスチャが消える

たぶんバージョン2.79のバグ。2.83では起こりませんでした。

タイトルとURLをコピーしました