インタラクションのモジュラー性
体験の切り貼り
https://speakerdeck.com/clustervr/cedec2022-xyx-3ddetawochi-tiip-merucross-platformmetabasunoji-shu-de-tiao-zhan
世界は木構造かフラットか
Unityのようなgame engineやDCCはtransform treeを持ちがち
階層的組み立て・FKを前提にした、計算の簡略化
階層的組み立て自体の理解しやすさ・再利用性 (e.g. prefab)
木構造は理解しやすい
クラフトゲームはフラット構造を持ちがち (minecraftとかfactorioとか
なぜ?
仮説
木構造はプロツールっぽいUIになるのでおもしろくない
木構造の何らかの特性がゲーム性を損なう
e.g. exponentialな成長がlinearな成長に見えてしまう
適切に設計されたルール・物理法則はフラットな構造での創発を最大化する?
木構造は横方向の相互作用が弱い (無い)
横をシミュレーションすると負荷が厳しい
木という抽象化そのものが、横方向を切断することで成り立っている
物理法則をたくさんとると、木が一意に定まらない
e.g.
相互に固定されているオブジェクトのtree
依存性のtree
見た目的に意味のあるtree
宇宙の物理空間は空間階層を持たない
たとえば家は壁のパネルとか家具の組み合わせで成り立ってるとする
車で突っ込むのを考える
雑な木構造の実装は、家ごとふっとびがち
フラットにやっとけば、勝手に最大詳細度で再現される
前提として、全てのオブジェクトはプレーヤーが意図をもって置いている
プレイヤーの選択に対して、報酬を与える機会がある
木構造化は機会損失を発生させる
抽象によって選択が無意味になるから
図面と実態は異なる
図面は木構造でもよく見える
逆に、木構造は唯一の解ではなくなる
generative / ルールベース
なので、木構造UIの実装の大変さのわりに、得られるプレイヤーの効用が0~negative
物理世界が木構造に見えるのは人間の環世界
剛体を扱いやすい身体をしている
人間のスケールでは遠隔作用は弱いが弱すぎない
音・光
時間と空間と物理
剛体は圧倒的強度と、一見明確な境界面を持つ
剛体は光も音も遮断する事が多い
剛体を組み合わせて剛体で覆うことで、人間にとってのモジュラー性が高まる
木構造は理解しやすいはたぶんHLAIではないAGIにとってもそう
一石二鳥
基本的に、商品というのはデフォルトで内部が不可視である
内部が可視なのは修理する権利のアナロジー
ノウハウの集約による利益独占を許さない、コモディティ化せよという圧力
flattenする権利
不変性を要求するということ
リアル世界では常に不変
ファームウェアが入ってるとOTAで不変性が損なわれる
内部の不変性がモジュラー性を高めるケースとそうでないケースがある
物理的部品は不変であることでモジュラー性が高まる
受入検査が信頼できる
結合試験も信頼できる
逆に考えると、不変しか選べないので、不変が問題ない境界でしか認知されえない
まだ完成してないものを売ることはできない
ソフトウェアではそれができる
まだ完成してない物体の例
この箱には雑に作ったエンジンが入っています
高負荷を掛けると爆発します
半年後には多分動くようになります
経済メリットが少ない境界も選ばれない
ナットとボルトは別で流通するほうがよい
一方で、ナットの頭とねじは別で流通しない、長さがいろいろあるのに
強度というクリティカルなコントラクトが担保できなくなるから
売る側も買う側も、コントラクトに対して試験を行う
SaaSにはコントラクトの不変性と内部の不変性のトレードオフがある
売る側が自由に決めることができる
モジュールと扱えない
常に人間の開発組織というグルーで追従し続けないとシステムが崩壊する
SaaSのモジュラー性の無さ
オープンソースのライブラリは物理的商品に似ている