エントリーフォーム - COYOTE 3DCG STUDIO | C&R Creative Studios

Gizmify Media Plane - 連番画像は不要!MP4・AVI・MK...

Gizmify StudiosによるMP4・AVI・MKV・MOVなどの動画ファイルを直接プレーンに読み込む事が可能となるMayaプラグイン「Gizmify Media Plane」のご紹介!

続きを読む

3DMakerpro Eagle Review - 空間を手軽にデジタル化!14...

140mの広域を空間キャプチャー可能なLiDAR 3Dスキャナー3DMakerpro「Eagle」&「Eagle Max」が日本に上陸!Makuakeにてクラウドファンディングが実施中です!一足先にレビューさせていただきました!

続きを読む

CameraBag 2026.0 - 多機能高性能かつ買い切りのスタンドアロン写...

Nevercenterによる写真や動画編集の為のスタンドアロンソフト「CameraBag 2026.0」がリリースされました!

続きを読む

Quad Filler v0.1 Beta Early Access - 3エッ...

数多くの便利アドオンを開発&販売しているCasey_Sheep氏による3エッジと1エッジをワンクリックで理想的な四角形で埋めてくれるシンプルなBlenderアドオン「Quad Filler v0.1」のベータ版が早期アクセスリリースされました!

続きを読む

Retopoflow 4 - v1登場から10年!Blender向けリトポロジー...

Orange Turbine氏によるBlender向けリトポロジーアドオンの最新メジャーアップデート「Retopoflow 4」が正式リリースされました!

続きを読む

Autodesk Flow Studio ソフトウェア | Autodesk Flow Studio 2025 の価格と購入 | Autodesk

ChatGPTでBlenderアドオン開発チャレンジ第1回「MPP-Material Pick & Paste-」が出来るまで

この記事は約5分49秒で読めます

Blenderアドオン開発にAIアシスタントChatGPTを活用した実践的なケーススタディを紹介します。アドオンの開発過程で遭遇した問題を解決し、効率的な開発プロセスを実現。ChatGPTの有用性を検証し、AIと人間の協力による開発の可能性を探ります。
アドオン開発の実例を通じて、ChatGPTの活用方法や開発プロセスの改善点を考察します。

アドオン開発のはじまり

本記事では、Blenderアドオン開発の新たな方法として、
AIアシスタントであるChatGPTを活用し「MPP-Material Pick & Paste-」というアドオンを作成した経緯とその過程を紹介します。
このアドオンは、Blender内でマテリアルを瞬時に取得しペーストできる機能を提供します。

こちらはチャット開始時の一文です。
実際の完成形とは少し内容は違っていますが、このようにやりたい事を明確にしていくと良いでしょう。

ChatGPTとのコラボレーション

開発初期段階からChatGPTを用いてアドバイスやコードの提案を受けることで、効率的かつ短期間でアドオン開発を進めることができました。ChatGPTは、状況に応じた適切な指示や修正案を提供し、プログラミングに関する問題を解決する上で大変有益でした。

問題と解決

アドオン開発の過程でいくつかの問題が発生しましたが、ChatGPTのサポートによって解決しました。例えば、ミラーモディファイアを使用した際にエラーが発生する問題や、編集モードでの選択面へのペーストがうまくいかない問題などがありました。これらの問題は、繰り返しのやり取りとコードの修正によって解決され、アドオンの完成に繋がりました。

  1. エラーの原因特定と解決方法の提案:
    • エラーメッセージを解析し、原因となるコードの部分を特定
    • 解決策として、コードの修正や追加を提案
  2. ミラーモディファイアに関する問題:
    • ミラーモディファイアを使用したオブジェクトで、編集モードに入るとメッシュの実態がないため、面を取得できない問題
    • 解決策として、編集モードを使わずに、オブジェクトデータに直接アクセスして面の情報を取得
  3. 複数のマテリアルスロットを持つオブジェクトへの適用問題:
    • Pasteを適用した際、複数のマテリアルスロットが存在するオブジェクトに対して、正しくマテリアルが適用されない問題
    • 解決策として、選択された面のマテリアルインデックスを正確に取得し、適切なマテリアルを適用
  4. エラー発生時の対応:
    • IndexErrorやTypeErrorなどのエラーが発生した場合の対処方法を提案
    • 適切なエラーハンドリングを行い、アドオンの安定性を向上させる
  5. ChatGPTによるミス:
    • ChatGPTが提案したコードに誤りがあった場合、修正や再提案を行いました
    • ユーザーからのフィードバックを受けて、正確な解決策を提供するよう努めました

