見出し画像

漫画制作用のプロットエディターをChatGPT-4oと作った話。

 漫画のプロット制作作業向けの、プロットエディターを作った。

 GitHubで公開しました。



 オフラインで使用したい場合、こちらからダウンロードできます。
 (リンクを開くと、右上の「共有」の横に、下向きの矢印があります。それがダウンロードボタンです。そこを押して、zipファイルをダウンロードしてください。ダウンロードしたzipファイルを解凍して、index.htmlをダブルクリクして実行してください。) 

 簡単な使い方の図。
 「元に戻す」「やり直し」は、想定した動作と違ったので後から削除した。

使い方の図

 極めてシンプルなエディタなので、実際に試してもらうのが早いと思う。



 iOSでも使えます。また、Safariで開くことを経由して、ホーム画面に追加できます。

 iPadなどで、こちらのリンクを開く。右上のコンパスアイコンから、Safariで開く。「ホーム画面に追加」を選ぶ。
 アプリのように、GitHubページへのブックマークが表示されます。

ホーム画面に追加

 iOSでもドラッグ&ドロップが動きますが、ちょっと待機時間があります。


制作の意図


 漫画のプロットを書く時、どうにも、しっくりくるエディタがなかった。

 プロット作りは、いくつかの要素が複合している作業だ。自分の作業を振り返ると、以下の四つに分類できた。

アイデア出し:雑多なアイデアを脳みそからひねり出しメモする。
プロット組み:アイデアをプロットにまとめ、あれこれと推敲する。
ページ割り:プロットをページごとに配分する。入れ替えが多数発生。
セリフ出し:ページごとにセリフを書きだす。後でコピペしたい。


 アイデアを雑に書きつけるのは、メモ帳でいい。というか、メモ帳以上の機能があっても余分だ。

 一方で、プロットを組む時には、起承転結や作中のイベントの管理が必要になる。これもメモ帳でギリギリできるが、足したり削ったり、入れ替えたりの作業があるので、「付箋メモ」のような機能があるとうれしい。

 ページ割りは、もっと足したり削ったりが頻繁に発生する。ページ番号がないと全体像がわかりにくいが、一々、ページ番号を記述するのは、入れ替えた時に面倒だ。

 セリフは、最も扱いに困る。私が主に漫画制作に用いる「Clip Studio Paint EX」には、セリフのテキストを一括管理する「ストーリーエディター」という機能がある。そこにセリフをまるごとコピペしたいのだが、「ストーリーエディター」には、「一行空けのセリフを別のセリフとして扱う」というルールがある。つまり、

あっ…。

なに?

あ、いや……鳥が横切ったから。

ああ……
あの鳥はカササギだ。

セリフ例

と、いったように、ごく短い会話テキストでも、改行を連発することで、やたらと縦に長くなってしまう。これは、メモ帳だと非常に扱いにくい。

 ページ数が増えれば、セリフも増える。プロットで書いたセリフをストーリーエディターにコピペするのも一苦労だ。

 全体として、「複雑な編集機能は必要ないが、ツリー構造を持っていて、付箋のように自由にテキストが入れ替えでき、ページ番号を自動で振り、セリフのみを1行空けた.txtで出力できるエディタ」が欲しい、ということになる。しかし、そんなエディタは、私の探した限りでは、存在しなかった。なので、作った。


 制作過程

 主に、ChatGPT-4oにコードを書かせてつくらせた。
 まず、手描きの仕様書を見せて、指示をした。

 指示。

『こんにちは。漫画のプロット制作に使えるウェブアプリを開発したいです。まずは簡単に説明させてください。
 漫画を描くときには、ストレートに話の構成ができることはほとんどありません。大抵、あれこれと様々なアイデアを出しながら、苦労して話を考えていきます。そして、最終的には、「〇ページにどのようなことが書いてあるか」と、「そのページに書かれたセリフ」が漫画プロットの完成形になります。
 このような作業は、普通のテキストエディターではとても難しいです。私は、ダイナリストというアウトライナーアプリを使うこともありますが、やはり、便利とは言いがたいです。
 そこで、漫画制作に特化した、推敲用のウェブアプリを開発したいので、手伝ってほしいです。ここから、具体的な要件を述べます。ここまではよろしいですか?』

 返答。

