幼さ

本日撮ったエルの写真。

エルは今年の10月で10歳になるが
顔立ちには子猫時代の幼さがずっと残っている。


もちろん猫なので「全てわかっています」的な
達観した表情も見せるが、全体としては幼さが目立つ。
多分、ずっと変わらないんだろうな。

Pixarのリギングシステム

シーグラフ2022で発表されたジョイントを使用しないPixarのリギングシステム。
面倒なウェイト付けが全く必要ないらしい。

これをHoudini 20の目玉機能として実装して欲しい。
これがHoudiniに実装されたらHoudiniでキャラクターアニメーションをつくる人が
一気に増えるだろうな。

論文:https://graphics.pixar.com/library/ProfileMover/paper.pdf

食事中

人間が食事している間、エルはハンモックから
こっちを見ながら食事が終わるのを待っている。
(ノルウェージャンはしっぽが長いのでハンモックに収まらない)

そのまま寝ちゃいそう。

Houdini KineFX リギング

今回、HoudiniにKineFXが実装される以前に作成したロボットのリグを
KineFXにコンバートしてみた。

以前のHoudiniでは、リグはObjectレベルでBoneノードをベースに実装していた。
仕組みとしてはBoneノードの階層に対してCHOP内でIKチェーンを設定して
別階層のNullノードからIKチェーンのゴールをコントロールするやり方をとっていた。
この場合、ロボットのパーツはそれぞれBoneノードにペアレントする必要があった。

それに対し、KineFXが実装された今ではSOP内でそれらを全て実装できるようになった。
つまり、骨に相当するジョイント階層の作成や、IKチェーンの作成、リギング、
ジョイントに対するパーツのペアレント化などは全てSOP内で行うことができる。
また、KineFXはプロシージャルに階層内の親子関係の組み換えも可能なので、
いわゆる足の「リバースフット」の実装も比較的簡単に行うことができた。

KineFX作業動画

もう今後Boneノードを使用することはないだろうな~
(Houdini19ではObjectレベルでTabキーを押して”bone”と入力するとまだ作成できます)

ロードバイク

GWは天気がよかったので
東京湾沿いをロードバイクで30キロほど走った。

途中寄ったお店でピザをテイクアウト。
Mサイズのピザを2枚頼んで二人でシェアした。
かなり美味しかったのでまた来たい。


食べすぎたため、いつも帰りに食べているミニストップの
マンゴーソフトは今日はパスした。

銚子

GW中に銚子へ出かけた。

駅前でレンタサイクルを借りて海沿いを走る。
普段はロードバイクに乗っているので
このタイプの自転車に慣れるまでには少し時間がかかった。

途中寄った神社で見た藤の花。見頃は少し過ぎていた。

銚子の太平洋の海。いつ見てもいい。


浅瀬でぼーっとする。GW中なのにあまり人影が見えない。

銚子といえば海の幸。今回も海鮮丼を食べた。
マグロが美味しかった。

Houdini FLIP その8

引き続きHoudini FLIPのR&D。

前回、ロボットが上昇しながら海面に出てくるFLIPシミュレーションを行ったが
今回はサメのジャンプモーションで作ってみた。

サメのモーションはRBDとBendデフォーマーのハイブリッド手法で作成。
まずサメの凸状態のメッシュをプロキシとして作成し、RBDで放物運動を作成。
その際、VEXを使ってY<0領域では急激にRBDにかかる空気抵抗を上げることで
海中のゆっくりとした動きを表現してみた。

そして、RBDの位置・姿勢情報をサメのジオメトリにコピー。
その後、VEXを使って放物運動の最高地点でベンド量が最大になるように調整した。

レンダリングはFull HDサイズで行いThreadripper3970xのマシンで
ほぼ1日かかった(240フレーム)。