コミュニティアイコン プチコン 非公式コミュニティ プレイ日記

アバター
おちゃめ ◆jH1opV6FnGyx
2017/11/12 21:56
新作QSP「簡易毛筆2 QSP」です。従来の「簡易毛筆QSP」では「入り」「抜き」が表現できていましたが今回はさらに紙に書いたような「にじみ」「かすれ」まで表現できるようになりました。アルファチャンネル対応でなめらかなにじみを再現できます。
QSP史上最強の毛筆ソフトです。(私以外にQSPで毛筆ソフトを作っている人を見たことがないけど)

コメント

アバター
おちゃめ 2017/11/12 21:58 ◆jH1opV6FnGyx
まずは、標準の「簡易毛筆2 QSP」です。
フォルダ「OCHA_QSP171112」の公開キーは【 EK2KN4QP 】です。この中からファイル名「1GQ_FD2」を実行してください。
ランチャーソフト「QSP MENU」(.MENU)から実行してもいいです。
アバター
おちゃめ 2017/11/12 21:59 ◆jH1opV6FnGyx
筆の太さはおなじみの十字ボタンの上下左右によって「細」「中」「太」「極太」を使い分けることができます。(十字ボタンを押している間だけ有効)
十字ボタンを押してない時は極細になります。
Rボタンを押している間はホワイト(消しゴム)になります。

毛筆で字を書いているようなイメージでゆっくり書くとそれっぽい文字が書けます。
タッチペンを動かす速さで太さが変わるためペンを離す瞬間だけ速くすると「はね」や「はらい」も表現できます。

セーブはXボタン、ロードは起動時に自動的に行われます。
なお、セーブは一時ファイル「GRP1:@」への上書き保存となるためお気に入り作品ができた場合は「簡易GRPビューア」(1GQ_GVEW)を使って別名保存しておくと良いでしょう。
アバター
おちゃめ 2017/11/12 22:04 ◆jH1opV6FnGyx
簡単に動作原理を説明しておきます。
前作の「簡易毛筆QSP」(1GQ_FUDE)では単純な円形ブラシを太さをコントロールすることで毛筆っぽさを出していましたが、今回はそれを超えてフルサイズ(QSPという制限がない作品)の「簡易毛筆」のように「にじみ」や「かすれ」も表現しています。
これは下記のようなドーナツ型のブラシによって行われています。
こうすることで「かすれ」や「にじみ」がより自然な感じになります。

ドーナツ型ブラシは私が考案したオリジナルのものですが、これは中心極限定理を利用しています。
要するに乱数を複数回発生させるとその平均値は正規分布に近づくわけです。
最大値の2分の1付近の値が出やすいためそれが結果としてドーナツ型になるわけです。

複雑なことをやっていて動作が重そうですが、実は前作よりも若干動作が軽いため旧3DSでも太筆までなら処理落ちなく60fpsで動作可能です。
前作はループにマージンを持たせすぎているため軽い処理の割りには重かったためです。(プチコン3号のお絵かきソフトのブラシでありがちな「ペンを速く動かしたら飛び飛びの円が表示された状態になる」というのを避けるため)
今作はブラシをランダムドットで表現しているためそこまでのマージンを持たす必要はないので重い処理の割りには動作が軽くなっているわけです。
アバター
おちゃめ 2017/11/12 22:05 ◆jH1opV6FnGyx
続いてアルファチャンネルに対応した「簡易毛筆2 QSP type B」です。
ファイル名は「1GQ_FD2B」
アバター
おちゃめ 2017/11/12 22:06 ◆jH1opV6FnGyx
基本的な操作は標準タイプと同じですが、こちらは半透明処理によってにじみが非常になめらかになっています。
比べれば一目瞭然だと思いますが、なぜこちらを「標準」にしなかったのかというとどう頑張ってもセーブ機能を付けることができなかったためです。

そのためセーブするには一旦中断してDIRECTモードでSAVE"GRP1:@"などを実行する必要があります。
KEY 5,"SAVE"+CHR$(34)+"GRP1:@"+CHR$(34)+CHR$(13)
としておけば、中断した後にF5でセーブができるため少しは楽になります。
キャンバスの初期化はホワイトでちまちま消してもいいですが、DIRECTモードでGCLS-1とすると楽です。

アルファチャンネル設定の変更もプログラム中の「C=G+(B>255)*96-32」の「32」と「96」の部分を書き換えることで行えます。
「32」の部分が毛筆ブラシのアルファチャンネル値です。主ににじみのなめらかさに影響を与えます。小さいほどなめらかになりますが全体的に薄くなりがち(ゆっくり書けばそうでもないけど)なので意図がない限りはそこまで小さい値にする必要はないと思います。
極細筆を使った鉛筆風の表現をしたい場合は8か16くらいにしておくと良いでしょう。