「こんにちは。それはとても興味深いプロジェクトですね。漫画プロット制作に特化したウェブアプリの開発は、多くの漫画家や作家にとって大変有益だと思います。具体的な要件を教えていただければ、どのようにお手伝いできるか提案させていただきます。続けてください。」

 追加指示。

『はい。アプリのイメージを述べます。「左から、大づかみにアイデアを書く→それを細分化していく→1ページ1ページにまで細分化する→セリフをそれぞれのページにつける→セリフだけ、漫画ソフトで使える形でダウンロードできる」こんなイメージです。

 図にします。(ここで仕様書をアップロード。)

仕様書

 親子関係のある複数のエリアに分かれています。一番左は、アイデアのエリアで、作家は自由にここにアイデアを記します。このボードは、分割されない一個のボードです。
 いいアイデアが浮かんだら、右の「プロット」エリアに、プロットのボードを新規作成します。ボードには「導入」「エンディング」など、名前をつけたり、順序を入れ替えたり、ボードを任意の場所で切断して二つに分けたり、合体させたりできます。
 プロットエリアの子になるボードが、「ページ」のボードです。ページのボードでは、そのページに書かれていることを言葉で書きます。理屈上では、ページのボードが最後まで埋まれば、プロットが完成します。このボードも入れ替えたり、親ボードをつけかえたりできます。
 そして、ページのボードの子になっているのが、セリフのボードです。セリフは、まとめて一つのtxtファイルで出力することで、漫画制作ソフトで簡単にセリフを入れることができます。
 イメージとしては、ツリー管理される自由度の高い付箋メモソフトという感じです。どうでしょうか?まず、実際のコードの前に、実現可能性についてだけ、教えてください。』

返答

「HTML、CSS、およびJavaScriptをベースにしたWebアプリとしての開発は十分に可能です。以下に、各要素の実装方法と全体的な構造について簡単に説明します。」

ChatGPT-4oがコードを書いてくれた

 

 ……が、最初から指定通りのものが作られたわけではなかった。

 最初のコードでは、こんな結果だった。

最初のコード

 これに対して、あれこれと指示をして修正してもらい、機能を追加したりけずったりしながら、完成させた。


 振り返ると、手描きの仕様書の内容が反映されていなかったので、字が汚すぎて読めなかったのではないかと思う。 

 作るのに、丸一日かかった。半分ぐらいの時間、コードの書き出しを待っていた気がする。修正部分だけ出力してもらおうともしたが、素人の自分には理解できない理由で不具合が頻発したので、結局毎回、全部のコード(500行ぐらい)を書かせていた。絶対、もっと良い方法があったと思うが、自分にはわからなかった。

感想


 あくまで、「クリスタで漫画を描いている人向け」という限定的な用途ではあるが、とても使いやすいものができたと思う。

 実は、このエディタを作る前段階として、一週間前に、Fanzaの同人漫画のデータを集めて、統計を取ろうとしていた。恐ろしいことに、最初は手動でデータを足していた。

 その時に、コードを使って集めるべき、と友人にアドバイスされた。自分は原始人だから、こうやってこん棒を振るしかないんだ、と返事をしたものの、ChatGPT-4oを使えばできるかもしれない、と思った。

 友人の書いてくれたサンプルコードをベースに、ChatGPTにコードをどんどん発展させて、作品情報を収集するプログラムを作った。最終的には10年分、9,3000作品のデータを集めることができた。

 
 自分は一切、プログラミングの知識がないし、コードも読めない。ホームページやブログを弄ったことがあるので、かすかに、htmlとcssの知識はある。jsは、自分にとって魔法の呪文と同じだし、PythonやらNodeJSやら、何をやらされているのかわかっていない。

 それでも、ChatGPTに要望をだして、返ってくる指示に従って作業すると、それなりに目的としていたものが作れる、というのは、嬉しい体験だった。

 今後も、ChatGPTなどを使って、同人漫画制作に役立つものなどを作っていけたらいいな、と思っている。

 今回のツールについて説明した配信。


この記事が気に入ったらサポートをしてみませんか?