Blenderのアドオン開発に奮闘中
(約 2,300文字の記事です。)
ここ最近、ずっとBlenderのアドオン開発をしている。だからなかなか記事執筆のアウトプットが出せない。
開発とは「1歩進んで2歩下がり、3歩進んで2歩下がる」
1歩進んで2歩下がり、3歩進んで2歩下がる。プラスマイナス0かといわれると、そんなことはない。このときのノウハウの蓄積が「次の前進の確実な1歩」になるのだ。
登山での「次のくさび」が打てるかどうか。これはとても重要。
だが他人から見ればゼロだろう。あいつは何をやっているんだ?と。当然理解してもらえない。そんなもんだ。分かり合えるのはエンジニア同士だけだろう。
成果物の価値
何かを開発するということは、そういうたゆまぬ努力の結果なのだ。おいそれと簡単にはできない。だからこそ、万人から見て「おぉ、凄い」「これは価値がある」ものだと認めてもらえるモノができる。
凝縮して凝縮して、ようやく手に入った一滴。これが開発の成果なのだ。
だから誰でも簡単に、というものではないんだ。
Blenderのアドオンでやりたいこと
話を戻すと、私が作りたいものは、簡単に言うと、ZbrushとBlenderとを便利に連携させるアドオンなのだ。連携そのものは既にGoBアドオンでできる。その弱点もGoBアシストツールV3で補った。
https://yamato-tsukasa.booth.pm/items/3124095
だが、イマイチ不便なのだ。Blender側の挙動が面倒臭いのだ。全然直感的に扱えない。色んなモードをCtrl + TABで切り替えたり、選択順に気を付けたり(間違えると思った通りの挙動にならない)、とにかく色んなことに気を使う。
要するに
使 い に く い !
これなのだ。もちろんZbrushではできないリグポージングができるが、色々とやりくりして「何とか実用レベル」にはできる。だが私はもっとサクサクと「マジで高速に作業を進めるための道具」が欲しいのだ。
探しても見つからないならば作ればいい
まずはネットで探してみた。だが見つからない。何で?こういうことが1クリックでできたらいいのにな、というアドオンが見つからない。なぜだ?
色々考えたが、結果、高いハードルへの挑戦を決めたのが2週間前のこと。Blenderアドオンの開発だ。Pythonなど知らん!でも作りたい!だったら学べばいいじゃない?
というわけで2週間くらい前にPythonの教科書を一気に通読。この本はAmazonプライム会員なら無料で読めます。
基本は押えた。だがしかし!
Blender API × Python = カオス
とはいえ、色々とカオスだった。Blender APIなのかPythonなのか、どっちが原因で上手く動かないのか。これにたくさんぶち当たることになる。
四苦八苦しながら、できることとできないことが分かってきた。ほとんどはBlender API起因のBlenderの癖が効いているのだが。
昨日できなかったことが今日できるようになった、を繰り返す
これだったりする。昨日できなくて四苦八苦した実装が、翌日の新たな知識や試行錯誤で「できるようになった」となると、それまでの苦労した実装をあっさり捨てて、よりスマートな実装に変えることになる。
これが1歩進んで2歩下がる、の原因だ。だがしょうがない。よりよいものを採用したら、過去の努力がパーになることなど、いくらでもある。それが知の勝負の結果なのだ。
敗者は引き下がるしかない。それが勝負の結果なのだから。
現時点では、まだまだBlenderのアドオン開発でできることとできないことが手探りだから、そういうことになる。とはいえ、着実に「Blenderを便利な道具にする」ための自分専用ツールは出来上がりつつある。
まだまだエラー処理はほど遠いけれど
とはいえ、イメージ通りの動作すらおぼつかないので、エラー処理など二の次。だからこの1週間の成果物が、こんなにショボいものなのか!と思うことはあるが、これが私の今の努力の結晶だったりする。そして明日も明後日も、この結晶を磨き上げることだろう。
成果は小さいけれど、最初の輝く作品になることだろう。
なので、なかなか進みは遅いけれど、確実に、望むものが出来上がりつつあります。
何かを無から生み出すことは、決して楽じゃない。
それを理解している人間こそがクリエーターだと思っている。楽じゃない何かを生み出す経験こそが、クリエーターとしての血肉になるのだ。
だからこの記事を読んだ皆様も、何かしらに挑戦し、学び、成果を出す過程を体験してみて下さい。楽じゃない経験ほど、学びが大きい。そしてクリエーターとして成長できる。
逆にそれなしには「ただの惰性、どこにでも転がっているモノ」しか生み出せていないことになる。それに価値を見出す人は少ない。長い目で見ると無駄な時間になる可能性すらある。
ちょっぴり頑張って、己の腕を磨いて輝いてみようぜ!
今回の創作活動は約1時間15分(累積 約2,516時間)
(669回目のnote更新)
筆者はAmazonアソシエイト・プログラムに参加しています。(AmazonアソシエイトとはAmazon.co.jpの商品を宣伝し所定の条件を満たすことで紹介料をAmazon様から頂けるという大変ありがたい仕組みのこと。)
以下のリンクを経由してAmazonで何かを買うと購入額の1~3%ほどのお小遣いが私に寄付されます(笑)
読んでくれてありがとう。気長にマイペースに書いてます。この出会いに感謝😊