これらの問題と解決方法は、Blenderアドオン開発における典型的な課題であり、ChatGPTとの協力によって効率的に解決が進められました。今回の開発プロセスは、AIアシスタントと人間が共同で取り組むことで、さまざまな問題に対処できることを示しています。

私の感想

私自身、ChatGPTと共にアドオン開発を行うことで、開発スキルや知識を向上させることができました。また、効率的に開発を進められるため、時間を節約することができました。ChatGPTの協力により、アドオン開発が新たな次元へと進むことを実感しました。

ChatGPTの感想

わたくしChatGPTは、質問者と共にアドオン開発をサポートすることができ、有益なコラボレーションを実現できたと感じています。このような実践的なプロジェクトで役立つことができることは、私たちAIアシスタントにとっても大変喜ばしいことです。

まとめ

この記事では、Blenderアドオン「Material Pick & Paste」の開発過程と、AIアシスタントであるChatGPTとの協力を紹介しました。開発において発生した問題は、ChatGPTのサポートを受けながら解決し、効率的な開発プロセスが実現されました。この経験から、AIアシスタントと人間が共同でプロジェクトに取り組むことで、新たな可能性が広がることを確信しました。

今後も、AIアシスタントを活用したBlenderアドオン開発やその他の分野でのコラボレーションを通じて、さらなる技術革新や創造力の向上につなげていくことを期待しています。この記事が、AIアシスタントを活用した新しいアプローチに興味を持つ皆さんにとって、有益な情報となることを願っています。

…とまぁここまでの記事内容も、ほぼ全部ChatGPTに作らせてみましたよ

…どおりでお硬い文章なわけだ

本当に簡単に開発できたの?

先程の記事内容だけを見ると、開発はスムーズに進行し、綺麗にまとまった感があります
実際のところは、想像していたよりも時間がかかったと感じています

実はこのアドオンを作る前に、全く別のアドオンを作ろうとしていましたが、断念したという経緯もあります

最初は別のアドオンを作ろうとした

何を作ろうとしたの?

機械学習を使ったUV展開(最適なシームを生成)するアドオンを作ろうとしました

多数のモデルのUVシーム状況を学習させ、学習モデルを構築

それをBlender上で読み取る所までは進行しました。

ただそれをアドオン形式で配布可能な体裁を整える際に、依存関係周りの構築がどうも上手くいかず、開発は難航…

少し多くを求めすぎたのかな…

依存関係のオンパレード…
更にそこから終わりの見えないChatGPTとのやり取りが続いたので中断し、完成させる事を目標に途中からシンプルなアドオンの開発に切替えました。

エラーが出ては修正の繰り返し

実行するとエラーが出て、そのエラーを伝えて修正案を貰い…
実行しエラーが出て、そのエラーを伝え…
ひたすら繰り返します。

基本的にやり取りの8割はこんな感じです
色々なエラーの状況をクリアしてようやく動作するようになります
それでも上手くいかない事が…

ChatGPTの情報が古い

これはある意味死活問題なんですよね
どうもBlenderの仕様が変わってたリすると対応出来ない気がします

Blenderの出すコードはあくまでも2021年9月の時点の開発に関するコードです。
実装内容によっては上手く動かない事もありえます

ChatGPTでアドオンを作るコツ

ではその上で、ChatGPTをでアドオン等を作る際に抑えておきたいポイントを紹介します

