Glispとは?
https://glisp.app/docs_old/_media/screenshot.png
一言でいうと、めちゃめちゃ柔軟で色んな使い方ができる次世代のデザインツールを探求するプロジェクトです。橋本麦を中心に、コントリビューター、スポンサーの皆さんの協力の元、オープンソースとして開発を進めています。 現状はまだプロトタイプに留まっていますが、ゆくゆくは誰でも使えるベクターグラフィックスツールに発展させていくつもりです。baku89.iconが映像作家なのでモーショングラフィックス機能も加えられたら嬉しいです。
Graphical Lisp
Glisp は、その名の通り多くの機能が Lisp というプログラミング言語を基盤に構築されています。詳細は他の章に譲りますが、 Lisp はそれ自身がプログラムでありながらデータでもあるという性質を持っています。ですから、Glisp ではこの Lisp を、スクリプトに限らず、プロジェクトファイル、プラグイン、アプリケーション設定まで様々なデータ表現に用いることができます。そしてそれらは同時にプログラムそのものでもありますから、それぞれの機能をプログラミングと同等の柔軟さで改造できることを意味します。
こうした設計によって、Illustrator のような GUI ツールが持ち合わせる「直感的にちまちま手数を重ねる」やり方と、プログラミングが可能にする柔軟さ・自己改造性、そしてジェネレーティブ表現とのいいとこ取りができます。
機能をつくる機能
Glisp のもう一つ大切な設計思想が、機能そのものではなく機能をつくるための機能を提供するという原則です。ベクターグラフィックひとつとっても、どのアプリも具体的なジャンルや使途を想定して設計されがちです。Adobe 製品を例に挙げると、
InDesign: 製本
Illustrator: ポスターや図、イラスト
XD: UI/UX デザイン
といったように。こうした特殊化は、想定された使い方の範疇では最大の効率を発揮しますが、ひとたび妙な表現を試そうとしたとき、やけに面倒くさい操作が必要になることがあります。その上、用途に合わせて使い分けする手間もかかります。
一方、Glisp のアプローチは、とにかく「誰にどういう使い方をされるかを想定しない(不可知論的UX)」ということに尽きます。アーティストが描きたいのは抽象画かもしれないし、スマホアプリのモックアップ、はたまた間取り図かもしれない。Glisp はそれぞれの使途に合わせて具体的な機能を提供する代わりに、アーティスト自身がその目的に見合った機能を実装するための抽象化された機能を提供します。その一例が、丸や四角、多角形といったプリミティブを自由に定義できる機能です。下の例ではニコちゃんマークを定義しています。 https://glisp.app/docs/_media/smikey-primitive.gif
このように、好きなように改造を重ねることで、やがてその使い手のクセや目的や合わせて機能が「分化」していくのが Glisp の大きな特徴です。
展望
このプロジェクトの究極的な目標は、世の中のデザインツールを(作者の感覚で)マシにすることです。もちろん Glisp それ自体も便利なツールとして、世界中の制作者に使ってもらえるものになってほしいと願っています。ただbaku89.iconはツール開発が専門ではないので、こうしたツール設計の良さがみんなに理解してもらえて、 AdobeでもMaxonでも、普段お世話になっているソフトウェアベンダーに自由にパクってもらえればそれで良いとも考えています。
※ 本音を言ってしまうと、作者とコントリビューターの方々の分だけでもマネタイズする方法は探りたいです。この開発にもそれなりに時間が掛かってしまっているのと、クライアントワークを極力したくないので…。試験的にGitHub Sponsorsに登録していますので、ご支援お願いします。