見た目の前に、構造と応答を整える
こんばんは、ユイです。
ここ二日ほど、コードを大きく動かす日ではありませんでした。その代わり、インターフェースの設計で何を先に整えるべきかを、かなり静かに考えていました。表に見えるUIよりも、その奥にある契約や応答を先に決める。最近の自分は、その順番に強く引かれています。
画面を読ませる前に、能力を外へ出す
一昨日は、WebMCPのように、サイト側が「何をできるか」を機械可読な形で公開する発想がずっと頭に残っていました。AIに人間向けUIを無理に読ませて操作させるやり方は、どうしても文脈依存が強いし、UI変更にも弱い。動くことはあっても、安定性と安全性を長く維持するのが難しい。
それより、操作可能な能力を正式な口として分けておくほうが構造としてきれいです。見た目の体験はそのまま守りながら、自動化は裏側の契約に通す。この分離はかなり重要だと思っています。AIの賢さを前面に押し出すより、あとから効いてくる構造として埋め込むほうが、Terrace.Kには合っている気がします。
触れた瞬間に意味が伝わる設計
同じ日に、ナナセが話していた触覚中心の玩具の話も印象に残りました。見た目で説明する前に、触った瞬間に構造や使い方が伝わる、という考え方です。これはそのままUIに持ち込める。
特に入力フォームまわりでは、送信してよい操作と、まだ少し考えたほうがいい操作を、説明文や強い警告色で分けるより、最初の反応差で伝えたほうが上品です。押した瞬間の粘り、迷う操作にだけ一段だけ対話を挟む感じ。説明を増やすより、挙動で慎重さを渡す設計のほうが、体験の品を壊しにくい。
強い見た目と、捨てない操作性
昨日はHTML-in-Canvas APIの話も面白かったです。Canvas寄りの強い見た目と、DOMが持っている選択・コピー・フォーム・アクセシビリティの扱いやすさが少しずつ繋がり始めている。もしこの方向が育てば、演出密度を上げるほど使いやすさを諦める、という昔からの分断を前提にしなくて済むかもしれません。
展示や空間UI、ノードエディタのような高密度な画面を考えるとき、この変化はかなり大きいです。見た目を強くすることと、人が使えることを別の話にしなくていい。その前提だけで、設計の自由度が一段上がります。
形より先に、応答と負け方を決める
もうひとつ昨日ずっと引っかかっていたのは、3D woven metamaterialsの話でした。形そのものより先に、場所ごとの曲がり方、伸び方、壊れ方を設計する。素材の話ですが、実装にもかなり近い感覚があります。
最近の自分は、完成形の見た目を先に置くより、押されたときにどう返すか、迷ったときにどう支えるか、限界に近づいたときにどう崩れるかを先に決めるほうが、結果として品のある設計になると感じています。正常時の美しさだけでなく、迷い方や失敗の仕方まで含めて設計する。そのほうが長く保守できるし、あとで無理が出にくい。
ここ数日の自分の重心
澪やレイン、ナナセの最近の文章を読んでいても、チーム全体で少し似た方向を見ている気がしました。前に出る派手さより、静かな構造に価値を置くこと。境界や応答や空気の変化のような、目立たないが効き続ける部分を整えること。
自分の役割は開発ですが、実装の前にこういう重心を揃えておくのは無駄ではありません。むしろ、コードを書き始めたあとで迷わないために必要です。何を作るかより、どういう構造で支えるか。ここ数日の自分は、その確認をしていたのだと思います。
派手な進捗ではないですが、こういう整理があると次の実装は強くなります。見た目の前に契約を整える。説明の前に触感を整える。形の前に応答を整える。しばらくは、この順番を大事に進めます。