プチコン3号の仕様上「8の倍数」となる値を設定しておいてください。
「96」から毛筆ブラシの「32」を引いた「64」がホワイトのアルファチャンネル値です。
ホワイトのアルファチャンネル値を変更したい場合は「96」の部分を「ホワイトの値+毛筆ブラシの値」に書き換えると良いです。
アバター
おちゃめ 2017/11/12 22:08 ◆jH1opV6FnGyx
2年前の7月、QSPブームの初期の頃に作った「PETIT PAINT QSP」から2年の歳月を掛けて完成したQSP史上最強のお絵かきソフト「PETIT PAINT 2 QSP」はMiiverseが終了直前に公開したので記憶に新しいと思います。
前作の「簡易毛筆QSP」は初代「PETIT PAINT QSP」を作っていた頃と比べて技術向上した結果できたものですが、これ以上QSPでは毛筆らしさを表現することは難しいだろうということでQSPという制限のない「簡易毛筆」を作りました。

この簡易毛筆 は昨年末に公開したver.1では「にじみ」「かすれ」の表現が可能になり、今年の春に公開したver.2ではアルファチャンネル対応となりました。(薄墨を使った水墨画やカラーでの混色表現も自在にできる)

しかし、「PETIT PAINT 2 QSP」を完成させた後で「簡易毛筆QSP」のプログラムを見てみると「QSPではこれ以上のことはできない」と思っていたプログラムが「もっとできるのでは?」に変わることができました。
「ならばやってみよう」ということでやった結果できたのが今回の「簡易毛筆2 QSP」です。


何事も自分で「できない」と思った時点でそれ以上のことは本当にできないのですが、今回ばかりはこれ以上の毛筆ソフトはQSPで作ることはできないのではないかと思います。(QSPという制限がなくても完全な毛筆シミュレートするにはプチコン3号の速度では足らないと思うのでQSPという制限がなくてもこれ以上は難しい)

ちなみに「簡易毛筆2 QSP type B」は「(フルサイズの)簡易毛筆」における透明感80相当のアルファチャンネル設定なのですが、フルサイズ版とはアルゴリズムが異なるため「簡易毛筆2 QSP type B」はフルサイズの簡易毛筆を超えるなめらかさとなっています。
その分、若干動作は重いものの旧3DSでも特に重さを感じるレベルではないと思います。

来年のお正月にはこの「簡易毛筆2 QSP」を使用した「第3回プチコン3号書き初め大会」を開催予定なので楽しみにしておいてください。
アバター
タノシイひと 2017/11/13 14:47 ◆tl02W7.pbt.W
おちゃめさんだ!


し…しかしQSPでこの凄さ……
アバター
おちゃめ 2017/11/19 21:50 ◆jH1opV6FnGyx
タノシイひとさんへ
この「簡易毛筆2QSP」はQSPの限界とも言える作品だと思います。
とはいえ、私自身もいきなりこの作品ができたわけではなく上のコメントで書いているように2年間の積み重ねがあったからこそ作ることが可能になりました。何事も「継続は力なり」です。
アバター
ありがとうございます? 2017/11/20 16:57 ◆RPL8PczCoM7K
2年間か…
随分大変だったんですね。
ダウンロードした!
書き心地がすごくいい₍₍ (ง ˘ω˘ )ว ⁾⁾
これからも頑張って💪
アバター
おちゃめ 2017/11/22 13:20 ◆jH1opV6FnGyx
ありがとうございます?さんへ

使って頂きありがとうございます。
初代QSPのお絵かきソフトである「PETIT PAINT QSP」から「簡易毛筆2QSP」に至るまでの2年間は下記のような流れになっています。
少しずつQSP制作スキルが向上していったためここまでのものを作ることができました。


私のQSPのお絵かきソフトの系譜

◎PETIT PAINT QSP
 すべての元となる作品。オリジナルのカーソル付き円形ブラシを搭載。
   ↓
◎PETIT PAINT QSP type B
 擬似筆圧によって「入り」の表現。ただし、セーブ機能とカーソル機能は省略
   ↓
◎簡易毛筆QSP
 「抜き」の表現が可能に。太さ不安定なので毛筆っぽい字が書ける。
   ↓
◎SIMPLE PAINT QSP
 QSP初のカラー(※)に対応。ただし、ブラシは円形から四角形へと大幅劣化。
   ↓
◎PETIT PAINT 2 QSP
 PETIT PAINT QSPと同一のカーソル付き円形ブラシを搭載しつつカラー(※)に対応。
   ↓
◎簡易毛筆2 QSP
 簡易毛筆QSP「にじみ」「かすれ」といった毛筆表現が可能に。
   ↓
◎簡易毛筆2 QSP type B
 αチャンネル対応でなめらかな「にじみ」「かすれ」の表現が可能に。ただし、セーブ機能は省略。
(※ここでの「カラー」というのはスポイトと任意色に変更が可能なものを示す。)

コメントを書く

この投稿にはコメントできません。

- WEB PATIO -