---
title: クリエイターのためのGNU的なるものを作りたい
date: 2025-10-27T14:53:45.102Z
updated: 2026-01-08T14:51:05.458Z
url: https://baku89.com/ja/%E3%82%AF%E3%83%AA%E3%82%A8%E3%82%A4%E3%82%BF%E3%83%BC%E3%81%AE%E3%81%9F%E3%82%81%E3%81%AEGNU%E7%9A%84%E3%81%AA%E3%82%8B%E3%82%82%E3%81%AE%E3%82%92%E4%BD%9C%E3%82%8A%E3%81%9F%E3%81%84
---

# クリエイターのためのGNU的なるものを作りたい

![](https://wp.baku89.com/wp-content/uploads/2025/10/image-4.png)

[久保田晃弘](/%E4%B9%85%E4%BF%9D%E7%94%B0%E6%99%83%E5%BC%98)先生が、クリエイターやデザイナーが目指せる[工芸でも現代美術でもない第3の道](/%E5%B7%A5%E8%8A%B8%E3%81%A7%E3%82%82%E7%8F%BE%E4%BB%A3%E7%BE%8E%E8%A1%93%E3%81%A7%E3%82%82%E3%81%AA%E3%81%84%E7%AC%AC3%E3%81%AE%E9%81%93)としてそっとお話されていた「GNU的なるもの」というアイディアが忘れられない。

ぼくも必要だと思う。というか、プログラマにとっての開発者ツールや、研究者にとってのPython、R言語、LaTeXのように、映像作家やデザイナーの道具立ても、公共化されてもいい時期なんじゃないかって思う。[Adobe製品の限界も近い](https://note.com/swwwitch/n/n132bd0f9ccfd)し。3DCGやVFXの世界は事実そうなり始めている[1](#user-content-fn-vfx)。

人類には、ベジェ曲線を操作するためのユーティリティも、素敵カラーピッカーも、JAGDAやTDC界隈みたいな豊かなグラフィック表現を可能にするライブラリも、圧倒的に足りていない。別に「打倒Adobe」とかそういうんじゃない。けど、そういうレディーメイドな道具ではカバーできないような表現の裾野を探索したいモノ好きな制作者が、自分自身の絵筆を[道具鍛治](/toolsmithing)するための、ほどよい抽象度のツールキットはこの世界に必要。

これは、映像作家としての[baku89#icon](/baku89#icon)とはまた別軸の、ちょっとしたライフワークかも。

- プロジェクト名は適当に決めたいな。再帰的頭字語で。
- 線形代数ライブラリからグラフィックライブラリまで、少しずつブートストラップしていき、その頂点には制作アプリが来る
- 最終的には個々の機能を[可鍛可能](/Malleable_Design)にし、さらに汎用的なグラフィック・モーショングラフィックスアプリとして抽象化したい
- **戦略**: ライブラリは寛容的ライセンスで。アプリはコピーレフトで。

### アプリケーション（GPL）

- **[Koma](/koma)**: コマ撮りアプリ。けどこれって単にCapture Oneとかみたいな、テザー撮影アプリとかに汎用化していけるんじゃないかって思う。
- **[Unim](/unim)**: [「かむかもしかもにどもかも! (imai remix)」](/kamukamo)のためにワンオフで作った

### ライブラリ（MIT）

- **[Linearly](/linearly)**: 線形代数
- **[Pave](/pave)**: スプライン操作
- **[Geome](/geome)**: 幾何学ライブラリ。当たり判定や、三角形の外心などの計算。
- **[Fanvas](/fanvas)**: 宣言的なグラフィック描画。WebGL, SVG, Gコードなど、さまざまなレンダーエンジンを提供
- **[Glisp](/glisp)**: 制作ツールを[End-User Development](/End-User_Development)可能にするための、基盤となるLisp言語。プロジェクトファイル、スクリプティング、エクスプレッション、環境設定などに一貫して使用される。普段はその構文木がそのままVue.jsなどのコンポーネントに流し込まれたり、[Direct Manipulatable](/direct-manipulation)なビューポート操作をサポートすることで、S式そのものはカジュアルユーザーから隠蔽されている。GUI上ではある種のビジュアルプログラミング環境としてラップされている。
- **[Tweeq](/tweeq)**: クリエイティブアプリケーションのための、さまざまなパラメーター型のためのインプットや、マイクロインタラクションを実装したウィジェット集。
  - _`v1.0`からGPLでも良いと思っている。_
- **[Gcnc](/Gcnc)**: CNC（3Dプリンタ、ペンプロッター等）をWeb技術（WebSerial等）で制御。
- **[Bndr](/bndr)**: キーボードショートカットやMIDIデバイス、ゲームコントローラーなどのHIDデバイス、OSCやカメラなどの入出力を、アプリ内のアクションのトリガーやパラメーターにアサインするための統合的なライブラリ。今は独自実装だけど、[RxJS](https://rxjs.dev/)の拡張にしてあげたほうが汎用性が高いかもしれない。
- **[Tethr](/Tethr)**: [Picture Transfer Protocol](/Picture_Transfer_Protocol)のWebUSB実装。ウェブカムもサポート。将来的にはEthernet越しの監視カメラにも使えるかも。

## Footnotes

1. Blender, OpenEXR, Universal Scene Descripter (USD), MaterialX, OpenFX [↩](#user-content-fnref-vfx)
