TECH SCAPE

AR関連多め(HoloLens, AzureKinect、SparkAR)

【SparkAR】耳に3Dモデルをつける

SparkARを勉強中です(10000フィルターつくるぞ!)

耳にピアス的なものをつける簡単なエフェクトをつくりたかったのですが、少しだけ工夫が必要だったのでメモしときます。

Gitリポジトリ

github.com

f:id:a_hancho:20200824175527g:plain

Libraryの 3D Objects から星をインポートして、耳に取り付けました。

FaceTargetTrakingの下にアクセサリーを二つ配置

f:id:a_hancho:20200824175753p:plain

faceTrakerの下に両耳に取り付けたい3Dモデルを2つ配置します。

f:id:a_hancho:20200824183129j:plain

すると鼻の位置に星が二つ来ます。

これらの 3D position を調整して両耳の位置にもってきてもそれっぽくなります。 しかし、顔の幅が人それぞれなため、すべての人の耳の位置にはなりませんでした。

ほほ骨基準で配置する

以下のようにノードを組むと、だいたい耳に配置できることがわかりました

f:id:a_hancho:20200824180400p:plain

  • FaceFinder -> FaceSelect : 顔を取得
  • Cheek(Left Cheekbone, Right Cheekbone) : ほほの位置を取得
  • Add : ほほ骨から耳の位置に微修正

補足 : HeadOccluderを追加

f:id:a_hancho:20200824183539p:plain

LibraryからHeadOccluderを追加することで、顔を傾けたときに耳のアクセサリーが隠れるようになるのでおススメです!

今回は以上です。