ソファのアセット構想
すごいことを思いついた!日替わりで形が変わる椅子なんてどうだろう。図書館の館長をしていた人物が書いた本に、図書館のインテリアとして色分けされた椅子をさまざまに並べ替えるアイデアが書かれていたのだが、そこから着想を得た。カラーユニバーサルデザイン推奨配色セット のベースカラー 7 色と 4 方向の向き、4 つのカーブを描く椅子で構成されていて、4 × 4 × 7 = 112 通りに変化する。UTC の日付が変わったタイミングで変化するのだ。タイムゾーンを考慮してもいいが、めんどくさいし計算が増えそうなので取り敢えずコンセプトを形にしてみたい。
さて、椅子というかソファの 3D モデルが必要になるわけだが、少し紙とペンで設計してみる。プラレールの曲がるやつと言えば良いだろうか、ドーナツを 4 分の 1 したような形をしている。仮に高さを 30cm と決め打ちしてみよう。奥行きは倍の 60cm にしよう。ドーナツの内側にふたり座る。内側、要するにドーナツの穴の円周だが、ひとり 60cm として、2 人座るので倍の 120cm だ。
120 × 4 = 480 ということで、円周 480cm の円を扱うことになる。円周 = 直径 × 円周率なので、計算すると直径は 152.8cm だ。半径にして 76.4cm。
これで椅子の大きさを決めることができた。(76.4 × 2) + 60 ということで、212.8cm 四方だ。その大きさのブロックから、幅 60cm の虹型を切り出す。これが椅子になる。4 つ並べて、おのおのいろんな向きを向く。
日付から決定論的に向きが決まり、日替わりで回転する。色もそうだ。色覚多様性を持つ人でも見分けやすい、カラーユニバーサルデザインのベースカラー 7 色の中から決定論的に選ばれる。日付だが、ローカライズが面倒だ。ひとまず UTC で決め打ちしてしまおう。インスタンスに join したとき日付を取得しておいて、update 内で監視しておけば検知できるはずだ。
おや、けっこう良い感じではないだろうか。