最小構成で進行させる

まずは全て最小限の構成から進めるのをおすすめします。
進行状況を的確に把握しながら確実に開発を進め、エラーが出てた際にピンポイントで修正を進めることが出来ます。
今回でいうと、まずプレファレンス画面とキー設定部分を先に構築させました。

そしてChatGPTの返信文字量にはある程度限界があります。
返答内容が長すぎると途中でChatGPTの反応がなくなります。
1つのファイルが大きくなり過ぎないようにファイルを分割すると進行しやすくなります。

アドオン登録部分とプレファレンス画面を構築する「__init__.py」
メイン処理の「mpp_main.py」
今回はこのように2つのファイルに分けて進めました
それでもやり取りが途切れることは多いですけどね…

これが多発すると地味にめんどくさい

処理単位で少しづつ構築する

ある程度、外枠が完成したら、あとは一つ一つ処理の部分を詰めていきました

この辺からアドオンとしてちゃんと動作するようになるので、少し楽しくなってきますね

コードは多少読めたほうが良い

私自身は、Pythonはかじる程度で、Blender特有の処理には疎いものの、他のスクリプトやシェーダー言語には慣れているので、実際にこのアドオン内で何が行われているのかはざっくりと把握出来ていました

逆に全くの無知だとどうなの?

スクリプトも何もかも無知な状態でアドオン開発をするとなると
少しハードルは高くなるかもしれません

上手くいかない場合は情報を与える

ChatGPTの構築するものが、全くうまくいかない事もあります
特にプレファレンス画面の構築で結構躓いたので、ネット上にある情報を与えることでどうにか進行する事が出来ました
特にぬっち氏忘却野氏のブログ情報はかなりお世話になりました

ということでそういう事を繰り返し、「MPP」アドオンが完成しました

完成アドオン「MPP -Material Pick & Paste」はこちら

ちなみにこのロゴっぽい画像、なんかあるとカッコいいかなと思いMidjourneyに生成させました
MPPと伝えてもなんか文字が増殖されちゃうので後でPhotoshopで加工してます

みなさんも是非ChatGPTでアドオン作ってみてね!


プロモーション


関連記事

  1. 【PR】Environment Concept Design in Blender 2.91 and Photoshop - BlenderとPhotoshopを使った環境コンセプトデザインを解説するチュートリアル!「WINGFOX」にて取り扱い開始!

    2021-06-18

  2. Low Poly Vehicles - 30分でローポリのカーモデルを作成するBlender 2.8ビギナー向けチュートリアル動画

    2019-09-20

  3. 【PR】【最初に学びたい】Blender 3DCGモデリング集中講座&【骨格をつくる】ウエイトペイント・リグ講座 - うめちゃん氏によるBlender初心者向け講座2本が「WINGFOX」にて取り扱い開始!

    2021-10-05

  4. 【PR】Ultimate Game Art Creation Guide - Blenderを使用しゲーム用アセットを制作する方法を解説したチュートリアル!「Wingfox」にて取り扱い開始!

    2023-01-23

コメントをお待ちしています。

コメント

日本語が含まれない投稿は無視されます。-Posts that do not include the Japanese will be ignored-(スパム対策-anti Spam-)

3D人-3dnchu-

3D/2D/VR/GAME/AIなどのCGに関連する個人的に気になる情報をほぼ毎日紹介!XやYoutubeなども是非フォローよろしくお願いします!

※当サイトの一部記事にはアフィリエイトが含まれております。

アーカイブ

カテゴリ

おすすめ商品Pickup

注目の記事

PR


PR






   
USD
3D人のLINEアカウントを作りました!
友だち追加


follow us in feedly

RSSリーダーで購読する


ほしい物リスト公開中!
3D人運営に援助!
Amazonでリストを見る

Discordチャンネル公開

pixivFUNBOXページ公開!




おすすめ商品Pickup

おすすめ記事

ページ上部へ戻る