[{"data":1,"prerenderedAt":15445},["ShallowReactive",2],{"article-kitsu-2026-roadmap-ja":3,"article-translation-kitsu-2026-roadmap-fr":364,"tags-header-ja":646,"tags-posts-ja":707,"tags-footer-ja":15423},{"id":4,"title":5,"authors":6,"body":13,"description":53,"extension":346,"feature_image":347,"html":11,"meta":348,"navigation":352,"path":353,"published_at":349,"seo":354,"slug":355,"stem":356,"tags":357,"__hash__":363,"updated_at":349,"featured_at":350,"visibility":351},"blog/blog-i18n/ja/kitsu-2026-roadmap/index.md","Kitsu 2026ロードマップを解説：機能、プラグイン、そして今後",[7],{"id":8,"name":9,"slug":10,"profile_image":11,"cover_image":11,"bio":11,"website":11,"location":11,"facebook":11,"twitter":11,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":12},"630632b2ca5910003d4a70af","Basile Samel","basile",null,"https://cgwire.ghost.io/author/basile/",{"type":14,"value":15,"toc":335},"minimark",[16,33,38,42,59,62,65,70,73,81,91,93,97,100,111,114,122,125,127,131,134,142,144,148,151,154,162,165,168,176,179,181,185,188,196,204,206,210,213,216,224,227,236,238,242,245,253,256,283,291,293,297,300,303,306,324],[17,18,23,28],"div",{"className":19},[20,21,22],"kg-card","kg-callout-card","kg-callout-card-yellow",[17,24,27],{"className":25},[26],"kg-callout-emoji","🗺️",[17,29,32],{"className":30},[31],"kg-callout-text","Kitsuの2026年ロードマップは、制作データを「実際に行動に移せるもの」に変えることに尽きます",[34,35,37],"h1",{"id":36},"kitsu-is-evolving-a-roadmap-built-with-studios","Kitsuは進化する：スタジオとともに作られたロードマップ",[39,40,41],"p",{},"KitsuのChief Product Officer（最高製品責任者）であるGwénaëlle Dupréは、2026年のKitsu Summitで登壇し、参加者にプラットフォームの最新機能を紹介するとともに、2026年の四半期ごとの明確なロードマップを共有しました。このセッションは、生のデモと、アニメーション制作管理ソフトウェアが次に向かうべき方向性についての対話を組み合わせた内容でした。",[43,44,47],"figure",{"className":45},[20,46],"kg-image-card",[48,49],"img",{"src":50,"className":51,"alt":53,"loading":54,"width":55,"height":56,"srcSet":57,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-20.png",[52],"kg-image","","lazy",1920,1080,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/04/image-20.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/04/image-20.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/04/image-20.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-20.png 1920w","(min-width: 720px) 720px",[39,60,61],{},"Gwénaëlleは、CGWireが開発するオープンソースの制作トラッキングプラットフォーム「Kitsu」の中でも特に目立つ存在の一人です。CPOとして、彼女はユーザーからのフィードバックとプロダクトの方向性の交差点に立っており、Summitでは、アニメーションスタジオのプロフェッショナルが集まった会場で、直接語りかける場を得ました。",[63,64],"hr",{},[66,67,69],"h2",{"id":68},"a-smarter-production-schedule","より賢い制作スケジュール",[39,71,72],{},"Gwénaëlleがライブで披露した中で最も大きな目玉機能は、アップグレードされた制作スケジュールです。見た目は一見なじみのあるスケジュール表示ですが、退屈な手作業を取り除くための複数のジェスチャーに対応しています。",[43,74,76],{"className":75},[20,46],[48,77],{"src":78,"className":79,"alt":53,"loading":54,"width":55,"height":56,"srcSet":80,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-21.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/04/image-21.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/04/image-21.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/04/image-21.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-21.png 1920w",[82,83,84,88],"ul",{},[85,86,87],"li",{},"ドラッグ＆ドロップによるタスク割り当てで、制作マネージャーはスケジュールのタイムライン上でタスクをあるアーティストから別のアーティストへ直接移動できます。タスクの開始日・終了日の調整も、バーをクリックして伸ばすだけで済みます。数十〜数百カットを扱うスタジオにとって、このような直接操作は、実際のボトルネックを解消します。",[85,89,90],{},"もう一つのスケジューリング改善は、制作の初期によく起こる状況に対応しています。つまり、タスクは存在するものの、まだ誰にも割り当てられていないケースです。従来は各タスクを個別に開く必要がありましたが、今は割り当てられていないタスクのグループを選択して、1回の操作でスケジュールにドロップできます。そうするとKitsuが分配を処理します。Gwénaëlleは次のように述べました：「Kitsuはあなたの制作マネージャーではなく、このショットのほうが他より難しいといったことを正確に知るわけではありません。重い作業を行うための、そういうやり方です。」",[63,92],{},[66,94,96],{"id":95},"estimation-vs-reality-visualized","見積もりと現実、可視化する",[39,98,99],{},"スケジュールが作成できたら次は、「現実が計画に合っているのか？」という問いが生まれます。Kitsuは、複数の「事実」を単一のタスクリスト／タイムライン上に重ねて表示できるようになりました：",[82,101,102,105,108],{},[85,103,104],{},"見積りの期間は、バーの長さとして表示されます。",[85,106,107],{},"ステータスのマイルストーンは、アーティストが実際にタスクを開始した時、初回レビューに回った時、そして最終的なバリデーションを受けた時を示す色付きの縦線として表示されます。",[85,109,110],{},"タイムシートのデータは、見積りバーの上に薄い線として表示され、各アーティストが毎日記録した実際の稼働時間を反映します。",[39,112,113],{},"この3つの層により、制作マネージャーは一目で、当初の見積りが成立していたかどうかを確認できます。スプレッドシートとタスク表示を行き来して、全体像を組み立てる必要はもうありません。",[43,115,117],{"className":116},[20,46],[48,118],{"src":119,"className":120,"alt":53,"loading":54,"width":55,"height":56,"srcSet":121,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-22.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/04/image-22.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/04/image-22.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/04/image-22.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-22.png 1920w",[39,123,124],{},"Kitsuはまた、指定したタスクの直前および直後のタスクもすぐに表示します。左側の緑のバーは、上流のタスク（例：レイアウト）がすでにバリデーション済みであることを示します。右側の赤で強調表示されたバーは、下流のタスク（例：コンポジット）が開始予定をすでに超過していることを示します。これにより、ボトルネックが危機になる前に、監督者が迅速に視覚的な警告を得られるようになります。",[63,126],{},[66,128,130],{"id":129},"the-schedule-inside-the-task-page","タスクページの中にあるスケジュール",[39,132,133],{},"これまでスケジュールを見るには、ショットやアセットページから移動する必要がありました。Kitsuでは、スケジュールをタスクページに直接埋め込みました。ボタン一つでスケジュール表示のオン／オフが切り替わるため、制作マネージャーはタイミングを確認し、調整を行い、往復のナビゲーションなしで文脈を保ったまま作業できます。",[43,135,137],{"className":136},[20,46],[48,138],{"src":139,"className":140,"alt":53,"loading":54,"width":55,"height":56,"srcSet":141,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-23.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/04/image-23.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/04/image-23.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/04/image-23.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-23.png 1920w",[63,143],{},[66,145,147],{"id":146},"budget-tools-a-first-practical-version","予算ツール：まずは実用的な第一歩",[39,149,150],{},"Gwénaëlleは、予算機能が第一歩として用意されたものであり、複雑な会計を伴う大規模制作というより、特に小規模スタジオやエージェンシーを想定して設計されていることを明確に説明しました。しかし、現在コストをスプレッドシートで追跡しているスタジオにとっては、ほかの選択肢よりずっと良いはずです！",[39,152,153],{},"土台は、人ディレクトリに追加されたいくつかの新しい項目です。position（監督、リード、アーティスト）、seniority（シニア、中堅、ジュニア）、daily rate（1日の単価）。この情報が見られるのはスタジオマネージャーのみです。",[43,155,157],{"className":156},[20,46],[48,158],{"src":159,"className":160,"alt":53,"loading":54,"width":55,"height":56,"srcSet":161,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-24.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/04/image-24.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/04/image-24.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/04/image-24.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-24.png 1920w",[39,163,164],{},"そこからスタジオは、部門ごとに給与レンジを定義できるようになり、特定の人を雇う前に予算を計画できるようになります。たとえばスタジオが「3カ月間、シニアアニメーターが必要になる」と分かっているが「誰が担当するかはまだ分からない」場合でも、部門のスケールを使ってコストを見積もってモデル化できます。",[39,166,167],{},"予算の表示では、ソフトウェアライセンス費用やハードウェア費用も受け付け、それぞれ該当する部門と紐づけられます。Kitsuは、どのアーティストがどの部門に属しているかを把握しているため、チームが成長するにつれて、利用可能なライセンスがどれだけ残っているかを自動で計算できます。",[43,169,171],{"className":170},[20,46],[48,172],{"src":173,"className":174,"alt":53,"loading":54,"width":55,"height":56,"srcSet":175,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-25.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/04/image-25.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/04/image-25.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/04/image-25.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-25.png 1920w",[39,177,178],{},"予算の全体概要には、月ごとの支出見込みの内訳、部門ごとのコスト配分、タイムシートデータに基づく見積もりと実際のコストの比較が表示されます。制作の進行に合わせて、予算の複数バージョンを保存でき、時間とともに見積りがどう変わったかの記録を残せます。Gwénaëlleが説明したように：「どれくらいの金額が出ていくのかを見積もります。これが実際のコストです。見積もりより上かもしれないし、下かもしれない。だから、見積もりが一致してくれることを願っています。すべてを完璧に計画できていればね。」",[63,180],{},[66,182,184],{"id":183},"two-features-worth-knowing-about","知っておく価値のある2つの機能",[39,186,187],{},"スケジューリングと予算のほかに、Gwénaëlleはすでに提供されている小さめの追加機能として2つを挙げました。",[82,189,190,193],{},[85,191,192],{},"コンタクトシート表示では、スタジオの制作全体を、タスクリストではなくサムネイル画像のグリッドとして見ることができます。ここでもKitsu全体で使えるのと同じフィルターが適用されるため、表示の見た目を保ったまま、ステータス、部門、担当者で絞り込めます。",[85,194,195],{},"タスクベースのプレイリストは、既存のプレイリストツールに対して2つ目の軸を追加します。従来のプレイリストがショットを順番に辿っていくのに対し、新しい表示では、同じショットに紐づく複数のタスクを並べてレビューできるようになります。たとえばアニメーションとライティングのように、ショットの異なる要素を順番ではなく同時に確認する必要がある場合に便利です。",[43,197,199],{"className":198},[20,46],[48,200],{"src":201,"className":202,"alt":53,"loading":54,"width":55,"height":56,"srcSet":203,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-26.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/04/image-26.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/04/image-26.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/04/image-26.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-26.png 1920w",[63,205],{},[66,207,209],{"id":208},"the-plugin-system-kitsu-as-a-platform","プラグインシステム：プラットフォームとしてのKitsu",[39,211,212],{},"トークのライブ部分で最も将来性のある発表だったのは、プラグインシステムの導入です。Kitsuは、インターフェース内に収まり、ツール全体の見た目の言語に沿った形で、独自に作られた機能を拡張できるようになります。",[39,214,215],{},"Gwénaëlleの例は、シンプルなチケットシステムで、深いエンジニアリング経験がなくても、プラグインAPIが利用可能であることを示していました。",[43,217,219],{"className":218},[20,46],[48,220],{"src":221,"className":222,"alt":53,"loading":54,"width":55,"height":56,"srcSet":223,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-27.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/04/image-27.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/04/image-27.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/04/image-27.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-27.png 1920w",[39,225,226],{},"より長期的なビジョンは、コミュニティによるマーケットプレイスです。スタジオは共通のニーズに合わせて作られたプラグインを共有し、インストールできます。「Kitsu向けのプラグインをたくさんの人が作っていて、それを、欲しいものや必要なものに応じて選べるマーケットプレイスがあるんです」",[39,228,229,230,235],{},"これを支える動きとして、",[231,232,234],"a",{"href":233},"https://dev.kitsu.cloud/?ref=cgwire.ghost.io","Kitsuは開発者向けドキュメントを一箇所に集約","し、複数のサイトに散らばっていた参照先を置き換えました。目的は、基本的な開発知識がある誰にでも、プラグインを作って貢献できるようにすることです。",[63,237],{},[66,239,241],{"id":240},"the-roadmap-phase-by-phase","ロードマップ：段階ごとに",[39,243,244],{},"Gwénaëlleは、Kitsuの開発を3つのフェーズに整理しました。フェーズ1（タスク管理、レビューのワークフロー、基本的な連携）は完了しています。フェーズ2（今回の現行リリースに該当）は、スケジューリング、予算管理、カーボントラッキングに焦点を当てています。フェーズ3では、より深い連携、テレビシリーズ向けのファイル形式のアプローチ、サードパーティツール用のUIキットに取り組む予定です。",[43,246,248],{"className":247},[20,46],[48,249],{"src":250,"className":251,"alt":53,"loading":54,"width":55,"height":56,"srcSet":252,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-28.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/04/image-28.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/04/image-28.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/04/image-28.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-28.png 1920w",[39,254,255],{},"残りの1年で予定されていることは以下のとおりです：",[82,257,258,265,271,277],{},[85,259,260,264],{},[261,262,263],"strong",{},"第1四半期 "," - カーボンプラグイン、開発者ドキュメント、エピソードのスケジューリング。カーボンプラグインによって、Kitsuの利用が生み出す環境へのフットプリントをスタジオが測定できるようになります。エピソードのスケジューリングは、タイムライン表示を拡張し、テレビシリーズがエピソード単位から個々のショットへ掘り下げられるようにします。ショートフォーム制作で既に利用可能な深さに合わせます。",[85,266,267,270],{},[261,268,269],{},"第2四半期 "," - クライアントレビュー、描画ツール、週次および日次の予算。クライアントレビューの改善は、Kitsuへのフルアクセスを必要としない外部の関係者向けに、体験を簡素化することを目的としています。ログインとパスワードのフローはセキュアリンクに置き換えられ、リンクを通じて誰が何を閲覧したかも引き続き記録されます。描画ツールのアップデートでは、消しゴムと基本的な図形が追加されます。週次・日次の予算内訳によって、短期間の制作にとってより実用的なツールになります。",[85,272,273,276],{},[261,274,275],{},"第3四半期"," - レポートの強化、グローバルフィルターの改善、JavaScriptクライアント。この四半期は、より良い「ひと目でわかるデータ」を必要とする制作マネージャーに焦点を当てます。新しいレポートページと、より柔軟なフィルターによって、重要な情報を見せやすくします。JavaScriptクライアント（既存のPythonライブラリ、Gazuと同等）により、PrismのようなJavaScriptベースのツールで動く開発者が、Kitsuデータをプログラムで読み書きできるようになります。",[85,278,279,282],{},[261,280,281],{},"第4四半期 "," - レスポンシブデザイン、プロジェクト権限、プロジェクトテンプレート。モバイル対応は、まずレビューのワークフローから行います。プロジェクト権限により、スタジオ全体に適用するのではなく制作単位でアクセスルールを設定できます。プロジェクトテンプレートによって、スタジオは標準のパイプラインを一度定義し、保存したテンプレートから、または既存の制作を複製して再利用できます。",[43,284,286],{"className":285},[20,46],[48,287],{"src":288,"className":289,"alt":53,"loading":54,"width":55,"height":56,"srcSet":290,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-29.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/04/image-29.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/04/image-29.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/04/image-29.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-29.png 1920w",[63,292],{},[66,294,296],{"id":295},"what-this-means-for-animation-studios","これがアニメーションスタジオにとって意味すること",[39,298,299],{},"Kitsuの開発を貫くテーマは一つです。制作チームが切り替えのために使うツールの数を減らし、すでにシステム内に存在する情報を「行動に移しやすく」することです。",[39,301,302],{},"スケジューリング、予算管理、レビュー、レポーティングは別々の問題ではありません。これらは同じデータを共有しています。誰が、何に対して、どれくらいの期間、そしてどれくらいのコストで取り組んでいるのか、という情報です。Kitsuは、そのすべての問いに対して、制作マネージャーがスプレッドシートに書き出したり、別途制作計画を維持したりすることなく、単一のインターフェースから答えられる形へと進化させています。",[39,304,305],{},"共有ドキュメント、メールのやりとり、切り離されたツールの混在で制作を追っているスタジオにとっては、「目的に合わせて作られたプラットフォームへ移行して、常に最新に保ち続ける」ことが現実的な道筋になります。Gwénaëlleがデモで見せた機能はすでに提供されています。ロードマップは公開されています。そして開発プロセスは、彼女自身の言葉どおり、会場のスタジオからの直接のフィードバックをもとに進んでいます。あとは、あなたを待つだけです！",[17,307,309,313],{"className":308},[20,21,22],[17,310,312],{"className":311},[26],"📽️",[17,314,316,317,323],{"className":315},[31],"アニメーション制作プロセスについてもっと知るには ",[231,318,322],{"href":319,"rel":320},"https://www.cg-wire.com/community?ref=cgwire.ghost.io",[321],"noreferrer","当社のDiscordコミュニティに参加することを検討してください","！ベストプラクティスを共有する1000人以上の専門家とつながっており、時には直接のイベントも開催しています。ぜひお迎えできれば嬉しいです！ 😊",[17,325,329],{"className":326},[20,327,328],"kg-button-card","kg-align-center",[231,330,334],{"href":319,"className":331},[332,333],"kg-btn","kg-btn-accent","私たちのDiscordコミュニティに参加する",{"title":53,"searchDepth":336,"depth":336,"links":337},2,[338,339,340,341,342,343,344,345],{"id":68,"depth":336,"text":69},{"id":95,"depth":336,"text":96},{"id":129,"depth":336,"text":130},{"id":146,"depth":336,"text":147},{"id":183,"depth":336,"text":184},{"id":208,"depth":336,"text":209},{"id":240,"depth":336,"text":241},{"id":295,"depth":336,"text":296},"md","https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/0-2.png",{"updated_at":349,"featured_at":350,"visibility":351},"2026-04-27T15:03:11.000+02:00","false","public",true,"/blog-i18n/ja/kitsu-2026-roadmap",{"title":5,"description":53},"kitsu-2026-roadmap","blog-i18n/ja/kitsu-2026-roadmap/index",[358],{"id":359,"name":360,"slug":361,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":362},"5fff0e3c653a0c003924f7ee","Company News","company","https://cgwire.ghost.io/tag/company/","I0327ERFnFiyRbIclLp7GZBbKWSvSRzlQgNK8yn1qjU",{"id":365,"title":366,"authors":367,"body":369,"description":53,"extension":346,"feature_image":347,"html":11,"meta":639,"navigation":352,"path":640,"published_at":349,"seo":641,"slug":355,"stem":642,"tags":643,"__hash__":645,"updated_at":349,"featured_at":350,"visibility":351},"blog/blog-i18n/fr/kitsu-2026-roadmap/index.md","Kitsu 2026 Roadmap : explications, fonctionnalités, plugins et suite",[368],{"id":8,"name":9,"slug":10,"profile_image":11,"cover_image":11,"bio":11,"website":11,"location":11,"facebook":11,"twitter":11,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":12},{"type":14,"value":370,"toc":629},[371,381,384,387,393,396,398,401,404,410,418,420,423,426,437,440,446,449,451,454,457,463,465,468,471,474,480,483,486,492,495,497,500,503,511,517,519,522,525,528,534,537,544,546,549,552,558,561,587,593,595,598,601,604,607,622],[17,372,374,377],{"className":373},[20,21,22],[17,375,27],{"className":376},[26],[17,378,380],{"className":379},[31],"La feuille de route 2026 de Kitsu vise à transformer les données de production en quelque chose sur lequel vous pouvez agir concrètement",[34,382,383],{"id":36},"Kitsu évolue : une feuille de route conçue avec les studios",[39,385,386],{},"Gwénaëlle Dupré, Chief Product Officer chez Kitsu, est montée sur scène lors du Kitsu Summit 2026 pour présenter les toutes nouvelles fonctionnalités de la plateforme et partager une feuille de route claire, trimestre par trimestre, pour 2026. La présentation combinait une démo en direct à une discussion sur la direction que doit prendre le logiciel de gestion de la production d’animation.",[43,388,390],{"className":389},[20,46],[48,391],{"src":50,"className":392,"alt":53,"loading":54,"width":55,"height":56,"srcSet":57,"sizes":58},[52],[39,394,395],{},"Gwénaëlle fait partie des visages les plus visibles de Kitsu, la plateforme open source de suivi de production développée par CGWire. En tant que CPO, elle se situe à l’intersection entre les retours utilisateurs et la direction produit, et le Summit lui a offert une salle remplie de professionnels de studios d’animation pour échanger directement.",[63,397],{},[66,399,400],{"id":68},"Un planning de production plus intelligent",[39,402,403],{},"La fonctionnalité la plus marquante montrée en direct par Gwénaëlle était le planning de production amélioré. À première vue, l’affichage du planning semble familier, mais il prend désormais en charge plusieurs gestes qui éliminent les tâches manuelles fastidieuses.",[43,405,407],{"className":406},[20,46],[48,408],{"src":78,"className":409,"alt":53,"loading":54,"width":55,"height":56,"srcSet":80,"sizes":58},[52],[82,411,412,415],{},[85,413,414],{},"Le glisser-déposer pour attribuer des tâches permet à un responsable de production de déplacer une tâche d’un artiste à un autre directement sur la chronologie du planning. Ajuster les dates de début et de fin d’une tâche ne nécessite rien de plus que de cliquer et d’étirer une barre. Pour les studios qui traitent des dizaines, voire des centaines, de plans, ce type de manipulation directe supprime un vrai goulot d’étranglement.",[85,416,417],{},"L’autre amélioration du planning répond à une situation courante en début de production : des tâches existent, mais n’ont pas encore été affectées à quelqu’un. Au lieu d’ouvrir chaque tâche individuellement, un responsable peut désormais sélectionner un lot de tâches non assignées et les déposer sur le planning en une seule action. Kitsu se charge ensuite de répartir. Comme l’a résumé Gwénaëlle : « Kitsu n’est pas votre responsable de production et ne saura pas exactement que ce plan est plus difficile que les autres. C’est juste une façon de faire le gros du travail. »",[63,419],{},[66,421,422],{"id":95},"L’estimation face à la réalité, visualisée",[39,424,425],{},"Une fois qu’un planning existe, la question devient : est-ce que la réalité correspond au plan ? Kitsu superpose désormais plusieurs sources de vérité sur une seule chronologie de tâche :",[82,427,428,431,434],{},[85,429,430],{},"La durée estimée apparaît sous forme de la longueur même de la barre.",[85,432,433],{},"Les jalons de statut s’affichent sous forme de lignes verticales colorées indiquant quand un artiste a réellement commencé une tâche, quand elle est partie en première relecture, et quand elle a reçu la validation finale.",[85,435,436],{},"Les données de feuille de temps apparaissent sous forme d’une ligne fine au-dessus de la barre d’estimation, reflétant les heures réellement enregistrées par l’artiste chaque jour.",[39,438,439],{},"Ces trois couches permettent à un responsable de production de voir, d’un coup d’œil, si l’estimation initiale a tenu. Fini les allers-retours entre un tableur et l’affichage des tâches pour reconstituer une vue d’ensemble.",[43,441,443],{"className":442},[20,46],[48,444],{"src":119,"className":445,"alt":53,"loading":54,"width":55,"height":56,"srcSet":121,"sizes":58},[52],[39,447,448],{},"Kitsu montre aussi les tâches juste avant et juste après n’importe quelle tâche donnée. Une barre verte à gauche indique que la tâche en amont (par exemple, le layout) a déjà été validée. Une barre surlignée en rouge à droite signale que la tâche en aval (par exemple, le compositing) est déjà en retard pour démarrer. Cela donne aux superviseurs un avertissement visuel rapide avant qu’un goulot d’étranglement ne devienne une crise.",[63,450],{},[66,452,453],{"id":129},"Le planning intégré à la page de tâche",[39,455,456],{},"Auparavant, consulter le planning impliquait de quitter la page du plan ou de l’actif. Kitsu intègre désormais le planning directement dans la page de tâche. Un seul bouton permet d’afficher/masquer la vue planning, afin qu’un responsable de production puisse vérifier les échéances, effectuer des ajustements et rester dans le contexte, sans avoir à naviguer constamment.",[43,458,460],{"className":459},[20,46],[48,461],{"src":139,"className":462,"alt":53,"loading":54,"width":55,"height":56,"srcSet":141,"sizes":58},[52],[63,464],{},[66,466,467],{"id":146},"Outils de budget : une première version pratique",[39,469,470],{},"Gwénaëlle a été claire : la fonctionnalité budget est une première étape, pensée en particulier pour les studios et agences plus petits, plutôt que pour les grosses productions avec une comptabilité complexe. Mais pour les studios qui suivent actuellement les coûts dans des tableurs, c’est mieux que les alternatives !",[39,472,473],{},"La base repose sur quelques nouveaux champs dans l’annuaire des personnes : poste (superviseur, responsable ou artiste), ancienneté (senior, intermédiaire ou junior) et tarif journalier. Seuls les responsables de studio peuvent voir ces informations.",[43,475,477],{"className":476},[20,46],[48,478],{"src":159,"className":479,"alt":53,"loading":54,"width":55,"height":56,"srcSet":161,"sizes":58},[52],[39,481,482],{},"À partir de là, les studios peuvent définir une grille de salaires par département, ce qui permet de planifier un budget avant même que les personnes spécifiques ne soient embauchées. Si un studio sait qu’il lui faudra un animateur senior pendant trois mois, mais ne sait pas encore qui ce sera, il peut modéliser le coût en utilisant la grille du département.",[39,484,485],{},"La vue budget accepte également les coûts de licences logicielles et les coûts liés au matériel, chacun étant rattaché au département concerné. Comme Kitsu sait quels artistes appartiennent à quel département, il peut calculer automatiquement combien de licences restent disponibles au fur et à mesure que l’équipe grandit.",[43,487,489],{"className":488},[20,46],[48,490],{"src":173,"className":491,"alt":53,"loading":54,"width":55,"height":56,"srcSet":175,"sizes":58},[52],[39,493,494],{},"La vue d’ensemble complète du budget montre une ventilation mensuelle des dépenses projetées, un découpage des coûts par département, ainsi qu’une comparaison entre coûts estimés et coûts réels à partir des données de feuille de temps. Les studios peuvent enregistrer plusieurs versions du budget au fur et à mesure que la production évolue, en conservant la trace de la manière dont les estimations changent au fil du temps. Comme l’a expliqué Gwénaëlle : « On estime ce montant d’argent qui va sortir. C’est le coût réel. Peut-être que vous êtes au-dessus, peut-être en dessous. J’espère que votre estimation correspondra, parce que vous avez tout planifié parfaitement. »",[63,496],{},[66,498,499],{"id":183},"Deux fonctionnalités à connaître",[39,501,502],{},"Au-delà du planning et des budgets, Gwénaëlle a mis en avant deux ajouts plus modestes déjà en ligne.",[82,504,505,508],{},[85,506,507],{},"La vue “contact sheet” permet à un studio de visualiser l’ensemble de sa production sous forme de grille d’images miniatures, plutôt que sous forme de liste de tâches. Les mêmes filtres que partout ailleurs dans Kitsu s’appliquent ici : les studios peuvent affiner l’affichage par statut, département ou responsable, tout en conservant l’aperçu visuel.",[85,509,510],{},"Les playlists basées sur les tâches ajoutent un second axe à l’outil de playlists existant. Là où la playlist d’origine fait défiler les plans dans l’ordre, la nouvelle vue permet à un relecteur de consulter côte à côte plusieurs tâches pour le même plan. C’est particulièrement utile quand différentes parties d’un plan (par exemple l’animation et l’éclairage) doivent être revues simultanément plutôt que séquentiellement.",[43,512,514],{"className":513},[20,46],[48,515],{"src":201,"className":516,"alt":53,"loading":54,"width":55,"height":56,"srcSet":203,"sizes":58},[52],[63,518],{},[66,520,521],{"id":208},"Le système de plugins : Kitsu comme plateforme",[39,523,524],{},"L’annonce la plus tournée vers l’avenir dans la partie “live” de la présentation a été l’introduction d’un système de plugins. Kitsu peut désormais être étendu avec des fonctionnalités personnalisées, intégrées à l’interface et respectant le même langage visuel que le reste de l’outil.",[39,526,527],{},"L’exemple de Gwénaëlle était un simple système de tickets, démontrant que l’API des plugins est accessible même sans expérience approfondie en ingénierie.",[43,529,531],{"className":530},[20,46],[48,532],{"src":221,"className":533,"alt":53,"loading":54,"width":55,"height":56,"srcSet":223,"sizes":58},[52],[39,535,536],{},"La vision à plus long terme est celle d’un marketplace communautaire où les studios partagent et installent des plugins répondant à des besoins courants : « Beaucoup de gens créent un plugin pour Kitsu, et ensuite il y a un marketplace dans lequel vous pouvez piocher, selon ce que vous voulez et ce dont vous avez besoin. »",[39,538,539,540,543],{},"Dans cette optique, ",[231,541,542],{"href":233},"Kitsu a consolidé sa documentation développeur en un seul endroit",", en remplaçant les références dispersées sur plusieurs sites. L’objectif est de permettre à n’importe qui, avec des connaissances de base en développement, de construire et de contribuer.",[63,545],{},[66,547,548],{"id":240},"La feuille de route, étape par étape",[39,550,551],{},"Gwénaëlle a découpé le développement de Kitsu en trois phases. La phase un (gestion des tâches, workflows de relecture et intégrations de base) est terminée. La phase deux, à laquelle correspond la version actuelle, se concentre sur la planification, le budget et le suivi du carbone. La phase trois portera sur des intégrations plus profondes, une approche du format de fichiers pour les séries TV, et un kit d’interface utilisateur pour les outils tiers.",[43,553,555],{"className":554},[20,46],[48,556],{"src":250,"className":557,"alt":53,"loading":54,"width":55,"height":56,"srcSet":252,"sizes":58},[52],[39,559,560],{},"Voici ce qui est prévu pour le reste de l’année :",[82,562,563,569,575,581],{},[85,564,565,568],{},[261,566,567],{},"Trimestre 1 ","- Plugin carbone, documentation développeur, planification des épisodes. Le plugin carbone permettra aux studios de mesurer l’empreinte environnementale de leur utilisation de Kitsu. La planification des épisodes étendra la vue chronologie pour que les séries TV puissent descendre du niveau épisode vers des plans individuels, avec une profondeur déjà disponible pour les productions au format court.",[85,570,571,574],{},[261,572,573],{},"Trimestre 2 ","- Relecture côté client, outils de dessin, budgets hebdomadaires et quotidiens. L’amélioration de la relecture côté client vise à simplifier l’expérience pour les parties prenantes externes qui n’ont pas besoin d’un accès complet à Kitsu. Les liens sécurisés remplaceront le flux “connexion et mot de passe”, et ces liens enregistreront toujours qui a consulté quoi. La mise à jour des outils de dessin ajoutera une gomme et des formes de base. Les découpages de budget hebdomadaires et quotidiens rendront l’outil plus pratique pour les productions au format court.",[85,576,577,580],{},[261,578,579],{},"Trimestre 3"," - Reporting amélioré, filtres globaux renforcés, client JavaScript. Ce trimestre est axé sur les responsables de production qui ont besoin de données plus faciles à lire d’un coup d’œil. Les nouvelles pages de rapport et des filtres plus flexibles permettront de faire remonter plus facilement les informations qui comptent. Le client JavaScript (comparable à la bibliothèque Python existante, Gazu) permettra aux développeurs travaillant sur des outils basés sur JavaScript comme Prism de lire et d’écrire des données Kitsu par programmation.",[85,582,583,586],{},[261,584,585],{},"Trimestre 4 ","- Design responsive, permissions de projet, modèles de projet. Le support mobile se concentrera d’abord sur le workflow de relecture. Les permissions de projet permettront aux studios de définir des règles d’accès au niveau de la production plutôt que de tout appliquer à l’échelle du studio. Les modèles de projet permettront à un studio de définir une pipeline standard une fois pour toutes et de la réutiliser, soit à partir d’un modèle enregistré, soit en dupliquant une production existante.",[43,588,590],{"className":589},[20,46],[48,591],{"src":288,"className":592,"alt":53,"loading":54,"width":55,"height":56,"srcSet":290,"sizes":58},[52],[63,594],{},[66,596,597],{"id":295},"Ce que cela signifie pour les studios d’animation",[39,599,600],{},"Le fil conducteur de tout le développement de Kitsu est le même : réduire le nombre d’outils entre lesquels une équipe de production doit basculer, et rendre les informations déjà présentes dans le système plus faciles à exploiter.",[39,602,603],{},"La planification, le budget, la relecture et le reporting ne sont pas des problèmes séparés. Ils partagent les mêmes données : qui travaille sur quoi, pendant combien de temps, et à quel coût. Kitsu construit une version dans laquelle un responsable de production peut répondre à toutes ces questions depuis une interface unique, sans exporter vers un tableur ni maintenir un plan de projet distinct.",[39,605,606],{},"Pour les studios qui suivent encore la production via un mélange de documents partagés, de discussions par e-mail et d’outils déconnectés, c’est le cas concret pour passer à une plateforme conçue pour répondre à ces besoins et la garder à jour. Les fonctionnalités démontrées par Gwénaëlle sont déjà en ligne. La feuille de route est publique. Et, comme elle l’a elle-même décrit, le processus de développement repose sur des retours directs des studios présents. Il ne nous reste plus qu’à vous attendre !",[17,608,610,613],{"className":609},[20,21,22],[17,611,312],{"className":612},[26],[17,614,616,617,621],{"className":615},[31],"Pour en savoir plus sur le processus d’animation, ",[231,618,620],{"href":319,"rel":619},[321],"envisagez de rejoindre notre communauté Discord"," ! Nous échangeons avec plus d’un millier d’experts qui partagent les bonnes pratiques et organisent parfois des événements en personne. Nous serions ravis de vous accueillir ! 😊",[17,623,625],{"className":624},[20,327,328],[231,626,628],{"href":319,"className":627},[332,333],"Rejoindre notre communauté Discord",{"title":53,"searchDepth":336,"depth":336,"links":630},[631,632,633,634,635,636,637,638],{"id":68,"depth":336,"text":400},{"id":95,"depth":336,"text":422},{"id":129,"depth":336,"text":453},{"id":146,"depth":336,"text":467},{"id":183,"depth":336,"text":499},{"id":208,"depth":336,"text":521},{"id":240,"depth":336,"text":548},{"id":295,"depth":336,"text":597},{"updated_at":349,"featured_at":350,"visibility":351},"/blog-i18n/fr/kitsu-2026-roadmap",{"title":366,"description":53},"blog-i18n/fr/kitsu-2026-roadmap/index",[644],{"id":359,"name":360,"slug":361,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":362},"xb7RsqbIGOaimyLWSTkfswTJM0l9LVQeix4gAQMI8Xc",[647,658,666,674,683,691,699],{"id":648,"title":649,"body":11,"description":11,"extension":650,"lang":651,"localizedSlug":649,"meta":652,"navigation":352,"pageType":653,"path":654,"seo":655,"slug":649,"stem":656,"__hash__":657},"jsonPages/ja/tags/customer-stories.json","お客様事例","json","ja",{"name":649},"tags","/ja/tags/customer-stories",{},"ja/tags/customer-stories","uoSx-JR1O8hK5nH3Hk2ElbjvRitYGnTpIYQzQc9eT4Q",{"id":659,"title":660,"body":11,"description":11,"extension":650,"lang":651,"localizedSlug":660,"meta":661,"navigation":352,"pageType":653,"path":662,"seo":663,"slug":660,"stem":664,"__hash__":665},"jsonPages/ja/tags/company.json","会社",{"name":660},"/ja/tags/company",{},"ja/tags/company","YM2CkWfBFOJet05_Rb6Ucf5-TzUendAmWVqASlGfSKc",{"id":667,"title":668,"body":11,"description":11,"extension":650,"lang":651,"localizedSlug":668,"meta":669,"navigation":352,"pageType":653,"path":670,"seo":671,"slug":668,"stem":672,"__hash__":673},"jsonPages/ja/tags/production-management.json","制作管理",{"name":668},"/ja/tags/production-management",{},"ja/tags/production-management","iiB4szWmr7_hZx-aVOXQy70yVrJIogzwYVRgejcnp_M",{"id":675,"title":676,"body":11,"description":11,"extension":650,"lang":651,"localizedSlug":677,"meta":678,"navigation":352,"pageType":653,"path":679,"seo":680,"slug":677,"stem":681,"__hash__":682},"jsonPages/ja/tags/blender.json","Blender","blender",{"name":676},"/ja/tags/blender",{},"ja/tags/blender","s4z5DotSr1p7Mg14_r6HHutTMqzvNFonyD_A2quT8xI",{"id":684,"title":685,"body":11,"description":11,"extension":650,"lang":651,"localizedSlug":685,"meta":686,"navigation":352,"pageType":653,"path":687,"seo":688,"slug":685,"stem":689,"__hash__":690},"jsonPages/ja/tags/glossary.json","用語集",{"name":685},"/ja/tags/glossary",{},"ja/tags/glossary","vyZu5vN-1gRjGuTaZNOLMCGduYntrw6VCvpmmA402Pc",{"id":692,"title":693,"body":11,"description":11,"extension":650,"lang":651,"localizedSlug":693,"meta":694,"navigation":352,"pageType":653,"path":695,"seo":696,"slug":693,"stem":697,"__hash__":698},"jsonPages/ja/tags/pipeline.json","パイプライン",{"name":693},"/ja/tags/pipeline",{},"ja/tags/pipeline","jgDgq8M2lQc4oHTpgVOGiCVHPE1MjJwO_3Q5kmuENAQ",{"id":700,"title":701,"body":11,"description":11,"extension":650,"lang":651,"localizedSlug":701,"meta":702,"navigation":352,"pageType":653,"path":703,"seo":704,"slug":701,"stem":705,"__hash__":706},"jsonPages/ja/tags/resources.json","リソース",{"name":701},"/ja/tags/resources",{},"ja/tags/resources","tvx-FMl8FURm9Nc35OyIlHW5PaVLDJOJL6U0LSm5syI",{"お客様事例":708,"会社":2248,"制作管理":4187,"blender":6390,"用語集":9509,"パイプライン":11107,"リソース":13865},[709,1110,1321,1639,2018],{"id":710,"title":711,"authors":712,"body":714,"description":53,"extension":346,"feature_image":1096,"html":11,"meta":1097,"navigation":352,"path":1099,"published_at":1098,"seo":1100,"slug":1101,"stem":1102,"tags":1103,"__hash__":1109,"updated_at":1098,"FOSTは、2018年にDamien BrunnerとThibaut Rubyによって設立された独立系2Dアニメーションスタジオです。2人はフランスの制作会社Folivariも運営しています。FOSTはサービススタジオの役割を担っており、フランスの独立系からNetflixまで幅広いクライアントに対して、プリプロダクション、制作、アニメーション、そしてその間のあらゆる業務を扱います。8年の間にスタジオは、パリの2つの建物とアンゴレームにある3つ目の拠点を舞台に、4本の短編映画、13本のシリーズ、7本の長編映画、8本のティザー、5本のタイトルシークエンスに貢献してきました。\" featured_at":350,"visibility":351},"blog/blog-i18n/ja/fost-animation-studio-kitsu/index.md","FOSTはKitsuとともにどう成長したか",[713],{"id":8,"name":9,"slug":10,"profile_image":11,"cover_image":11,"bio":11,"website":11,"location":11,"facebook":11,"twitter":11,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":12},{"type":14,"value":715,"toc":1079},[716,730,733,736,745,776,779,782,786,795,798,806,809,812,815,819,828,831,837,840,843,846,850,859,862,865,868,872,881,887,890,896,925,929,932,937,940,943,947,953,957,960,963,966,969,973,978,982,985,991,994,998,1007,1012,1015,1029,1033,1036,1039,1042,1046,1049,1052,1070,1073,1076],[43,717,720],{"className":718},[20,719],"kg-embed-card",[721,722],"iframe",{"width":723,"height":724,"src":725,"frameBorder":726,"allow":727,"referrerPolicy":728,"allowFullScreen":352,"title":729},200,113,"https://www.youtube.com/embed/KvuIFhN1Ero?feature=oembed","0","accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share","strict-origin-when-cross-origin","Grandir avec Kitsu | Céline Durieux (Fost)",[39,731,732],{},"Céline Durieuxは、制作ディレクションとスタジオ運営の交点に身を置きながらキャリアを重ねてきました。広告業界でキャリアを始め、その後長編映画やシリーズへ移行し、過去4年間はパリのFOSTにおけるスタジオヘッドとして、HR、1,140平方メートルのスタジオスペースにまたがる施設の管理、そしてテック／パイプライン部門のコーディネーションを統括しています。",[39,734,735],{},"FOSTは、2018年にDamien BrunnerとThibaut Rubyによって設立された独立系2Dアニメーションスタジオです。2人はフランスの制作会社Folivariも運営しています。FOSTはサービススタジオの役割を担っており、フランスの独立系からNetflixまで幅広いクライアントに対して、プリプロダクション、制作、アニメーション、そしてその間のあらゆる業務を扱います。8年の間にスタジオは、パリの2つの建物とアンゴレームにある3つ目の拠点を舞台に、4本の短編映画、13本のシリーズ、7本の長編映画、8本のティザー、5本のタイトルシークエンスに貢献してきました。",[43,737,739],{"className":738},[20,46],[48,740],{"src":741,"className":742,"alt":743,"loading":54,"width":55,"height":56,"srcSet":744,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/05/0-4.png",[52],"Céline Durieux for Fost","https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/05/0-4.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/05/0-4.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/05/0-4.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/05/0-4.png 1920w",[43,746,749],{"className":747},[20,748],"kg-bookmark-card",[231,750,754],{"className":751,"href":753},[752],"kg-bookmark-container","https://www.youtube.com/embed/KvuIFhN1Ero?si=BObsLikX0BNTdKgn&ref=cgwire.ghost.io",[17,755,758,763,767],{"className":756},[757],"kg-bookmark-content",[17,759,762],{"className":760},[761],"kg-bookmark-title","YouTube",[17,764],{"className":765},[766],"kg-bookmark-description",[17,768,771],{"className":769},[770],"kg-bookmark-metadata",[48,772],{"className":773,"src":775,"alt":53},[774],"kg-bookmark-icon","https://static.ghost.org/v5.0.0/images/link-icon.svg",[39,777,778],{},"Célineは、CGWireのKitsuを使うアニメーションスタジオ／パイプラインのプロフェッショナル向けカンファレンス「Kitsu Submit」で、FOSTの歩みを語りました。彼女の講演は、成長する2Dスタジオがどのように制作トラッキングソフトを導入していったのか、その過程で実際にどんな課題が解決されたのか、そして必要なツールを作り上げるために何が必要だったのかが、非常に具体的に語られている貴重な記録です。",[39,780,781],{},"もしあなたのスタジオがまだスプレッドシートで制作を回しているなら、ぜひ読むべきケーススタディです！",[66,783,785],{"id":784},"_1-why-2d-studios-avoided-production-trackers-for-so-long","1. なぜ2Dスタジオは制作トラッカーを長く避けていたのか",[43,787,789],{"className":788},[20,46],[48,790],{"src":791,"className":792,"alt":793,"loading":54,"width":55,"height":56,"srcSet":794,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/05/1-2.png",[52],"CGWire X Studios","https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/05/1-2.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/05/1-2.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/05/1-2.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/05/1-2.png 1920w",[39,796,797],{},"2018年当時の業界事情を理解する必要があります。CGWireの創業者であるFrank Rousseauがスタジオに連絡し、シンプルな問いを投げ始めたのはその頃でした。「なぜ制作トラッカーを使っていないのですか？」",[39,799,800,801,805],{},"Célineは、彼が最初に話した人物の一人でした。当時彼女はFolivariで制作ディレクターとして、アニメーション長編作品",[802,803,804],"em",{},"Pachamama","に取り組んでいました。挙がった理由は何度も繰り返され、今日でも多くのスタジオ運営者には馴染みのあるものです。",[39,807,808],{},"第一に、当時の多くの制作トラッカーは3Dパイプライン向けに作られており、2Dアニメーションのワークフローには適応されていなかったこと。第二に、高価だったこと。独立制作の規模では到底正当化できないほどの価格でした。第三に、セットアップと保守には専任の開発チームが必要で、Folivariのようなスタジオにはその体制が単純にありませんでした。",[39,810,811],{},"Célineがこう表現した通りです。「2017〜2018年当時、スタジオにパイプライン開発者は一人もいませんでした。」エンタープライズ向けツールの複雑さは、独立スタジオが実際にどう運用しているかとは相性が悪かったのです。",[39,813,814],{},"そしてKitsuが埋めるべきギャップはここでした。大手スタジオのソフトウェアベンダーが前提としていることではなく、スタジオとの対話から生まれた、オープンソースの制作トラッカーを作ることで、このズレを埋めようとしたのです。",[66,816,818],{"id":817},"_2-the-turning-point-remote-production-on-ernest-et-c%C3%A9lestine","2. 転機：『Ernest et Célestine』でのリモート制作",[43,820,822],{"className":821},[20,46],[48,823],{"src":824,"className":825,"alt":826,"loading":54,"width":55,"height":56,"srcSet":827,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/05/2-2.png",[52],"Ernest et Célestine","https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/05/2-2.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/05/2-2.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/05/2-2.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/05/2-2.png 1920w",[39,829,830],{},"CélineにとってKitsuが不可欠になったのは、計画された技術導入ではありません。危機でした。",[39,832,833,834,836],{},"2020年5月、彼女はFolivariに加わり、",[802,835,826],{},"の第2シーズンの制作ディレクターを務めることになります。FOSTでプリプロダクションを行い、制作はBlue Spirit（アンゴレームとカナダ）と、中国の制作スタジオであるKamengに分かれていました。最初のCOVID-19ロックダウンの真っただ中で制作を立ち上げ、全員がリモートで働くことになったのです。",[39,838,839],{},"リモートワークによって、すぐに現実的な問題が発生しました。「同僚の画面をチラッと見れば、今どこまで進んでいるかが分かる、ということはできません」とCélineは説明します。「すべてを一元化する必要があります。」制作は、誰かが物理的にその場にいなくても、ショットの確認、フィードバック、進捗の追跡ができる手段を必要としていました。",[39,841,842],{},"スプレッドシート方式はほとんど即座に破綻しました。スプレッドシートの更新は時間がかかり、制作全体で何が起きているかを把握するのにも不十分です。「どのショットがこのアセットを使っていて、どのエピソードで出てくるのか？」といった基本的な問いに答えることは、技術的には可能でも苦痛を伴いました。より根本的には、チームは優先順位が別にあるときにスプレッドシートを更新しないため、制作コーディネータは、価値の高い仕事をする代わりに、ステータス更新のために人を追いかける膨大な時間を費やすことになります。",[39,844,845],{},"Frankとの以前の会話を思い出し、CélineはKitsuを試すことにしました。オープンソースだったため、テストすること自体にコスト面の障壁がありませんでした。その実験は成功しました。「ネタバレですが、私たちは二度と戻りませんでした。」",[66,847,849],{"id":848},"_3-studio-wide-deployment-in-2021","3. 2021年、スタジオ全体への展開",[43,851,853],{"className":852},[20,46],[48,854],{"src":855,"className":856,"alt":857,"loading":54,"width":55,"height":56,"srcSet":858,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/05/3-2.png",[52],"Studio scale","https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/05/3-2.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/05/3-2.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/05/3-2.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/05/3-2.png 1920w",[39,860,861],{},"2021年までに、Kitsuは単一制作の実験から、スタジオ全体のツールへと移行していました。タイミングはFOSTの最初の大きな成長フェーズと重なります。Célineはまだ正式にスタジオヘッドではありませんでしたが、すでに戦略的な意思決定にも関わっており、制作トラッキングは「本当に必要なテーマ」になっていました。",[39,863,864],{},"スタジオはすでに、一部の共同制作でクライアントからShotGrid（当時はShotgun、現在はFlowと呼ばれる）の使用を求められ、使わざるを得なくなっていました。だが経験は好ましいものではありません。専任のIT／開発チームがいない状況では、ShotGridのようなエンタープライズソフトのセットアップと保守にかかる要求は、現実的ではなかったのです。",[39,866,867],{},"Kitsuは別の道を提示しました。FOSTは、稼働中のすべての制作にKitsuを導入しました。制作を担当する2つの米国の共同制作、FOSTでプリプロを行い他所で制作を行う2つのフランスのシリーズ、そして複数のティザーです。プロジェクトごとの人数は5〜30人と幅があり、ソフトウェアの限界を実際に検証し、より大きな規模に進む前に何を開発する必要があるかを特定できるだけの規模でした。",[66,869,871],{"id":870},"_4-splinter-cell-a-change-of-scale-in-2023","4. Splinter Cell：2023年、スケールの変化",[43,873,875],{"className":874},[20,46],[48,876],{"src":877,"className":878,"alt":879,"loading":54,"width":55,"height":56,"srcSet":880,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/05/4-2.png",[52],"Splinter Cell","https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/05/4-2.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/05/4-2.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/05/4-2.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/05/4-2.png 1920w",[39,882,883,884,886],{},"本当の試練は",[802,885,879],{},"で訪れました。Netflixのアニメーションシリーズ――各シーズン8話ずつ、1話あたり22分。これはFOSTがこれまでに手がけた中で最大級のプロジェクトでした。導入前、FOSTのパリスタジオには約60人がいました。この単一制作は、パリとアンゴレームで合計150人規模まで拡大させたのです。",[39,888,889],{},"この規模でなぜ精度が重要なのかを数字は示します。制作全体における1日遅れは、150人日分の損失に相当します。制作がズレていく余地はありません。",[39,891,892,893,895],{},"Célineのチームは、2021年のテストから導いた「直面する課題」を見据えた上で",[802,894,879],{},"に臨みます。彼らはそれらを4つの具体的な問題に分解しました。",[82,897,898,907,913,919],{},[85,899,900,903,904,906],{},[261,901,902],{},"外部のプリプロ制作の取り込み"," - ",[802,905,879],{},"のプリプロは、デンマークのスタジオであるSun Creatureが担当し、ShotGridで管理されていました。FOSTは、データを手作業で再入力せずに、その制作内容をKitsuへ取り込む必要がありました。",[85,908,909,912],{},[261,910,911],{},"一元化されたクォータ（見積枠）管理"," - およそ10の部門に150人規模の体制では、スーパーバイザーは、問題が発生してから何週間も後に届けられるレポートではなく、リアルタイムの制作進捗が見える必要がありました。",[85,914,915,918],{},[261,916,917],{},"見積もりとレビューのためのスーパーバイザー用ツール"," - アニメーション部門だけで28人いました。スーパーバイザーは、エピソード単位でショットの作業負荷を見積もり、割り当てられたショットを確認・管理できる「ひとつの場所」を必要としていたのです。",[85,920,921,924],{},[261,922,923],{},"制作ソフトとKitsuの接続"," - アーティストは、自発的に制作トラッキングツールを更新することは通常ありません。解決策は自動化でした。パイプラインソフトを接続し、人の手による介入を求めなくてもステータス更新が行われるようにすることです。",[66,926,928],{"id":927},"_5-the-solutions-fost-built","5. FOSTが作り上げたソリューション",[39,930,931],{},"FOSTのストーリーが他のスタジオにとって特に役立つのは、彼らが単にKitsuを採用しただけではなく、拡張したからです。小さなパイプラインチーム（3人それぞれが複数の役割を担い、合計するとだいたい1.5フルタイム換算）は、スタジオのパイプラインの土台となる一連のツールを開発しました。",[933,934,936],"h3",{"id":935},"kitsunator-importing-sun-creatures-pre-production","Kitsunator：Sun Creatureのプリプロを取り込む",[39,938,939],{},"データ取り込みの問題を解決するため、FOSTはKitsunatorを開発しました。これはSun Creatureが提供する標準化されたExcelリードシートを読み取り、ブレイクダウン、メタデータ、レイアウトブリーフを自動的にKitsuへ取り込みます。別途提供される画像・動画のアセットは、インポート中に自動で再リンクされます。その結果、手作業のデータ入力なしでKitsu上に完成したプリプロが構築できました。",[39,941,942],{},"ポイントは、事前にSun Creatureと標準データ形式について合意しておくことでした。こうしたスタジオ間のデータ標準化は、パイプラインの会話では見落とされがちですが、自動化を可能にするのはまさにそこです。",[933,944,946],{"id":945},"validation-page-a-supervisor-hub","Validation Page：スーパーバイザーのハブ",[39,948,949,950,952],{},"FOSTが",[802,951,879],{},"向けに開発していた時点では、Kitsuにはスーパーバイザー専用のインターフェースがありませんでした。アーティストには「My Tasks」ページ（自分に割り当てられたすべてを一元的に見る場所）がありましたが、スーパーバイザーには同等のものがありません。そこでFOSTはこの開発を、CGWireに直接依頼しました。その結果、特定の部門に関するチェックをひとつの場所で集約するページが完成し、アーティストがすでに持っているのと同じくらいの明快さをスーパーバイザーにも提供できるようになりました。",[933,954,956],{"id":955},"real-time-quota-tracking","リアルタイムのクォータ追跡",[39,958,959],{},"FOSTにおけるクォータ追跡は2段階で動作します。",[39,961,962],{},"各エピソードの開始時、スーパーバイザーはショットごとに作業にかかる見込み時間を見積もり、その合計を見積制作時間として算出し、予算と比較できるようにします。見積が出る回もありますが、シリーズ全体でバランスが取れることを期待しています。",[39,964,965],{},"制作中は、FOSTがタイムシートを使って、これらの見積に対する実時間を追跡します。毎週金曜日、制作コーディネータが社内チャットでアーティストに「時間を入力してほしい」とクリエイティブ投稿で呼びかけます。そのデータはKitsuへ流れ込み、APIを通じて抽出され、「重要なクォータの見え方」を正確に示すよう設計されたカスタムのスプレッドシートに表示されます。",[39,967,968],{},"「最初はCSVでエクスポートしていました」とCélineは説明します。「でもすぐにAPIへ移行し、そのデータを、追跡したいクォータと、それをどう可視化したいかに合わせて設計したスプレッドシートへ出すようにしました。データ自体はKitsuから来ていて、表示の仕方の問題です。」",[933,970,972],{"id":971},"automated-scene-build-via-kitsu-casting","Kitsuキャスティングによる自動シーン構築",[39,974,975,977],{},[802,976,879],{},"はHarmony（Toon Boomのアニメーションソフト）で制作されました。以前は、シーン構築（必要なすべてのアセットを組み合わせて、動作するHarmonyのシーンを作ること）は手作業で行われていました。FOSTは、Kitsuのキャスティングデータ（どのショットにどのアセットが出るか）を読み取り、スタジオサーバーから必要なファイルを取り出して、シーンを自動的に組み立てるツールを作りました。さらに、別のツールがKitsuのメタデータとして保存されているレイアウトブリーフをHarmonyシーンへ直接注入します。Célineが指摘した通り「アーティストがHarmonyの中にいるなら、必ずしもKitsuを見ているとは限らない」からです。",[66,979,981],{"id":980},"_6-working-with-cgwire-during-scale-up","6. スケールアップの過程でCGWireと協業する",[39,983,984],{},"Kitsuインスタンスを、8,000ショットを超える制作に対応できるようスケールさせるのは簡単ではありません。そこにタスク、バージョン、履歴が掛け算で加わるからです。FOSTはCGWireのクラウド提供ではなく、自社ホスト型のインスタンスを運用していました。そのためITチームがインフラ管理を直接担う必要があります。サーバー負荷が増えるにつれて、パブリッシュやレイテンシに関する問題に直面しました。",[39,986,987,988,990],{},"制作を通じてFOSTはCGWireチームと密に連絡を取り続けました。不具合レポートや改善案を共有し、年に3〜4回、よりフォーマルな定例確認の場も設けています。重要なのは、Célineが強調したように、FOSTがフィードバックを行う際には",[802,989,879],{},"だけでなくすべての制作の文脈で整理していたことです。そのための修正や改善が、特定の状況を解決するだけに留まらず、Kitsuのより広いユーザーベースに役立つようになりました。",[39,992,993],{},"スタジオとソフトウェアベンダーが制作中にこのように継続的に協力することは、アニメーション制作ソフトでは珍しいことです。それは、Kitsuがオープンソースであることと、CGWireのビジネスモデルが「スタジオが本当にツールで成功すること」に依存しているからでもあります。",[66,995,997],{"id":996},"_7-after-splinter-cell-consolidation-and-new-tools","7. 『Splinter Cell』の後：統合と新ツール",[43,999,1001],{"className":1000},[20,46],[48,1002],{"src":1003,"className":1004,"alt":1005,"loading":54,"width":55,"height":56,"srcSet":1006,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/05/5-3.png",[52],"Consolidation","https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/05/5-3.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/05/5-3.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/05/5-3.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/05/5-3.png 1920w",[39,1008,1009,1011],{},[802,1010,879],{},"のシーズン1は現在Netflixに配信されています。シーズン2は制作中です。その一方でFOSTは、プリプロ段階の長編映画2本とシリーズ2本も並行して進めています。",[39,1013,1014],{},"スタジオはKitsuの基盤づくりを継続しています。",[82,1016,1017,1020,1023,1026],{},[85,1018,1019],{},"Kitsunatorにはエクスポート機能が追加されました。FOSTは他スタジオのプリプロも行うようになり、そうしたスタジオが使える形式で構造化されたデータを納品する必要が出てきたためです。リードシートのマトリクス（行列）は、異なるクライアントの要件に合わせて柔軟に対応できるよう標準化されました。",[85,1021,1022],{},"Kitsu Timeshitと呼ばれるツールは、タスクステップごとに、人物ごとのクォータデータをリアルタイムで取得し、さらにショットの帰属（アトリビューション）も追跡します。これは、複数部門にまたがる制作で繰り返し現れる課題です。",[85,1024,1025],{},"社内で「the Elephant」と呼ばれるレトロプランニングツール（サイズが大きく、最初は動きが遅いことに由来）は、各制作の開始時に見積クォータをもとに作成され、その後は実際のKitsuデータで継続的に更新されます。大規模な共同制作ではスーパーバイザーがこれを使ってシミュレーションを行います。「このチームが休暇を申請したらスケジュールはどうなる？」「このエピソードはもっと長くなるとどうなる？」――制作計画にとって欠かせない存在になっています。",[85,1027,1028],{},"またFOSTは、プロジェクトが完了した後にアーティストが自分のショットを見せたいときのために、デモリール用ツールも作りました。このツールはKitsuのデータとショットの帰属を読み取り、各アーティストのショットの最新バージョンを自動で取り出し、ロゴや著作権情報を追加して、納品の準備ができたフォルダ構成にすべてパッケージします。そうなると、アーティストごとの本来数時間かかっていた手作業が自動化されます。",[66,1030,1032],{"id":1031},"_8-kitsu-as-the-studios-central-data-layer","8. スタジオの中核となるデータレイヤーとしてのKitsu",[39,1034,1035],{},"Célineの講演の貫くテーマは、FOSTがKitsuをどう捉えているかが変わったことです。Kitsuは単なる制作トラッキングツールではなく、スタジオ全体のパイプラインにおける中心的なデータレイヤーでもある、という考え方に移行しています。",[39,1037,1038],{},"ショットの所要時間、ショットリスト、リユース情報、シーン構築、レイアウトブリーフ、レビュー（クライアントレビューを含む）、タイムシートのデータ、キャスティング情報――それらすべてがKitsuを経由する、あるいはKitsuに流れ込みます。さらにスタジオは、Kitsuと連携しながらポストプロダクションのパイプラインも開発し続けています。特に編集から返ってくる変更、たとえばショット順の入れ替え、削除されたショット、所要時間の変更などに対応するためです。",[39,1040,1041],{},"これは、きちんと実装された制作トラッカーが到達する先です。すべての部門、そしてすべてのツールが読み取り／書き込みできる「唯一の真実の情報源」です。",[66,1043,1045],{"id":1044},"key-takeaways","Key Takeaways",[39,1047,1048],{},"FOSTのストーリーは、大規模な開発チームを持っていることや、特別に大きな予算があることがポイントではありません。かつて彼らのパイプラインチームは、1.5フルタイム換算の体制でした。ツールは段階的に作られ、パンデミック下での単一のリモート制作から始まっています。",[39,1050,1051],{},"進展の流れとして、注目すべき点は次の通りです。",[1053,1054,1055,1058,1061,1064,1067],"ol",{},[85,1056,1057],{},"制作の危機（COVID下のリモートワーク）が、より規律あるトラッキングのアプローチを強制しました。",[85,1059,1060],{},"Kitsuがオープンソースで導入障壁がなかったため、組織的なリスクを抱えることなく実験できました。",[85,1062,1063],{},"ある制作で成功したことで、スタジオ全体への導入に向けた社内の確信が育ちました。",[85,1065,1066],{},"中規模制作での意図的なテストによって、次の段階で何を作る必要があるかが明確になりました。",[85,1068,1069],{},"標準提供が満たしきれない部分は、カスタムツールで補い、その改善をベンダーへフィードバックしました。",[39,1071,1072],{},"結果として、スタジオは単一制作で60人から150人規模へと拡大しつつ、船を進路から外さない状態を保てたのです。",[39,1074,1075],{},"Célineは、上述した複数のツールを作ったパイプラインアーティストAngeleからの言葉で締めくくりました。「KitsuのAPIとドキュメントは、少なくとも一度は、地獄のようなナビゲーションではありません。こうしたことはソフトウェアでは珍しいので、口に出して言う価値があるくらいです。」",[39,1077,1078],{},"スプレッドシートと手作業の追いかけで制作を回しているスタジオにとっては、もしかすると最も実行可能な持ち帰り事項がこれかもしれません。開始するためのハードルは、これまでで一番低いです。",{"title":53,"searchDepth":336,"depth":336,"links":1080},[1081,1082,1083,1084,1085,1092,1093,1094,1095],{"id":784,"depth":336,"text":785},{"id":817,"depth":336,"text":818},{"id":848,"depth":336,"text":849},{"id":870,"depth":336,"text":871},{"id":927,"depth":336,"text":928,"children":1086},[1087,1089,1090,1091],{"id":935,"depth":1088,"text":936},3,{"id":945,"depth":1088,"text":946},{"id":955,"depth":1088,"text":956},{"id":971,"depth":1088,"text":972},{"id":980,"depth":336,"text":981},{"id":996,"depth":336,"text":997},{"id":1031,"depth":336,"text":1032},{"id":1044,"depth":336,"text":1045},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/05/0-3.png",{"updated_at":1098,"FOSTは、2018年にDamien BrunnerとThibaut Rubyによって設立された独立系2Dアニメーションスタジオです。2人はフランスの制作会社Folivariも運営しています。FOSTはサービススタジオの役割を担っており、フランスの独立系からNetflixまで幅広いクライアントに対して、プリプロダクション、制作、アニメーション、そしてその間のあらゆる業務を扱います。8年の間にスタジオは、パリの2つの建物とアンゴレームにある3つ目の拠点を舞台に、4本の短編映画、13本のシリーズ、7本の長編映画、8本のティザー、5本のタイトルシークエンスに貢献してきました。\" featured_at":350,"visibility":351},"2026-05-25T12:37:10.000+02:00","/blog-i18n/ja/fost-animation-studio-kitsu",{"title":711,"description":53},"fost-animation-studio-kitsu","blog-i18n/ja/fost-animation-studio-kitsu/index",[1104],{"id":1105,"name":1106,"slug":1107,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":1108},"69c20df4cb09d8000107cfe7","Customer Stories","customer-stories","https://cgwire.ghost.io/tag/customer-stories/","usuV8eDZ4_O7O5hW40XsV9yVxJ0X8slD1oXWSbfEVBk",{"id":1111,"title":1112,"authors":1113,"body":1115,"description":1119,"extension":346,"feature_image":1310,"html":11,"meta":1311,"navigation":352,"path":1313,"published_at":1314,"seo":1315,"slug":1316,"stem":1317,"tags":1318,"__hash__":1320,"updated_at":1312,"「Quickdraw Always Wins（クイックドロー・オールウェイズ・ウィンズ）」と題された彼の講演は、技術的なウォークスルーであり、哲学的な学びでもあり、アニメーション制作スタジオを日々運営する現場のリアルに完全に根ざした内容でした\" featured_at":350,"visibility":351},"blog/blog-i18n/ja/build-a-better-feedback-culture-with-kitsu-tetsuo-animation/index.md","キツー（Kitsu）で手に入れた、より良いフィードバック文化：テツオ・アニメーションの挑戦",[1114],{"id":8,"name":9,"slug":10,"profile_image":11,"cover_image":11,"bio":11,"website":11,"location":11,"facebook":11,"twitter":11,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":12},{"type":14,"value":1116,"toc":1302},[1117,1120,1128,1131,1134,1137,1140,1144,1147,1150,1153,1156,1159,1162,1165,1173,1176,1180,1183,1191,1194,1208,1211,1219,1222,1225,1229,1232,1235,1238,1241,1245,1248,1251,1259,1262,1265,1269,1272,1275,1278,1281,1285,1293,1296,1299],[39,1118,1119],{},"2026年のキツー・サミット（Kitsu Summit）で、テツオ・アニメーション（Tetsuo Animation）の創業者兼アニメーション・スーパーバイザーであるクリス・ウンターベルグ（Chris Unterberg）が登壇し、どのアニメーション制作会社にもあるのに、あまりオープンには語られないテーマを共有しました。それが「フィードバック」です。単に受け取り方ではなく、アニメーターにとって本当に役に立つ形で、明確に、ビジュアルに、そして分かりやすく伝えるにはどうすればいいのか。",[43,1121,1123],{"className":1122},[20,46],[48,1124],{"src":1125,"className":1126,"alt":53,"loading":54,"width":55,"height":56,"srcSet":1127,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/05/0.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/05/0.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/05/0.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/05/0.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/05/0.png 1920w",[39,1129,1130],{},"彼の講演は「Quickdraw Always Wins（クイックドロー・オールウェイズ・ウィンズ）」というタイトルで、技術的なウォークスルーであり、哲学的なレッスンでもあり、アニメーション制作スタジオを日々運営する現場のリアルに完全に根ざした内容でした。",[39,1132,1133],{},"クリスは、ドイツを拠点にキャラクターアニメーションを制作するスタジオ「テツオ・アニメーション」を運営しています。制作対象は、ゲーム、広告、テレビシリーズ、そしてシネマティックスです。さらに彼は、キツー（Kitsu）自体にも積極的に貢献しており、レビューシステムのペン圧サポートを改善しました。",[39,1135,1136],{},"彼の視点がとりわけ価値あるのは、生産工程のど真ん中にいるからです。「自分は、クライアントと他のステークホルダー、そして自分のチームの間に立っているんです」と彼は説明しました。「クライアントからフィードバックを受け取るだけでなく、それをチームに渡し、うまく機能しない場合は彼らからもフィードバックをもらいます。」",[39,1138,1139],{},"机上の空論ではなく、彼は毎日、そのフィードバック・ループの中で生きています。",[66,1141,1143],{"id":1142},"the-problem-with-vague-feedback","曖昧なフィードバックが抱える問題",[39,1145,1146],{},"クリスは、すぐに空気を決める、自身の初期キャリアのエピソードから話を始めました。",[39,1148,1149],{},"上司がやって来て、クリスが作った何かを見て、シーン内のものをすべて選択し、削除を押し、復元できないようにファイルを保存してから、「もう一度やって」と言ったのです。説明なし。指示なし。",[39,1151,1152],{},"「何も学べなかったんです」とクリスは言いました。「ただストレスが増えただけでした。同じ時間の中で、今度は2回やらないといけないから、スコープが広がっただけです。」",[39,1154,1155],{},"しかし、彼が注意深く指摘したのはここからです。フィードバックは、それ自体が答えではない、ということです。「ショットへの“たまたまの”フィードバックというのは、その人が気にしていないか、見ていないか、時間がないかのどれかです。」",[39,1157,1158],{},"フィードバックは、学習のために必要であり、制作を一貫させるために必要であり、より多くの目がより多くの問題を見つけるために必要です。",[39,1160,1161],{},"本当の問題は、曖昧で実行不可能なフィードバックです。",[39,1163,1164],{},"彼は、彼の受信箱に定期的に届くような種類のメールの例を共有しました。「ロゴはもう少し左に」「もう少し大きく」といった、長い箇条書きです。ですがクリップのどの瞬間でしょうか？ ロゴのどのインスタンスでしょうか？ どれくらい大きく？ 「要するにこう言っているだけです。“変に見えるから、違うものにしてくれ”」",[43,1166,1168],{"className":1167},[20,46],[48,1169],{"src":1170,"className":1171,"alt":53,"loading":54,"width":55,"height":56,"srcSet":1172,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/05/1.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/05/1.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/05/1.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/05/1.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/05/1.png 1920w",[39,1174,1175],{},"構造がないと、チームは推測し始めます。修正は積み重なっていきます。アーティストは燃え尽きます。「私たちのアーティストは、たとえプロであっても、慣れていても、最良のものを納品できるところまで行き着かなくなってしまうんです。」",[66,1177,1179],{"id":1178},"the-solution-visual-feedback-in-kitsu","解決策：キツー（Kitsu）でのビジュアル・フィードバック",[39,1181,1182],{},"クリスの答えは、文章による説明を、フレーム上に直接描き込む注釈に置き換えることです。キツーのレビューシステムでは、レビュアーが動画フレーム自体に描画でき、その注記をタイムライン上の特定のポイントに紐づけることができ、さらに参照している瞬間へ直接ジャンプできる形でコメントを残せます。",[43,1184,1186],{"className":1185},[20,46],[48,1187],{"src":1188,"className":1189,"alt":53,"loading":54,"width":55,"height":56,"srcSet":1190,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/05/2.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/05/2.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/05/2.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/05/2.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/05/2.png 1920w",[39,1192,1193],{},"彼が推奨するツールは意図的にシンプルなので、講演タイトルの「quickdraw（クイックドロー）」という呼び名になっています。",[82,1195,1196,1199,1202,1205],{},[85,1197,1198],{},"動きの方向を示す矢印",[85,1200,1201],{},"ラベルや文字（「Aを丸で囲んで、キャラクターAを指していると言えば、誰もが左のキャラクターのことを意味していると分かる」）",[85,1203,1204],{},"関連する領域を指す線付きの、フレーム上に直接書くテキスト",[85,1206,1207],{},"タイミングチャート：2Dアニメーションの手法で、フレーム間の間隔を示し、動きがどれくらい速い／遅いと感じるべきかを伝える",[39,1209,1210],{},"また、注釈を即座に読み取れるように、色分けの仕組みも使っています。ピンクは一般的なメモ用。ブルーはアクションラインと構造。オレンジはグラフィック要素用です。「自分で好きにルールを作ってもいいですよ。たとえば、若手は全部グリーンにしてしまうこともできます。色を使った構造を考えるだけで、さまざまな観点が分かれて整理され、何を言いたいのか見えやすくなるんです。」",[43,1212,1214],{"className":1213},[20,46],[48,1215],{"src":1216,"className":1217,"alt":53,"loading":54,"width":55,"height":56,"srcSet":1218,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/05/4.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/05/4.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/05/4.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/05/4.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/05/4.png 1920w",[39,1220,1221],{},"彼が特に挙げたキツーの機能の1つが、フレームに紐づくコメントです。コメントの中で「@frame」と入力すると、キツーがクリック可能なリンクを挿入し、視聴者を動画のその瞬間へ直接ジャンプさせます。",[39,1223,1224],{},"さらに、「ダッシュ（-）→フレーム参照→その後にメモ」という一貫した構造と組み合わせることで、彼のチームは社内ツールを作り、これらのコメントをタスクリストに変換し、完了した項目はグリーンに切り替わるようにしています。メモはMayaとも同期するため、コメントをクリックすれば3Dソフト上で対応するフレームへジャンプできます。",[66,1226,1228],{"id":1227},"using-kitsus-sync-feature-for-shared-review-sessions","Kitsuの同期（Sync）機能を使って、共同レビュー・セッションを実現する",[39,1230,1231],{},"クリスが頼りにしている機能の1つが、キツーの同期再生です。",[39,1233,1234],{},"彼は、毎日のレビューでそれを使います。共有プレイリストを作成し、クライアントであれチームメンバーであれ、全員が同じフレームを同じタイミングで見られるようにするのです。レビュアーは、同時に同じフレームに描き込めます。",[39,1236,1237],{},"「同じプレイリストにいる複数のキツーユーザーで、会議を開けます。みんなが同じものに描けるということです。つまり、非常に具体的なことを、非常に具体的なタイミングで話し合えるんです。」",[39,1239,1240],{},"このレビュー・エンジンは、散らばったメールのスレッドを、1つの共有されたビジュアル記録に置き換えます。",[66,1242,1244],{"id":1243},"creating-a-safe-space-for-clients","クライアントにとっての「安心できる場」を作る",[39,1246,1247],{},"こうしたツールをクライアントに実際に使ってもらうには、「間違えたらどうしよう」という恐れを取り除く必要があります。",[39,1249,1250],{},"クリスは、キツー内に専用のクライアント向けレビュー用タスクを構築しました。メインの制作パイプラインとは切り離されており、クライアントにのみ表示され、議論対象として最新バージョンだけが表示されます。そして、キツーのステータス自動化機能を使って自動的に投入されます。",[43,1252,1254],{"className":1253},[20,46],[48,1255],{"src":1256,"className":1257,"alt":53,"loading":54,"width":55,"height":56,"srcSet":1258,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/05/3.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/05/3.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/05/3.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/05/3.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/05/3.png 1920w",[39,1260,1261],{},"彼は、タスク上で「C Review」というステータスを設定することで、その流れをトリガーします。すると、手動のアップロードを必要とせず、最新のプレビューがクライアント向けレビュー用タスクに自動で送られます。ファイルの転送は、キツーの「import last revision（最後のリビジョンを取り込む）」機能が担当します。「ここであなたが何をしても、それはあなたのものです。あなたのことを見ているのは私か、ほかのリードだけで、誰も失敗しても見ません。それに、何も壊しようがないようにしてあります。」",[39,1263,1264],{},"また、クライアントにはラフで速く描くことも勧めます。「速くて適当であるほうがいいです。マウスのスピードを使えば、完璧な画像ではなく、“圧力に応じている”ような感覚で下書きを作れます。」重要なのは、芸術的な正確さではなく明確さです。",[66,1266,1268],{"id":1267},"different-people-different-feedback-one-shared-language","人によってフィードバックは違う。けれど共通言語は1つ。",[39,1270,1271],{},"クリスの講演から得られる重要な洞察は、フィードバックの質は「誰が」それを出しているかに大きく左右される、ということです。",[39,1273,1274],{},"アートディレクターは求めるものを理解していますが、それを説明する時間はほとんどありません。プロデューサーはクライアント側の言葉を理解しています。ブランディングチームはロゴの配置に関心があります。ディレクターは、作品全体の感情的な流れを考えています。",[39,1276,1277],{},"「それぞれの目が、最終的なプロダクトにとって重要です。」彼の目標は、全員をアーティストに変えることではありません。役割に関係なく、すべてのステークホルダーに対して、「見えているもの」を伝えるための共通のビジュアル言語を渡すことです。",[39,1279,1280],{},"「全員がビジュアルのフィードバックを出す側に回れるようになれば、ショットのオーナーシップがチームに生まれます。そして、コミュニケーションのためのツール、チーム全体が共有する“言語”を作れます。色の言語、ディテールの言語、構造化されたフィードバックの出し方――そうしたものです。」",[66,1282,1284],{"id":1283},"key-takeaway-for-animation-studios","アニメーション制作会社への要点",[43,1286,1288],{"className":1287},[20,46],[48,1289],{"src":1290,"className":1291,"alt":53,"loading":54,"width":55,"height":56,"srcSet":1292,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/05/5.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/05/5.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/05/5.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/05/5.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/05/5.png 1920w",[39,1294,1295],{},"クリスの講演は、フィードバックを“後回しのもの”ではなく、アニメーション制作会社にとって重要なツールとして扱うべきだという、実務的な主張です。",[39,1297,1298],{},"そのツールは、今日のキツーの中に揃っています。描き込み式の注釈、フレームに紐づいたコメント、共有された同期再生、そしてクライアント向けレビュー用パイプラインのステータス自動化……。制作会社に必要なのは、それらを一貫して使い続けるための規律と、クライアントを含む“全員”を巻き込みたいという意志です。",[39,1300,1301],{},"「全員を招いて、フレームに描いてもらってください。クライアントも招いて、ステークホルダーも招いてください。会議では画面を共有して、ヘタな絵をその場で描いてみせて、“こうやるんだよ”と見せればいいんです。」",{"title":53,"searchDepth":336,"depth":336,"links":1303},[1304,1305,1306,1307,1308,1309],{"id":1142,"depth":336,"text":1143},{"id":1178,"depth":336,"text":1179},{"id":1227,"depth":336,"text":1228},{"id":1243,"depth":336,"text":1244},{"id":1267,"depth":336,"text":1268},{"id":1283,"depth":336,"text":1284},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/05/5-1.png",{"updated_at":1312,"「Quickdraw Always Wins（クイックドロー・オールウェイズ・ウィンズ）」と題された彼の講演は、技術的なウォークスルーであり、哲学的な学びでもあり、アニメーション制作スタジオを日々運営する現場のリアルに完全に根ざした内容でした\" featured_at":350,"visibility":351},"2026-05-22T12:12:53.000+02:00","/blog-i18n/ja/build-a-better-feedback-culture-with-kitsu-tetsuo-animation","2026-05-12T12:11:00.000+02:00",{"title":1112,"description":1119},"build-a-better-feedback-culture-with-kitsu-tetsuo-animation","blog-i18n/ja/build-a-better-feedback-culture-with-kitsu-tetsuo-animation/index",[1319],{"id":1105,"name":1106,"slug":1107,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":1108},"N011t-VPGaMNz1THyHSsRySAw6EZubladSmsa1pEFu8",{"id":1322,"title":1323,"authors":1324,"body":1326,"description":1330,"extension":346,"feature_image":1628,"html":11,"meta":1629,"navigation":352,"path":1631,"published_at":1632,"seo":1633,"slug":1634,"stem":1635,"tags":1636,"__hash__":1638,"updated_at":1630,"featured_at":350,"visibility":351},"blog/blog-i18n/ja/how-vfx-supervisor-manages-hundreds-of-projects-with-kitsu/index.md","VFXスーパーバイザーのPete DraperがKitsuで18,000ショットと2,300アセットを管理するまで",[1325],{"id":8,"name":9,"slug":10,"profile_image":11,"cover_image":11,"bio":11,"website":11,"location":11,"facebook":11,"twitter":11,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":12},{"type":14,"value":1327,"toc":1613},[1328,1331,1334,1342,1345,1348,1351,1355,1358,1361,1364,1372,1375,1379,1387,1390,1393,1396,1399,1402,1405,1409,1412,1415,1418,1426,1429,1432,1436,1439,1442,1446,1454,1457,1460,1463,1466,1470,1473,1481,1484,1487,1491,1494,1502,1505,1509,1512,1515,1523,1526,1529,1532,1535,1539,1542,1550,1553,1556,1559,1563,1566,1569,1572,1575,1578,1581,1584,1587,1591,1594,1597,1601,1604,1607,1610],[39,1329,1330],{},"2026年のKitsu Submitでのプレゼンを通して、Pete Draperは参加者に、自身のキャリアにおける2つの大きな章と、CGWireが開発したオープンソースの制作トラッキングプラットフォームであるKitsuが、両方の“業務の中核（オペレーショナル・バックボーン）”になった経緯を語りました。",[39,1332,1333],{},"彼のストーリーは、「正しいツールを選べば、小さなチームでも大規模な複雑さを、正気を保ちながら管理できる」ということの模範です。",[43,1335,1337],{"className":1336},[20,46],[48,1338],{"src":1339,"className":1340,"alt":53,"loading":54,"width":55,"height":56,"srcSet":1341,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/0.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/04/0.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/04/0.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/04/0.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/0.png 1920w",[39,1343,1344],{},"Peteは、業界で約30年近くのキャリアを持つVFXスーパーバイザーです。2009年にインドでスタジオを立ち上げ、そこで約40〜50本の映画に携わりました。インドの話題作『RRR』もその一つで、この作品はアカデミー賞の検討のために提出され、国際長編映画部門で23名のノミネート候補のリストにまで到達しました。",[39,1346,1347],{},"その後、彼は広告テクノロジー（バーチャル・プロダクト・プレイスメント）の領域へ移行し、Ryffという会社で重要な制作リーダーとして活躍しました。",[39,1349,1350],{},"彼の講演は、両方の経験をそのまま土台にしていますが、プレゼンの大部分はRyffにフォーカスしていました。そこでは、従来のVFXスタジオが通常直面しない種類の制作上の難題が待っていたのです。",[66,1352,1354],{"id":1353},"the-problem-hundreds-of-projects-no-central-spine","課題：数百のプロジェクトがあるのに、中心となる背骨がない",[39,1356,1357],{},"Peteが2022年にRyffに加わったとき、同社は彼が「ナプキンの裏（back of a napkin）」と呼んだ仕組みで運用していました。多くの仕事を扱っていたにもかかわらず、制作インフラがあらゆる方向に分断されていたのです。",[39,1359,1360],{},"中央の制作ストレージはなく、独立したGoogleスプレッドシートが多数存在し、3拠点にチームが分散。ローカルマシンの性能が足りないため、レビューはリモートのAWS環境で行われていました。さらに、あらゆる種類の指標やレポーティングの仕組みもありませんでした。",[39,1362,1363],{},"Peteが言うように、「基本的にはすべてが請負（コントラクター）やフリーランサー、開発者を通じて行われていて、制作プロセスとして何がどう追跡されているかは、まったく把握できていなかった」のです。",[43,1365,1367],{"className":1366},[20,46],[48,1368],{"src":1369,"className":1370,"alt":53,"loading":54,"width":55,"height":56,"srcSet":1371,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/2-1.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/04/2-1.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/04/2-1.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/04/2-1.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/2-1.png 1920w",[39,1373,1374],{},"なぜそれがこれほど重要だったのかを理解するには、Ryffが実際に何をしていたのかを知る必要があります。",[66,1376,1378],{"id":1377},"the-business-virtual-product-placement-at-scale","事業：規模の大きいバーチャル・プロダクト・プレイスメント",[43,1380,1382],{"className":1381},[20,46],[48,1383],{"src":1384,"className":1385,"alt":53,"loading":54,"width":55,"height":56,"srcSet":1386,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/1.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/04/1.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/04/1.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/04/1.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/1.png 1920w",[39,1388,1389],{},"RyffはAIを使って映画やテレビ番組を分析するプラットフォームを運営しており、ブランドの差し込みができるように、表面（サーフェス）、画面（スクリーン）、空のスペースをコンテンツが撮影され配信された後にデジタルで挿入できる箇所として特定していました。ディナーシーンでテーブル上にブランドロゴが現れるような場合や、カーチェイスの間に車窓越しに看板が差し替えで見えるような場合です。",[39,1391,1392],{},"同社には2種類のクライアントがいました。コンテンツの所有者（番組や映画を提供する側）と、そのコンテンツの中に商品を配置するために支払うブランドです。この2つを結びつけることで、極めて複雑な制作マトリクスが生まれます。たとえば1つの契約（ディール）で、同じブランドに関する10件のプレイスメントが、5つの別の番組に必要になることがあります。しかもその契約の権利は、特定の地域や時間帯にのみライセンスされています。ライセンスが切れると別のブランドが同じプレイスメントの場所に入ってくるため、コンポジット全体を新しいアセットで作り直す必要が出てきます。",[39,1394,1395],{},"PeteがRyffを離れる時点では、Ryffの主要なストレージは約46,000タイトル、そして固有のプレイスメントはおよそ146,000件でした。",[39,1397,1398],{},"各プレイスメントは複数のショットに対応し得るため、実際のショット数はさらに指数的に増えます。",[39,1400,1401],{},"ある1番組（World Poker Tour）の1シーズンでは、チームは34話にまたがって約1,700ショットを処理し、各話には40〜100ショットが含まれていました。すべて、1話あたり24時間というターンアラウンドで対応します。",[39,1403,1404],{},"これは、スプレッドシートで解決できる種類の問題ではありません。",[66,1406,1408],{"id":1407},"discovering-kitsu-during-rrr","『RRR』の制作中にKitsuを知る",[39,1410,1411],{},"Peteが最初にKitsuに出会ったのは、2018年後半の『RRR』制作のときでした。彼のチームはすでにいくつかの制作トラッカーを試していました。Tactic、Cerebro、Ftrack、ShotGridなど。しかしどれも合いませんでした。",[39,1413,1414],{},"「CGWireのKitsuが、あるGoogle検索の途中でふと目に入ってきたんです」と彼は言います。",[39,1416,1417],{},"彼はそれをテストし、チームに見せました。すると反応はすぐに返ってきました。「制作担当だけじゃなく、アーティスト側も。とても分かりやすい。シンプルでした。たとえばTacticのように、コンピュータサイエンスの学位が必要な感じではありませんでした。」",[43,1419,1421],{"className":1420},[20,46],[48,1422],{"src":1423,"className":1424,"alt":53,"loading":54,"width":55,"height":56,"srcSet":1425,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/3.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/04/3.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/04/3.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/04/3.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/3.png 1920w",[39,1427,1428],{},"使いやすさという観点は、最初に見える以上に重要です。スタジオ環境では、トラッキングツールはチーム全員が一貫して使って初めて機能します。アーティストを混乱させたり、長いオンボーディングを必要とするシステムは、締切が迫りショットを素早く動かす必要がある“まさにその瞬間”に、まったく間違ったタイミングで摩擦を生みます。",[39,1430,1431],{},"KitsuはCOVIDパンデミックの時期にも役立ちました。リモートワークが現実的になったのは、どこにいてもアーティストがフィードバックやレビュー用のバージョンを受け取れたからです。まるで自分のスーパーバイザーが隣に座っているかのように。",[66,1433,1435],{"id":1434},"building-the-ryff-pipeline-on-kitsu","Kitsu上にRyffのパイプラインを構築する",[39,1437,1438],{},"PeteがRyffに参加したとき、Kitsuは彼の最初の大きな推奨でした。しかし、単に導入して「使ってください」と指示しただけではありません。",[39,1440,1441],{},"時間をかけて彼とチームは、その上に制作インフラ全体を構築しました。単なるレビュー／承認ツールとして使うだけでなく、複数のシステムをつなぐミドルウェアとして活用したのです。",[933,1443,1445],{"id":1444},"_1-a-centralized-asset-library","1. 中央集約されたアセットライブラリ",[43,1447,1449],{"className":1448},[20,46],[48,1450],{"src":1451,"className":1452,"alt":53,"loading":54,"width":55,"height":56,"srcSet":1453,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/4.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/04/4.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/04/4.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/04/4.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/4.png 1920w",[39,1455,1456],{},"最初の大きな構成要素は、共有アセットライブラリです。プラットフォームの別の貢献者が最初に開発したライブラリ構造を使って、チームはパイプラインを通過するすべてのブランドアセットごとのリポジトリを構築しました。2Dロゴ、3Dモデル、デジタル屋外広告のビルボード構造、オーバーパスモデルなど。すべてのアセットはRyffのS3クラウドストレージにリンクされ、進行中の制作プロジェクトにも接続されました。",[39,1458,1459],{},"ライブラリは約2,317アセットまで成長しました。各アセットは、単なる名前やサムネイルを超えた形でメタデータを保持しています。エントリーにはカテゴリ（化粧品、乗用車、自動車、食品・飲料など）、サブカテゴリ（たとえばアルコール飲料か非アルコールか）、3Dオブジェクトではミリメートル、2Dではピクセル単位での寸法、そしてそのアセットがブランドから提供されたものか、アーティストから入手したものか、Ryff内部で制作されたものかが記録されました。",[39,1461,1462],{},"寸法フィールドには、直接的な実用性がありました。Ryffのシステム内の各プレイスメントも、定義された“スペース”パラメータを持っています。この2つを照合することで、あるアセットが特定のプレイスメント位置に物理的に収まるかどうかをシステムが自動でフラグでき、そうでなければコンポジット段階でしか表面化しない種類のエラーを減らせます。",[39,1464,1465],{},"またライブラリは、ブランドの所有権や地域ごとのライセンス情報も追跡していました。これにより営業チームは強力な検索ツールを手に入れます。Peteが強調するように、「Salesは“Chanelに対してこれまで何をやった？”と聞けて、そこから全ショットをそのまま引っ張ってこられます。」",[933,1467,1469],{"id":1468},"_2-managing-clients-as-projects","2. クライアントをプロジェクトとして管理する",[39,1471,1472],{},"各ブランドの契約（ディール）は、Kitsuの中でそれぞれ独自のプロジェクトになりました。",[43,1474,1476],{"className":1475},[20,46],[48,1477],{"src":1478,"className":1479,"alt":53,"loading":54,"width":55,"height":56,"srcSet":1480,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/5.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/04/5.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/04/5.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/04/5.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/5.png 1920w",[39,1482,1483],{},"これらのプロジェクトは、作業中のショットだけでなく、どのアセットがどのプレイスメントに割り当てられているか、各差し込み（インサーション）の現在のステータス、そしてそれが会社のCRMやプロジェクト管理ツール上の契約とどう結びついているかも追跡していました。",[39,1485,1486],{},"KitsuをJiraに接続するのは大変でした。「JiraのAPIについてね」とPeteは、いら立ちをほとんど隠さずに指摘しました。「誰かあれと格闘したことあります？ええ、かなりひどいです。」現実的な解決策は、2つのシステムを“ライブ連携なしで”人間が照合できるように、JiraのチケットIDを各Kitsuプロジェクトに手作業でコピーすることでした。",[933,1488,1490],{"id":1489},"_3-playlists-as-version-control-across-campaigns","3. 複数キャンペーンにまたがるバージョン管理としてのプレイリスト",[39,1492,1493],{},"RyffのパイプラインにおけるKitsuの、より洗練された使い方の一つがプレイリストでした。というのも、同じショットが複数のブランドキャンペーンに対して同時に作業され得るため、バージョン番号だけでは、どのレンダーがどの契約に対応するのかを特定するには不十分だったのです。あるクライアント向けにはショットのバージョン5が正解かもしれませんが、同じシーンで別のクライアントが作業していれば、バージョン8が正解になることがあります。",[43,1495,1497],{"className":1496},[20,46],[48,1498],{"src":1499,"className":1500,"alt":53,"loading":54,"width":55,"height":56,"srcSet":1501,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/6.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/04/6.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/04/6.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/04/6.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/6.png 1920w",[39,1503,1504],{},"Peteのチームは、各Kitsuプレイリストを、対応する“差し込み順（インサーション順）の番号”で命名することで解決しました。プレイリストは、ショットを追加すると特定のバージョンに固定され、新しいバージョンが公開されても自動更新はされません。その結果、プレイリストは「どのバージョンがどのキャンペーンに属するか」を示す安定した記録になりました。 「差し込み順の同じ番号で実際のプレイリストを名付けることで、相関が取れるんです」と彼は言いました。",[933,1506,1508],{"id":1507},"_4-automating-project-creation-from-resolve","4. Resolveからのプロジェクト作成を自動化する",[39,1510,1511],{},"Ryffは主要なコンポジットツールとしてDaVinci Resolveを使用していました。これは、粒状感（グレイン）の一致精度、カラー空間の正確さ、そして技術レベルで入力に対して出力が一致していることを保証できる必要があったための、意図ある選択でした。ResolveはVPN上での本物のマルチユーザー協業もサポートしており、20名規模のリモートチームにとって重要でした。",[39,1513,1514],{},"Resolveのタイムライン上の各ビデオトラックは、単一の仮想プロダクトプレイスメントを表しています。トラック名はVP1、VP2、VP3…のように付けました。ResolveはプロジェクトデータをPythonからアクセス可能な形式で保存するため、チームはタイムライン構造を読み取り、手作業のデータ入力なしにKitsu内のショットを自動生成できるスクリプトを書きました。",[43,1516,1518],{"className":1517},[20,46],[48,1519],{"src":1520,"className":1521,"alt":53,"loading":54,"width":55,"height":56,"srcSet":1522,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/7.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/04/7.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/04/7.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/04/7.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/7.png 1920w",[39,1524,1525],{},"当初は、OpenTimelineIO（アプリ間で編集タイムラインをやり取りするための標準）を使ってタイムライン情報をエクスポートし、Kitsuのインポートツールに合わせたCSVファイルに変換していました。",[39,1527,1528],{},"その後、その“中間ステップ”を、Resolveの内部からKitsu APIに直接アクセスするスクリプトに置き換えました。OpenTimelineIOベースの方法から直接API方式への変更には、作業の約30％ほど手戻りが発生しましたが、その分、より高速で信頼性も高くなりました。",[39,1530,1531],{},"そのスクリプトは、ショットを作る以上のことをかなり多く実行します。1回の自動処理で、FFmpeg（コマンドラインのメディア処理ツール）を使ってマスターのエピソードファイルから個々のショットクリップを切り出し、各ショットに対応するKitsu互換のH.264プレビューを生成し、マッチムーブ作業用のJPEGシーケンスを作成し、制作ストレージ上のフォルダ構造を構築し、事前に用意したテンプレートからKitsuのプロジェクトを作成し、シーケンスやショットを投入し、コンフォーム（conform）QCクリップをアップロードし、すべてが作業可能になったことを部門の責任者に通知します。",[39,1533,1534],{},"テンプレートプロジェクト自体が独自の工夫でした。同じアーティストがすべての番組で作業し、タスク構造もプロジェクトごとにほぼ同じだったため、各プロジェクトを手作業でセットアップするのには大きな時間がかかっていました。 「僕らは、プロジェクトを“作る”ためにかける時間のほうが、実際にやる作業より長かったんです」とPeteは言います。このテンプレートスクリプトは、既存プロジェクトのタスクタイプ、タスクステータス、アーティスト割り当てなどを読み取り、それを丸ごと新しいプロジェクトに複製しました。",[66,1536,1538],{"id":1537},"coverage-metrics-and-the-art-of-defending-a-decision","カバレッジ指標と、判断を守る技術",[39,1540,1541],{},"チームがKitsuに組み込んだ、やや珍しいカスタム指標の一つが「coverage value（カバレッジ価値）」と呼ばれるものです。この指標は、ブランドのプレイスメントが実際にフレームのどれだけの割合をカバーしているかを測り、ショットの全時間をフレームごとに分析します。",[43,1543,1545],{"className":1544},[20,46],[48,1546],{"src":1547,"className":1548,"alt":53,"loading":54,"width":55,"height":56,"srcSet":1549,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/8.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/04/8.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/04/8.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/04/8.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/8.png 1920w",[39,1551,1552],{},"その理由は、技術的な面もあれば政治的な面もありました。ブランドのクライアントは、視認性を最大化するために、プレイスメントがフレームの一定割合をカバーするよう求めることがよくありました。 「Salesはこう言います。“よし、20パーセントくらい必要だ”」とPeteは話します。「聞こえは控えめな数字に聞こえるけど、20パーセントって、フレーム全部のそれだけです。かなりの量ですよね。」",[39,1554,1555],{},"基本的なコンピュータビジョン手法でカバレッジの割合を計算し、入力フレームと出力フレームを比較して差分を測ることで、チームはクライアントの要求を支持したり、逆に押し返すための“具体的な根拠”を作り出せるようになりました。たとえば「20パーセントのカバーが必要」という要望に対して、データが「それではコンテンツ所有者（＝番組側）が却下するような形でフレームを支配してしまう」と示していれば、Peteは勘に頼って議論するのではなく、数字を提示できるのです。",[39,1557,1558],{},"指標には、高い値（カメラがズームしているときのショット中の最大カバレッジ）、低い値（プレイスメントがフレーム外に出たときなどでゼロになることもある）、そして全時間にわたる平均が記録されました。これら3つの値はすべて、Kitsuのカスタムフィールドとして保存されます。",[66,1560,1562],{"id":1561},"reporting-notifications-and-the-microsoft-problem","レポーティング、通知、そしてMicrosoftの問題",[39,1564,1565],{},"Ryffの歴史のかなりの部分では、通知はSlackを通じて流れていました。SlackはWebhookによってKitsuとネイティブに連携できます。アーティストのタスクが更新されると、数秒以内に通知がスマホやデスクトップに表示されます。",[39,1567,1568],{},"その後、会社のリーダーシップがMicrosoft Teamsへ切り替えました。Slackはキャンセルされました。Google DriveはMicrosoft SharePointに置き換えられました。",[39,1570,1571],{},"この移行によって、エンジニアリング上の悩みが2つ生まれました。1つ目は、自動レポーティングです。以前はほぼリアルタイムでデータをGoogleスプレッドシートへ書き出していたものを、SharePoint上でホストされたExcelファイルで動かせるようにする必要がありました。",[39,1573,1574],{},"「SharePointのPython APIで仕事をするのは、“歯を自分で全部抜いて、もっと気持ちいい体験を得る”みたいな感じでしたね」とPeteは、皮肉めいて語っています。",[39,1576,1577],{},"追加された複雑さにより、ログインするだけでも複数の認証ステップが必要になり、さらにリアルタイム更新の挙動は失われました。Excelは誰かが開いているとファイルをロックするからです。",[39,1579,1580],{},"2つ目の問題は通知でした。KitsuはTeamsをネイティブではサポートしていません。",[39,1582,1583],{},"チームの解決策は、Kitsuサーバー上で動作するカスタムリスナーサービスを作り、イベントを監視して、Azureを介して個々のTeamsユーザーへ通知を振り分けることでした。全通知を共有チャンネルへ送るようなTeams webhookの方式は採用しませんでした。共有チャンネルに送れば全員が溢れかえってしまうからです。その代わり、通知は関係のある本人に直接届けられます。",[39,1585,1586],{},"さらに彼らは、勤怠（タイムシート）のリマインダーも自動化しました。毎朝、直近3日間にどのアーティストも稼働時間の記録をしていない場合がないかをスクリプトが確認し、Teamsサービスを通じて個別に通知を送ります。リマインダーを“公開の呼びかけ”ではなく通知システム経由でルーティングすることで、気まずさの要因を減らし、コンプライアンス（遵守）の向上にもつながりました。",[66,1588,1590],{"id":1589},"the-final-numbers","最終的な数値",[39,1592,1593],{},"PeteがRyffを去った年の11月までに、単一のKitsuインスタンスには（個別のTVエピソードは別として）543のアクティブプロジェクト、2,317アセット、18,300ショットが収まっていました。これらは1台のサーバーで運用され、メディアはマウントされたS3バケットに保存されていました。チーム規模は約20名のアーティストで、完全にリモートで作業しています。",[39,1595,1596],{},"AI検出、コンポジット、クオリティコントロール、そして納品までを含む、World Poker Tourの1エピソード分のターンアラウンドは、開始当初の1週間半から24時間へと圧縮されました。",[66,1598,1600],{"id":1599},"key-takeaways-for-animation-studios","アニメーション・スタジオ向けの要点",[39,1602,1603],{},"Pete Draperの講演は、やや珍しいビジネスモデルに固有の内容でしたが、学びは複数のプロジェクト、複数のクライアント、あるいはその両方を扱うあらゆるスタジオに、そのまま応用できます。",[39,1605,1606],{},"制作トラッカーは、全員が使ってはじめて機能します。そしてそれは、スーパーバイザーだけにとってではなく、アーティストにとっても“使いやすい”必要があります。Kitsuは、Peteの両方のスタジオで初日からそのテストをクリアしました。",[39,1608,1609],{},"自動化は、セットアップの“コスト税”をなくします。標準のショット追跡フィールドで基本はカバーできますが、カバレッジ比率、タイムコードオフセット、アセット寸法、インサーション順IDなど、あなたのワークフローに固有のフィールドを追加することで、トラッキングシステムは単なる管理記録ではなく“意思決定を支援するツール”になります。プレイリストはバージョニングの台帳として機能し得ます。",[39,1611,1612],{},"そしておそらく最も重要なのは、連携されたシステムへ向けて構築することです。Kitsuはスタンドアロンのトラッカーとしても十分に機能します。しかし、編集ツールからデータを受け取り、コミュニケーション・プラットフォームへ通知を送り、レポーティング用ダッシュボードへデータを供給し、アセットストレージへリンクする“ハブ”として使うと、はるかに効果が高まります。接続するシステムが増えるほど、適切に保守していくための投資に対するリターンが大きくなります。",{"title":53,"searchDepth":336,"depth":336,"links":1614},[1615,1616,1617,1618,1624,1625,1626,1627],{"id":1353,"depth":336,"text":1354},{"id":1377,"depth":336,"text":1378},{"id":1407,"depth":336,"text":1408},{"id":1434,"depth":336,"text":1435,"children":1619},[1620,1621,1622,1623],{"id":1444,"depth":1088,"text":1445},{"id":1468,"depth":1088,"text":1469},{"id":1489,"depth":1088,"text":1490},{"id":1507,"depth":1088,"text":1508},{"id":1537,"depth":336,"text":1538},{"id":1561,"depth":336,"text":1562},{"id":1589,"depth":336,"text":1590},{"id":1599,"depth":336,"text":1600},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/0-1.png",{"updated_at":1630,"featured_at":350,"visibility":351},"2026-04-23T12:54:55.000+02:00","/blog-i18n/ja/how-vfx-supervisor-manages-hundreds-of-projects-with-kitsu","2026-04-23T12:25:53.000+02:00",{"title":1323,"description":1330},"how-vfx-supervisor-manages-hundreds-of-projects-with-kitsu","blog-i18n/ja/how-vfx-supervisor-manages-hundreds-of-projects-with-kitsu/index",[1637],{"id":1105,"name":1106,"slug":1107,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":1108},"DCzD9V6-POTxUt6ahz8pJ5b0GwRU-UM6jE1zexUR8us",{"id":1640,"title":1641,"authors":1642,"body":1644,"description":53,"extension":346,"feature_image":2007,"html":11,"meta":2008,"navigation":352,"path":2010,"published_at":2011,"seo":2012,"slug":2013,"stem":2014,"tags":2015,"__hash__":2017,"updated_at":2009,"featured_at":350,"visibility":351},"blog/blog-i18n/ja/remembers-kitsu-arco-production/index.md","「Remembers Studio」はKitsuで「Arco」の制作を拡大することに成功した",[1643],{"id":8,"name":9,"slug":10,"profile_image":11,"cover_image":11,"bio":11,"website":11,"location":11,"facebook":11,"twitter":11,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":12},{"type":14,"value":1645,"toc":1991},[1646,1657,1675,1682,1688,1696,1702,1705,1707,1711,1714,1718,1721,1724,1726,1730,1733,1736,1739,1742,1745,1747,1751,1754,1760,1768,1771,1774,1788,1791,1793,1797,1801,1804,1812,1815,1818,1822,1825,1828,1836,1839,1843,1846,1849,1857,1859,1863,1866,1869,1872,1875,1879,1882,1890,1893,1896,1899,1903,1906,1914,1917,1920,1922,1926,1929,1932,1935,1938,1941,1943,1946,1951,1954,1957,1960,1966,1969,1984],[17,1647,1649,1653],{"className":1648},[20,21,22],[17,1650,1652],{"className":1651},[26],"🎬",[17,1654,1656],{"className":1655},[31],"スタジオの拡大は、ツールを増やすことではありません。アーティストの歩みを止めずに、構造を導入することです。",[43,1658,1661,1665],{"className":1659},[20,719,1660],"kg-card-hascaption",[721,1662],{"width":723,"height":724,"src":1663,"frameBorder":726,"allow":727,"referrerPolicy":728,"allowFullScreen":352,"title":1664},"https://www.youtube.com/embed/HlvIZsmB8-8?feature=oembed","Piloter la production d’un long métrage : étude de cas “Arco” | Audrey Tondre (Remembers Studio)",[1666,1667,1668],"figcaption",{},[39,1669,1670],{},[1671,1672,1674],"span",{"style":1673},"white-space: pre-wrap;","この記事の元になった全トークを見るには、上の動画をご覧ください",[39,1676,1677,1678,1681],{},"アニメーション長編映画",[802,1679,1680],{},"Arco","が2025年秋に公開されると、そのリリースは大きな注目を集めました。カンヌ国際映画祭での選出、そしてアヌシー国際アニメーション映画祭でのクリスタル・アワード受賞――その成功の裏には、パリの小さなスタジオであるRemembersがありました。制作体制はスリムで、プロジェクト管理ツールとして、ほとんどのアーティストがそれまで聞いたことのないツールを導入していたのです。それがKitsuです。",[39,1683,1684,1685,1687],{},"Kitsu Submitカンファレンスで、",[802,1686,1680],{},"のプロダクション・ディレクターであるAudrey Tondreは、「必要としていないスタジオ」に対してKitsuをどう紹介したのか、そしてなぜそれがまさに正しい判断だったのかを、正直で詳細な形で語りました。",[43,1689,1691],{"className":1690},[20,46],[48,1692],{"src":1693,"className":1694,"alt":53,"loading":54,"width":55,"height":56,"srcSet":1695,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/04/image.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/04/image.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/04/image.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image.png 1920w",[39,1697,1698,1699,1701],{},"Audreyは、Ugo Bienvenuが監督し、Remembers（BienvenuがパートナーのFélix de Givryとともに運営）とMountain（Sophie MasとNatalie Portmanが設立）の共同プロデュースによる",[802,1700,1680],{},"を制作するために、まさにその目的でRemembersに加わりました。彼女がこのプロジェクトに臨む以前のキャリアは、ほぼ3Dの長編映画に限られていました。そこでは、制作進捗の追跡ツールが、すべてのワークフローに深く組み込まれているのです。",[39,1703,1704],{},"2Dスタジオに入り、初めて長編を制作することは、大きな環境の変化でした。そして、この「世界の違い」が、成長を目指すあらゆるアニメーション・スタジオにとって彼女の話を有用にしているのです。",[63,1706],{},[66,1708,1710],{"id":1709},"a-studio-built-for-small-scale-work","小規模制作に最適化されたスタジオ",[39,1712,1713],{},"Remembersはショート形式のプロジェクトで確かな評判を築いていました。音楽MV、CM、短編映画です。作品の品質に問題はありませんでした。しかし、長編作品を管理するためのインフラは、まだ存在していなかったのです。",[1715,1716,1717],"blockquote",{},"\"パイプラインも、開発チームもありませんでした。空間はすべてアーティストのために使われていたのです。\"",[39,1719,1720],{},"映画全体はRemembers内製で制作され、パリの第20区にある3つの別々の拠点に分かれていました。制作が最も活況を呈した時期には、アニメーションスタジオで約70人が働いており、プロジェクト全体を通しての総人数はおよそ150人でした。制作チームは、Audreyが制作ディレクター／エグゼクティブプロデューサー、制作コーディネーター2名、インターン1名で構成されていました。",[39,1722,1723],{},"制作スタッフの比率がクリエイティブ側に対してそのようなものであれば、適切なツールを持つことは「任意」ではありません。",[63,1725],{},[66,1727,1729],{"id":1728},"the-challenge-introducing-tools-no-one-asked-for","課題：誰も求めていないツールを導入する",[39,1731,1732],{},"AudreyがRemembersに到着した時、スタジオはGoogleスプレッドシートでプロジェクトを追跡していました。そのやり方は、6人で同じ部屋を共有し、互いの画面をすぐ確認できる短編の規模では機能します。しかし、長編映画の規模では違います。",[39,1734,1735],{},"とはいえ、コアチームは「何か別のものを」とは求めていませんでした。",[1715,1737,1738],{},"\"制作管理やトラッキングツールの話をしたとき、はっきりと、需要がないことが分かりました。\"",[39,1740,1741],{},"これは、小規模〜中規模のスタジオが大きな制作へ移行するときにしばしば起こる状況です。小さな仕事の中で身についた習慣は、そのままでは「不足している」とは自分自身で警告しません。Audreyは、まだ名前の付いていない問題を解決しなければならず、なおかつ摩擦を生まない形でそれを行う必要があると理解していました。",[1715,1743,1744],{},"\"新しいツールを持ち込むなら、すでにそこにいるコアチームが特定できていないニーズに対処する必要があると分かっていました。最初から大きな課題だったのは、彼らを制約しないことです。\"",[63,1746],{},[66,1748,1750],{"id":1749},"why-kitsu-won","なぜKitsuが選ばれたのか",[39,1752,1753],{},"Audreyがプロジェクトの追跡について考えるときの基準は、3Dの長編制作の世界です。そこでは主要なツールがShotgridであり、強力ではあるものの、開発者に依存するプラットフォームでした。彼女はそれがRemembersには不適切だと、すぐに見抜きました。",[1715,1755,1756,1757,1759],{},"\"私はすぐに、それが",[802,1758,1680],{},"の文脈ではまったく適さないと感じました。\"",[43,1761,1763],{"className":1762},[20,46],[48,1764],{"src":1765,"className":1766,"alt":53,"loading":54,"width":55,"height":56,"srcSet":1767,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-1.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/04/image-1.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/04/image-1.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/04/image-1.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-1.png 1920w",[39,1769,1770],{},"Ftrackのような企業向けのツールは、社内の開発者が導入・設定・保守を行うことが前提になります。しかしRemembersにはそれがありません。ITスタッフも、テクニカルディレクターも、パイプライン開発者もいないのです。この種のサポートを必要とするツールを持ち込めば、解決できる以上に問題が増えてしまいます。",[39,1772,1773],{},"Kitsuは最初から彼女の主要な制約に対応していました。Kitsuチームによるデモの後、スタジオ全体で進めることに合意しました。その理由は実務的なものでした：",[82,1775,1776,1779,1782,1785],{},[85,1777,1778],{},"始めるのに開発が不要",[85,1780,1781],{},"継続的な保守負担がない",[85,1783,1784],{},"社内のテクニカルリソースが不要",[85,1786,1787],{},"初めて制作管理ツールを触る人でも直感的に使えるインターフェース",[1715,1789,1790],{},"\"それはとても安心できました。もちろん、私たちは非常に直感的なものを探していました。なぜなら、ツールを求めていない人たちに対して導入する以上、自然に手に取って参加できる必要があるからです。\"",[63,1792],{},[66,1794,1796],{"id":1795},"how-kitsu-worked-in-practice","実際にはKitsuがどう機能したのか",[933,1798,1800],{"id":1799},"the-artist-experience","アーティストの体験",[39,1802,1803],{},"制作で関わるすべてのアーティストは、どの3つの拠点から仕事をしているかに関係なく、Kitsu上に個人ページを持ちました。そこには割り当てられたすべてのタスク（ラフアニメーション、クリーンアニメーション、またはその他）、各タスクのステータス、割り当てられた見込み時間、そしてすでに費やした時間の記録が表示されます。",[43,1805,1807],{"className":1806},[20,46],[48,1808],{"src":1809,"className":1810,"alt":53,"loading":54,"width":55,"height":56,"srcSet":1811,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-2.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/04/image-2.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/04/image-2.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/04/image-2.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-2.png 1920w",[1715,1813,1814],{},"\"これと、そもそもツールがまったくない状態とでは、大きな一歩をすでに踏み出せているのが分かります。生産性だけの話ではなくて、もっと楽しくもなります。\"",[39,1816,1817],{},"特定のショットのバージョンを見るのに、共有ネットワークドライブを掘り返したり、間違ったファイルを引っ張ってしまうリスクを負ったりする必要がなくなりました。Kitsuでは、すべてのバージョンが1クリックで参照でき、コメントとも直接紐づいています。これだけでも、大きな混乱の原因と無駄な時間を取り除けました。",[933,1819,1821],{"id":1820},"the-supervisor-experience","スーパーバイザーの体験",[39,1823,1824],{},"スーパーバイザーはシンプルなフィルターを使ってレビュー用ページを構築しました。アニメーションのスーパーバイザーであれば、「承認待ち」の状態になっているすべてのショットを絞り込み、どこに注意が必要かを正確に把握して、該当するバージョンに直接フィードバックを投稿できます。コメントにはタイムスタンプが付き、誰の発言かが分かり、バージョン固有の形で記録されます。",[1715,1826,1827],{},"\"とても的を射ていて、うまく機能します。\"",[43,1829,1831],{"className":1830},[20,46],[48,1832],{"src":1833,"className":1834,"alt":53,"loading":54,"width":55,"height":56,"srcSet":1835,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-3.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/04/image-3.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/04/image-3.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/04/image-3.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-3.png 1920w",[39,1837,1838],{},"機能面のメリットに加えて、Kitsuはスーパーバイザーにとって、より見えにくいものの同じくらい価値のあるもの――構造化された時間――を提供しました。アーティストが日中ずっとフィードバックを求めて割り込んでくるのではなく、スーパーバイザーは朝と午後に専用のレビュー枠を確保し、それ以外の時間は自分の作業に集中できます。",[933,1840,1842],{"id":1841},"cross-department-communication","部門をまたぐコミュニケーション",[39,1844,1845],{},"Audreyが特に挙げた最も実用的な機能の1つは、どのタスクのコメントスレッドからでも、プロジェクト内の誰かにタグ付けできることでした。コンポジットで、すでに数週間前に承認された背景に問題が見つかるような長い制作では、この仕組みによりループを素早く閉じられます。",[1715,1847,1848],{},"\"部門間のやり取りは本当に簡単で、素早く行えます。多くの場合、小さな修正で済むのです。ショットがすでに承認されていたために、すり抜けてしまっていた内容だったりします。\"",[43,1850,1852],{"className":1851},[20,46],[48,1853],{"src":1854,"className":1855,"alt":53,"loading":54,"width":55,"height":56,"srcSet":1856,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-4.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/04/image-4.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/04/image-4.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/04/image-4.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-4.png 1920w",[63,1858],{},[66,1860,1862],{"id":1861},"using-kitsu-data-for-production-tracking","制作進捗管理のためにKitsuのデータを使う",[39,1864,1865],{},"Audreyのトークの後半では、Kitsuについて制作管理者が経験のある人ほど時に持ち上げる懸念に触れました。つまり、Kitsuには「カスタムで作るアナリティクスページ」がないことです。Ftrackのようなツールでは、プラットフォーム内に留まったまま、データを複数の方法で処理・表示するダッシュボードを構築できます。",[39,1867,1868],{},"Kitsuはそれを最初からは提供していません。ですが、Audreyの返答は現実的で、注目に値するものでした。",[1715,1870,1871],{},"\"実際には、制作進捗管理で価値があり得るデータはすべてKitsuの中にあります。ただし、用意されたページとしてすぐ見つかるとは限らないだけです。\"",[39,1873,1874],{},"彼女のやり方は、シンプルな2ステップを組み合わせるものでした。KitsuからCSVをエクスポートし、それを彼女自身が作ったGoogleスプレッドシートに取り込むのです。",[933,1876,1878],{"id":1877},"tracking-production-curves","制作カーブの追跡",[39,1880,1881],{},"主要な各部門について、彼女は「時間に対してプロットした完成見込みのカーブ」を維持していました。縦軸は完了したショット数を追跡し、点線は当初のモデルを表しています。毎週、彼女はKitsuのSequence Statsページから実データをエクスポートしました。このページには、すべての部門における各ステータスの正確なショット数が表示されます。CSVを取り込み、Googleスプレッドシートは自動的に更新されます。",[43,1883,1885],{"className":1884},[20,46],[48,1886],{"src":1887,"className":1888,"alt":53,"loading":54,"width":55,"height":56,"srcSet":1889,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-5.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/04/image-5.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/04/image-5.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/04/image-5.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-5.png 1920w",[39,1891,1892],{},"その結果は、制作が計画通りに進んでいるのか、それとも計画からズレているのかを、すぐに視覚的に示す指標になりました。",[1715,1894,1895],{},"\"長編映画は、かなり大きな取り組みで、慣性も大きいんです。もし1週間ズレ始めたとしても、まあ大丈夫。でも2週間続くなら、何が起きているのかを見る必要があります。\"",[39,1897,1898],{},"さらに彼女は、「現在進行中」のショットに対して単純な重み付けの仕組みも適用していました。完了したショットは1としてカウント。編集中のショットは0.75。承認待ちのショットはより低い重みでカウントします。こうすることで、「完全にサインが出た仕事」だけでなく、実際にどれくらい進んでいるかをより正確に把握できました。",[933,1900,1902],{"id":1901},"tracking-inventory-between-departments","部門間のインベントリ（在庫）を追跡する",[39,1904,1905],{},"線形の制作パイプラインでは、各部門が次の部門へとフィードします。アニメーションがレイアウトより速いと、アニメーターは待機することになります。コンポジットが遅れると、どれだけアニメーションが前倒しでもボトルネックが発生します。Audreyは各段階での在庫量を追跡していました。各部門が「すべて使える状態」で持っているもの、「まだ進行中」のもの、そして「すでに通過済み」のものです。",[43,1907,1909],{"className":1908},[20,46],[48,1910],{"src":1911,"className":1912,"alt":53,"loading":54,"width":55,"height":56,"srcSet":1913,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-6.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/04/image-6.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/04/image-6.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/04/image-6.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-6.png 1920w",[39,1915,1916],{},"彼女はGoogleスプレッドシート上に表を作りました。縦にはすべてのシーケンス、横にはすべての部門です。セルは、100パーセントになったら濃い緑、進行中なら薄い緑、何も残っていなければ白になります。すべてのセルは数式で動いていました。数字は手入力しません。Kitsuのショットページから1回CSVを書き出し、1回取り込むだけで、表全体が更新されます。",[1715,1918,1919],{},"\"これで、正しい質問をすることができます。『あれ、この部門は少し速く進んでいる。前の部門を加速する必要があるのか、それとも別の部門から人員を移してもいいのか？』\"",[63,1921],{},[66,1923,1925],{"id":1924},"adoption-was-easier-than-expected","導入は思ったより簡単だった",[39,1927,1928],{},"クリエイティブチームに新しいツールを導入するときに、よくある不安は「抵抗」です。しかしAudreyの経験は、その恐れと真逆でした。",[39,1930,1931],{},"彼女は、チームの大半が到着する前にKitsuをセットアップしていました。アニメーターや背景アーティストが本格的に増えて参加する頃には、ツールはすでに稼働状態で、データも投入済みでした。未完成の作業途上ではなく、動いている仕組みに入ってきてもらえたのです。",[1715,1933,1934],{},"\"Kitsuはとても、とても簡単に始められます。どこでもクリックできて、映画の画像が見られて、自分に関係しそうな部門やシーケンスがすべて分かります。\"",[39,1936,1937],{},"最後に言った点は、想像以上に重要です。アーティストはKitsuを「レポート提出の義務」としては捉えませんでした。より大きなプロジェクトを見渡す窓として体験していたのです。ほかの部門のショットを閲覧し、シーケンスをまたいで映画全体が形になっていく様子を見ることは、ツールを使うこと自体を本当に面白くしました。",[1715,1939,1940],{},"\"さらに楽しくて、やる気も出ます。『よし、最新バージョンを投稿しなきゃ』だけじゃないんです。\"",[63,1942],{},[66,1944,1945],{"id":1044},"要点",[39,1947,1948,1950],{},[802,1949,1680],{},"でのAudreyの経験には、同じような転機を迎えるアニメーション・スタジオに向けた、いくつかの明確な学びがあります。",[39,1952,1953],{},"技術チームがいないことは、障害にはなりません。Kitsuは、開発者、テクニカルディレクター、IT部門を使わずに、導入・保守ができます。小規模〜中規模のスタジオにとって、これは「本格的な制作進捗管理プラットフォーム」を導入する際の最大の障壁を取り除いてくれます。",[39,1955,1956],{},"シンプルさが導入を後押しします。ツールが複雑になればなるほど、トレーニングが必要になり、反発も生まれやすくなります。Kitsuのインターフェースは、制作進捗管理ソフトの経験がまったくないチームでも、素早く参加でき、不要な不満を積み上げることなく受け入れられるようにしてくれました。",[39,1958,1959],{},"データはすでに存在しています。Kitsuが特定のアナリティクス画面をそのまま用意していないとしても、それで議論が終わるわけではありません。Sequence StatsとショットページからのCSVエクスポートには、制作管理者が必要とするどんな追跡ロジックでも、そしてそれに合うどんな形式でも作るための、生データがすべて揃っています。",[39,1961,1962,1963,1965],{},"構造と創造性は対立しません。Ugo Bienvenuの",[802,1964,1680],{},"にかける野心は、1950年代のようにしてほぼ作れる映画を目指すことでした。美しい映像、正確なアニメーション、最小限のコンポジット、そして素晴らしい音楽。Kitsuはそのビジョンを邪魔しませんでした。アーティストが作品そのものに集中できるよう、制作を軌道に乗せることで守ってくれたのです。",[1715,1967,1968],{},"\"目標は、できる限り見えない形で物事を構造化することでした。\"",[17,1970,1972,1975],{"className":1971},[20,21,22],[17,1973,312],{"className":1974},[26],[17,1976,1978,1979,1983],{"className":1977},[31],"アニメーション制作プロセスについてもっと学ぶには",[231,1980,1982],{"href":319,"rel":1981},[321],"私たちのDiscordコミュニティに参加することを検討してください","！ベストプラクティスを共有する千人以上の専門家とつながり、時には対面イベントも開催しています。ぜひ歓迎します！ 😊",[17,1985,1987],{"className":1986},[20,327,328],[231,1988,1990],{"href":319,"className":1989},[332,333],"Join Our Discord Community",{"title":53,"searchDepth":336,"depth":336,"links":1992},[1993,1994,1995,1996,2001,2005,2006],{"id":1709,"depth":336,"text":1710},{"id":1728,"depth":336,"text":1729},{"id":1749,"depth":336,"text":1750},{"id":1795,"depth":336,"text":1796,"children":1997},[1998,1999,2000],{"id":1799,"depth":1088,"text":1800},{"id":1820,"depth":1088,"text":1821},{"id":1841,"depth":1088,"text":1842},{"id":1861,"depth":336,"text":1862,"children":2002},[2003,2004],{"id":1877,"depth":1088,"text":1878},{"id":1901,"depth":1088,"text":1902},{"id":1924,"depth":336,"text":1925},{"id":1044,"depth":336,"text":1945},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/arco-ugo-bienvenu-critique-film.jpg",{"updated_at":2009,"featured_at":350,"visibility":351},"2026-05-20T11:36:08.000+02:00","/blog-i18n/ja/remembers-kitsu-arco-production","2026-04-13T11:11:27.000+02:00",{"title":1641,"description":53},"remembers-kitsu-arco-production","blog-i18n/ja/remembers-kitsu-arco-production/index",[2016],{"id":1105,"name":1106,"slug":1107,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":1108},"3o97TMiRwWxxnpxLrozWjuCYNWze0jB8396dAHPAbzc",{"id":2019,"title":2020,"authors":2021,"body":2033,"description":53,"extension":346,"feature_image":2236,"html":11,"meta":2237,"navigation":352,"path":2239,"published_at":2240,"seo":2241,"slug":2242,"stem":2243,"tags":2244,"__hash__":2247,"updated_at":2238,"featured_at":350,"visibility":351},"blog/blog-i18n/ja/customer-story-tant-mieux-prod/index.md","顧客事例：Tant Mieux Prod",[2022],{"id":2023,"name":2024,"slug":2025,"profile_image":2026,"cover_image":2027,"bio":2028,"website":2029,"location":2030,"facebook":11,"twitter":2031,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":2032},"68d2f1e036b5be000835a0db","Frank Rousseau","frankrousseau","https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2021/01/photo_identite.png","https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2024/05/Annecy-Booth_Linework_004-2-1.jpg","CEO &Founder of CGWire","https://addictedtointer.net","Paris, France","@gelnior","https://blog.cg-wire.com/author/frankrousseau/",{"type":14,"value":2034,"toc":2221},[2035,2039,2046,2049,2059,2063,2066,2069,2075,2083,2087,2090,2094,2097,2101,2104,2114,2118,2125,2129,2132,2142,2146,2152,2156,2177,2185,2189,2192,2196,2199,2205,2208,2216],[66,2036,2038],{"id":2037},"a-few-words-about-tant-mieux-prod","Tant Mieux Prodについてのいくつかの言葉",[39,2040,2041,2045],{},[231,2042,2044],{"href":2043},"https://www.tantmieuxprod.net/?ref=blog.cg-wire.com","Tant Mieux Prod"," は、学校を卒業したばかりの若手監督による短編映画を13本制作するという目的で生まれました。最初は、1回の制作セッションのみが予定されていました。しかし、その成功があまりに大きかったため、10年間毎年実施できるようになりました。 ",[39,2047,2048],{},"そこから、次に制作する映画は「要求度が高いこと」と「子ども向けであること」の2つの基準で考えるようになりました。まず取り組んだのが、フランスで最も評価されている作品のひとつである『Tobie Lolness』シリーズです。そして現在では、2本の長編映画と、もう1つのシリーズが制作前（プリプロダクション）の段階にあります。",[43,2050,2052],{"className":2051},[20,46],[48,2053],{"src":2054,"className":2055,"alt":53,"loading":54,"width":2056,"height":2057,"srcSet":2058,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2024/10/image-7.png",[52],1750,1347,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2024/10/image-7.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2024/10/image-7.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2024/10/image-7.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2024/10/image-7.png 1750w",[66,2060,2062],{"id":2061},"tant-mieux-prod-and-kitsu","Tant Mieux Prod と Kitsu",[39,2064,2065],{},"制作ディレクターのトリスタンは、高い品質基準を持つ 26x26’ のプロジェクトである『Tobie Lolness』TVシリーズに携わりました。これは、同名の小説の物語をもとにしたシリーズで、大きな木で暮らす小さな登場人物たちが、宿主である木を生かし続けるために戦います。",[39,2067,2068],{},"この3年間の制作には4つの異なるスタジオが関わり、関係者全員の緊密な連携が必要でした。だからこそ、彼らはプロジェクトにKitsuを選びました。このインタビューでは、トリスタンが『Tobie Lolness』のトラッキングとコラボレーションを、できる限りスムーズに進めるためにどのように解決策を活用したのかを語ります。",[39,2070,2071],{},[231,2072,2074],{"href":2073},"https://www.france.tv/enfants/neuf-douze-ans/tobie-lolness/?ref=blog.cg-wire.com","TVシリーズをすべて見る",[43,2076,2078],{"className":2077},[20,46],[48,2079],{"src":2080,"className":2081,"alt":53,"loading":54,"width":2082,"height":2082},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2024/10/tristan-mercier-3.png",[52],400,[933,2084,2086],{"id":2085},"what-tools-did-you-use-before-kitsu","Kitsu の前に、どんなツールを使っていましたか？",[39,2088,2089],{},"多くのスタジオと同様に、制作開始時や小規模な制作では Googleスプレッドシート や Excel のスプレッドシートを使っていました。ですが、アーティストの人数が増えたり、制作が1つ以上のスタジオに外注されるようになると、Kitsuのようなコラボレーション・プラットフォームを使う必要が出てきます。",[933,2091,2093],{"id":2092},"how-did-you-hear-about-our-solution","私たちのソリューションは、どのように知りましたか？",[39,2095,2096],{},"私はまず、シリーズ『De Gaulle à la plage』のトラッキングのために Cube Creative で Kitsu を見つけました。すぐに、Kitsu が私がいつも一緒に仕事をしているスタジオでも採用されていることに気づきました。実際に使ってみて、解決策がもたらすメリットがよく分かり、トビー・ロルネスで自然に使えそうだと思いました。",[933,2098,2100],{"id":2099},"did-you-have-any-preconceived-notions-before-using-it","使う前に、何か先入観はありましたか？",[39,2102,2103],{},"ほかのアセット管理ツールや制作トラッキングソフトを使ってきた中で、新しいツールに出会うと当然いくつか疑問が生まれます。懸念の中心は、パフォーマンス、コスト、そしてプラットフォームの使いやすさでしたが、Kitsu は期待に十分応えてくれました。",[43,2105,2107],{"className":2106},[20,46],[48,2108],{"src":2109,"className":2110,"alt":53,"loading":54,"width":2111,"height":2112,"srcSet":2113,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2024/10/Capture-d--cran-2024-10-09---22.03.40.png",[52],2000,1250,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2024/10/Capture-d--cran-2024-10-09---22.03.40.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2024/10/Capture-d--cran-2024-10-09---22.03.40.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2024/10/Capture-d--cran-2024-10-09---22.03.40.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w2400/2024/10/Capture-d--cran-2024-10-09---22.03.40.png 2400w",[933,2115,2117],{"id":2116},"what-has-changed-in-the-way-you-work-since-using-it","Kitsuを使ってから、仕事のやり方はどのように変わりましたか？",[39,2119,2120,2121,2124],{},"社内のコミュニケーションと、リモートのスタジオとのコミュニケーションがシンプルになりました。特定のアセットやタスクについて話し合うのに、10通ものメールをやり取りする必要がなくなりました。もし疑問があれば、プラットフォームに示されている内容を頼りにできます。これは一種の履歴ログとして機能しています。",[2122,2123],"br",{},"従来のより一般的な制作トラッキング手法に戻るのは、きっと難しいでしょう。",[933,2126,2128],{"id":2127},"what-features-have-had-the-most-impact-on-your-workflow","ワークフローに最も大きな影響を与えた機能は何ですか？",[39,2130,2131],{},"私個人が最もよく使うのは、アセットページにあるフィルターです。特定の要素を素早く把握し、全員のスケジュールを調整するのに役立ちます。",[43,2133,2135],{"className":2134},[20,46],[48,2136],{"src":2137,"className":2138,"alt":53,"loading":54,"width":2139,"height":2140,"srcSet":2141,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2024/10/image-6.png",[52],1188,864,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2024/10/image-6.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2024/10/image-6.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2024/10/image-6.png 1188w",[933,2143,2145],{"id":2144},"what-are-the-advantages-of-using-kitsu","Kitsuを使う利点は何ですか？",[39,2147,2148,2149,2151],{},"情報が単一のプラットフォームに集約されていることは、あらゆるビジュアル要素の制作状況を追跡するうえでとても有用です。",[2122,2150],{},"リモートワークの普及や、さまざまなスタジオがリモートで稼働するようになったことで、アセットがあるサーバーから別のサーバーへ大量に移動するようになりました。Kitsu は、アセットの最新バージョンが「誰によって／いつ／どこで」作成されたのかについて、あらゆる不確実性をなくすことを可能にします。",[933,2153,2155],{"id":2154},"you%E2%80%99ve-worked-in-multiple-studios-how-did-you-organize-yourselves-to-facilitate-collaboration","複数のスタジオでの制作経験があります。連携を円滑にするために、どのように体制を整えましたか？",[39,2157,2158,2159,2162,2163,2165,2166,2169,2170,2169,2173,2176],{},"シリーズ ",[802,2160,2161],{},"Tobie Lolness"," では、中心となるスタジオ ",[802,2164,2044],{}," に加えて、",[802,2167,2168],{},"Waooh!","、",[802,2171,2172],{},"Caribara Annecy",[802,2174,2175],{},"Fost Angoulême"," もシリーズのビジュアル要素の制作に携わりました。各スタジオには、それぞれのニーズや作業習慣がありました。制作で使う手順、タスク、ステータスについては、皆で一緒に合意しました。ステータスの作成はカスタマイズ可能で、すべてのスタジオで共有する共通ステータスに加えて、それぞれが自分たち用のタスクもカスタマイズできました。",[43,2178,2180],{"className":2179},[20,46],[48,2181],{"src":2182,"className":2183,"alt":53,"loading":54,"width":2111,"height":2112,"srcSet":2184,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2024/10/Capture-d--cran-2024-10-09---22.05.49.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2024/10/Capture-d--cran-2024-10-09---22.05.49.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2024/10/Capture-d--cran-2024-10-09---22.05.49.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2024/10/Capture-d--cran-2024-10-09---22.05.49.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w2400/2024/10/Capture-d--cran-2024-10-09---22.05.49.png 2400w",[933,2186,2188],{"id":2187},"do-you-think-a-tool-like-kitsu-was-key-in-achieving-your-quality-objectives","Kitsu のようなツールが、品質目標の達成において重要だったと思いますか？",[39,2190,2191],{},"Kitsu が目標達成にどれだけ役立っているかは確かには分かりませんが、目標を追跡するうえで間違いなく素晴らしいツールです。",[933,2193,2195],{"id":2194},"can-you-give-us-some-metrics-on-the-time-you%E2%80%99ve-saved-using-kitsu","Kitsu を使うことで節約できた時間について、いくつか数値（指標）を教えてもらえますか？",[39,2197,2198],{},"これは数値化が難しい指標ですが、ショットやアセットを検証する制作職や部門の責任者にとって、誰もが一定の自立性とスピードを得られる、間違いなく素晴らしいツールです。",[933,2200,2202],{"id":2201},"kitsu-in-two-words",[261,2203,2204],{},"Kitsuを2つの言葉で？",[39,2206,2207],{},"自律性と連携！",[43,2209,2211],{"className":2210},[20,46],[48,2212],{"src":2213,"className":2214,"alt":53,"loading":54,"width":2111,"height":2112,"srcSet":2215,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2024/10/Capture-d--cran-2024-10-09---21.56.37.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2024/10/Capture-d--cran-2024-10-09---21.56.37.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2024/10/Capture-d--cran-2024-10-09---21.56.37.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2024/10/Capture-d--cran-2024-10-09---21.56.37.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w2400/2024/10/Capture-d--cran-2024-10-09---21.56.37.png 2400w",[39,2217,2218],{},[802,2219,2220],{},"この顧客事例を共有してくれたトリスタンに感謝します！スタジオのことや、Kitsuを使ったご経験について洞察を話してくれたのは素晴らしいですね。CGWireでは、『Tobie Lolness』プロジェクトのお手伝いができたことを誇りに思っています。次の制作に向けて、ますますのご成功をお祈りしています！",{"title":53,"searchDepth":336,"depth":336,"links":2222},[2223,2224],{"id":2037,"depth":336,"text":2038},{"id":2061,"depth":336,"text":2062,"children":2225},[2226,2227,2228,2229,2230,2231,2232,2233,2234,2235],{"id":2085,"depth":1088,"text":2086},{"id":2092,"depth":1088,"text":2093},{"id":2099,"depth":1088,"text":2100},{"id":2116,"depth":1088,"text":2117},{"id":2127,"depth":1088,"text":2128},{"id":2144,"depth":1088,"text":2145},{"id":2154,"depth":1088,"text":2155},{"id":2187,"depth":1088,"text":2188},{"id":2194,"depth":1088,"text":2195},{"id":2201,"depth":1088,"text":2204},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2024/10/tobie-lolness-1.jpg",{"updated_at":2238,"featured_at":350,"visibility":351},"2024-10-11T11:48:24.000+02:00","/blog-i18n/ja/customer-story-tant-mieux-prod","2024-10-11T11:21:10.000+02:00",{"title":2020,"description":53},"顧客事例：tant-mieux-prod","blog-i18n/ja/customer-story-tant-mieux-prod/index",[2245],{"id":1105,"name":1106,"slug":1107,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":2246},"https://blog.cg-wire.com/tag/customer-stories/","0QEE8MxzIkxMRZmEX2ANXRCQyggsdooxWbCZ438OwRU",[2249,2473,2884,3436,3902],{"id":4,"title":5,"authors":2250,"body":2252,"description":53,"extension":346,"feature_image":347,"html":11,"meta":2469,"navigation":352,"path":353,"published_at":349,"seo":2470,"slug":355,"stem":356,"tags":2471,"__hash__":363,"updated_at":349,"featured_at":350,"visibility":351},[2251],{"id":8,"name":9,"slug":10,"profile_image":11,"cover_image":11,"bio":11,"website":11,"location":11,"facebook":11,"twitter":11,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":12},{"type":14,"value":2253,"toc":2459},[2254,2263,2265,2267,2273,2275,2277,2279,2281,2287,2293,2295,2297,2299,2307,2309,2315,2317,2319,2321,2323,2329,2331,2333,2335,2337,2343,2345,2347,2353,2355,2357,2359,2361,2367,2373,2375,2377,2379,2381,2387,2389,2393,2395,2397,2399,2405,2407,2425,2431,2433,2435,2437,2439,2441,2453],[17,2255,2257,2260],{"className":2256},[20,21,22],[17,2258,27],{"className":2259},[26],[17,2261,32],{"className":2262},[31],[34,2264,37],{"id":36},[39,2266,41],{},[43,2268,2270],{"className":2269},[20,46],[48,2271],{"src":50,"className":2272,"alt":53,"loading":54,"width":55,"height":56,"srcSet":57,"sizes":58},[52],[39,2274,61],{},[63,2276],{},[66,2278,69],{"id":68},[39,2280,72],{},[43,2282,2284],{"className":2283},[20,46],[48,2285],{"src":78,"className":2286,"alt":53,"loading":54,"width":55,"height":56,"srcSet":80,"sizes":58},[52],[82,2288,2289,2291],{},[85,2290,87],{},[85,2292,90],{},[63,2294],{},[66,2296,96],{"id":95},[39,2298,99],{},[82,2300,2301,2303,2305],{},[85,2302,104],{},[85,2304,107],{},[85,2306,110],{},[39,2308,113],{},[43,2310,2312],{"className":2311},[20,46],[48,2313],{"src":119,"className":2314,"alt":53,"loading":54,"width":55,"height":56,"srcSet":121,"sizes":58},[52],[39,2316,124],{},[63,2318],{},[66,2320,130],{"id":129},[39,2322,133],{},[43,2324,2326],{"className":2325},[20,46],[48,2327],{"src":139,"className":2328,"alt":53,"loading":54,"width":55,"height":56,"srcSet":141,"sizes":58},[52],[63,2330],{},[66,2332,147],{"id":146},[39,2334,150],{},[39,2336,153],{},[43,2338,2340],{"className":2339},[20,46],[48,2341],{"src":159,"className":2342,"alt":53,"loading":54,"width":55,"height":56,"srcSet":161,"sizes":58},[52],[39,2344,164],{},[39,2346,167],{},[43,2348,2350],{"className":2349},[20,46],[48,2351],{"src":173,"className":2352,"alt":53,"loading":54,"width":55,"height":56,"srcSet":175,"sizes":58},[52],[39,2354,178],{},[63,2356],{},[66,2358,184],{"id":183},[39,2360,187],{},[82,2362,2363,2365],{},[85,2364,192],{},[85,2366,195],{},[43,2368,2370],{"className":2369},[20,46],[48,2371],{"src":201,"className":2372,"alt":53,"loading":54,"width":55,"height":56,"srcSet":203,"sizes":58},[52],[63,2374],{},[66,2376,209],{"id":208},[39,2378,212],{},[39,2380,215],{},[43,2382,2384],{"className":2383},[20,46],[48,2385],{"src":221,"className":2386,"alt":53,"loading":54,"width":55,"height":56,"srcSet":223,"sizes":58},[52],[39,2388,226],{},[39,2390,229,2391,235],{},[231,2392,234],{"href":233},[63,2394],{},[66,2396,241],{"id":240},[39,2398,244],{},[43,2400,2402],{"className":2401},[20,46],[48,2403],{"src":250,"className":2404,"alt":53,"loading":54,"width":55,"height":56,"srcSet":252,"sizes":58},[52],[39,2406,255],{},[82,2408,2409,2413,2417,2421],{},[85,2410,2411,264],{},[261,2412,263],{},[85,2414,2415,270],{},[261,2416,269],{},[85,2418,2419,276],{},[261,2420,275],{},[85,2422,2423,282],{},[261,2424,281],{},[43,2426,2428],{"className":2427},[20,46],[48,2429],{"src":288,"className":2430,"alt":53,"loading":54,"width":55,"height":56,"srcSet":290,"sizes":58},[52],[63,2432],{},[66,2434,296],{"id":295},[39,2436,299],{},[39,2438,302],{},[39,2440,305],{},[17,2442,2444,2447],{"className":2443},[20,21,22],[17,2445,312],{"className":2446},[26],[17,2448,316,2450,323],{"className":2449},[31],[231,2451,322],{"href":319,"rel":2452},[321],[17,2454,2456],{"className":2455},[20,327,328],[231,2457,334],{"href":319,"className":2458},[332,333],{"title":53,"searchDepth":336,"depth":336,"links":2460},[2461,2462,2463,2464,2465,2466,2467,2468],{"id":68,"depth":336,"text":69},{"id":95,"depth":336,"text":96},{"id":129,"depth":336,"text":130},{"id":146,"depth":336,"text":147},{"id":183,"depth":336,"text":184},{"id":208,"depth":336,"text":209},{"id":240,"depth":336,"text":241},{"id":295,"depth":336,"text":296},{"updated_at":349,"featured_at":350,"visibility":351},{"title":5,"description":53},[2472],{"id":359,"name":360,"slug":361,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":362},{"id":2474,"title":2475,"authors":2476,"body":2478,"description":2482,"extension":346,"feature_image":2872,"html":11,"meta":2873,"navigation":352,"path":2875,"published_at":2876,"seo":2877,"slug":2878,"stem":2879,"tags":2880,"__hash__":2883,"updated_at":2874,"featured_at":350,"visibility":351},"blog/blog-i18n/ja/build-in-public-march-2026/index.md","Build in Public: 2026年3月のアップデート",[2477],{"id":2023,"name":2024,"slug":2025,"profile_image":2026,"cover_image":2027,"bio":2028,"website":2029,"location":2030,"facebook":11,"twitter":2031,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":2032},{"type":14,"value":2479,"toc":2862},[2480,2483,2485,2491,2498,2510,2518,2530,2579,2581,2587,2590,2596,2598,2604,2611,2620,2626,2633,2636,2642,2645,2685,2692,2703,2705,2711,2718,2725,2773,2775,2781,2784,2791,2793,2799,2802,2805,2831,2834,2836,2843,2846,2853,2856],[39,2481,2482],{},"最新のCGWireおよびKitsuのアップデートへようこそ！過去3か月間、私たちは懸命に取り組んできました。そして、ここまでの進捗、新機能、改善点をすべてお届けできることを嬉しく思います。さっそく掘り下げましょう！ 🚀",[63,2484],{},[66,2486,2488],{"id":2487},"kitsu-updates-%F0%9F%A6%8F",[261,2489,2490],{},"Kitsuのアップデート 🦊",[39,2492,2493,2494,2497],{},"私たちは",[261,2495,2496],{},"v1.0.0の基盤","の上に、引き続き積み重ねてきました。重点は、柔軟性・セキュリティ・より深いカスタマイズです：",[39,2499,2500,2503,2505,2506,2509],{},[261,2501,2502],{},"1. 制作スケジュールにさらに多くのエンティティを追加 📊",[2122,2504],{},"これで、ショットやアセットに加えて",[261,2507,2508],{},"シーケンスと編集","もスケジュールできるようになりました。制作を計画し、さまざまなレベル間でタイムラインを揃えるための、より完成度の高い方法です。",[39,2511,2512,2515,2517],{},[261,2513,2514],{},"2. より強力な二要素認証 🛡️",[2122,2516],{},"スタジオでは、Peopleページで2FAインジケータを表示し、組織全体にわたって2FAを強制できるようになったことで、セキュリティに関する可視性とコントロールが向上しました。",[39,2519,2520,2523,2525,2526,2529],{},[261,2521,2522],{},"3. プロジェクトメニューにプラグイン 🧩",[2122,2524],{},"プラグインを",[261,2527,2528],{},"プロジェクトメニュー","に直接追加できるようになりました。日々のワークフローにカスタムツールを組み込みやすくなり、Kitsuを離れることなくアクセスできます。",[43,2531,2533,2567],{"className":2532},[20,748,1660],[231,2534,2537,2560],{"className":2535,"href":2536},[752],"https://dev.kitsu.cloud/kitsu-plugins/development.html?ref=blog.cg-wire.com#kitsu-plugins-development",[17,2538,2540,2544,2548],{"className":2539},[757],[17,2541,2543],{"className":2542},[761],"Kitsu Plugins Development | Kitsu Developer",[17,2545,2547],{"className":2546},[766],"Kitsu provides a public API that gives developers programmatic access to our core features to build integrations, custom tools, or extend the UI with Kitsu plugins.",[17,2549,2551,2555],{"className":2550},[770],[48,2552],{"className":2553,"src":2554,"alt":53},[774],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/icon/kitsu.png",[1671,2556,2559],{"className":2557},[2558],"kg-bookmark-author","Kitsu Developer",[17,2561,2564],{"className":2562},[2563],"kg-bookmark-thumbnail",[48,2565],{"src":2566,"alt":53},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/thumbnail/kitsu.png",[1666,2568,2569],{},[39,2570,2571],{},[2572,2573,2574],"i",{},[802,2575,2578],{"className":2576,"style":1673},[2577],"italic","Kitsuプラグインの開発について詳しくはこちら",[63,2580],{},[66,2582,2584],{"id":2583},"infrastructure-updates-%F0%9F%92%BD",[261,2585,2586],{},"インフラのアップデート 💽",[39,2588,2589],{},"今四半期は、プラットフォーム全体の信頼性とパフォーマンスの向上に注力しました。 ",[39,2591,2592,2595],{},[261,2593,2594],{},"動画のノーマライズをより堅牢に","し、よりスムーズで一貫性のある再生を実現しました。また、一連のコード最適化とインフラの調整によって、Kitsu全体でのパフォーマンス向上につながりました。",[63,2597],{},[66,2599,2601],{"id":2600},"events-%F0%9F%8E%AB",[261,2602,2603],{},"イベント 🎫",[39,2605,2606,2607,2610],{},"今四半期のハイライトは間違いなく、",[261,2608,2609],{},"初のKitsu Summit, ","でした。なんて素晴らしい一日だったのでしょう！ 🎉",[43,2612,2614],{"className":2613},[20,46],[48,2615],{"src":2616,"className":2617,"alt":53,"loading":54,"width":2056,"height":2618,"srcSet":2619,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/03/image-13.png",[52],1318,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/03/image-13.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/03/image-13.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/03/image-13.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/03/image-13.png 1750w",[39,2621,2622,2625],{},[261,2623,2624],{},"パリ","で開催し、制作のプロフェッショナル、テクニカルディレクター、スタジオチームを集めて、アニメーション、VFX、ゲームにおけるKitsu活用についての終日トーク、ディスカッション、そして実世界の知見を共有しました。",[39,2627,2628,2629,2632],{},"このイベントを実現してくださった",[261,2630,2631],{},"スピーカー、参加者、パートナーの皆さま","に心からの感謝を。コミュニティが一つになっていく様子を見ることができて感動でした。私たちは、次に何が来るのかをすでに考えています。 👀",[39,2634,2635],{},"見逃した方、もう一度見たい方へ。こちらで全セッションをご覧いただけます：",[43,2637,2639],{"className":2638},[20,719],[721,2640],{"width":723,"height":724,"src":2641,"frameBorder":726,"allow":727,"referrerPolicy":728,"allowFullScreen":352},"https://www.youtube.com/embed/videoseries?list=PLp_1gB5ZBHXpMe4lb2X6nDHmapNM7C2bP",[39,2643,2644],{},"もっと深掘りしたいですか？完全なレポートはこちら：",[43,2646,2648],{"className":2647},[20,748],[231,2649,2652,2679],{"className":2650,"href":2651},[752],"https://blog.cg-wire.com/kitsu-summit-2026/",[17,2653,2655,2659,2663],{"className":2654},[757],[17,2656,2658],{"className":2657},[761],"Kitsu Summit 2026 - Where Pipelines Meet People",[17,2660,2662],{"className":2661},[766],"The first Kitsu Summit gathered animation, VFX, and game production professionals in Paris for 15 talks on production pipelines, studio workflows, AI in animation, and the 2026 Kitsu roadmap.",[17,2664,2666,2670,2674],{"className":2665},[770],[48,2667],{"className":2668,"src":2669,"alt":53},[774],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/icon/raster.png",[1671,2671,2673],{"className":2672},[2558],"CGWire Blog",[1671,2675,2678],{"className":2676},[2677],"kg-bookmark-publisher","Gwénaëlle Dupré",[17,2680,2682],{"className":2681},[2563],[48,2683],{"src":2684,"alt":53},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/thumbnail/4080-3072-max.jpg",[39,2686,2687,2688,2691],{},"Kitsu Summitのほかにも、3月に",[261,2689,2690],{},"Tokyo ACTF","へ参加する機会がありました。チームとのつながりを深め、私たちが作っているものについて共有できた、もう一つの素晴らしい機会です。",[39,2693,2694,2695,2698,2699,2702],{},"次の目的地：5月の",[261,2696,2697],{},"FMX","、6月の",[261,2700,2701],{},"Annecy MIFA","。参加される方は、ぜひ声をかけてください！ 👋",[63,2704],{},[66,2706,2708],{"id":2707},"finance-%F0%9F%92%B0",[261,2709,2710],{},"ファイナンス 💰",[39,2712,2713,2714,2717],{},"財務面では",[261,2715,2716],{},"引き続き安定しています","。この状況下で安心材料になります。次の成長フェーズに備えつつ、着実に運営を維持してきました。",[39,2719,2720,2721,2724],{},"そのために、",[261,2722,2723],{},"営業活動に投資するためのローン","を組みました。より多くのスタジオに到達し、重要な市場での存在感を強め、Kitsuを中心とした勢いを継続して築けるようにするためです。",[43,2726,2728,2760],{"className":2727},[20,748,1660],[231,2729,2732,2754],{"className":2730,"href":2731},[752],"https://metrics.cg-wire.com/?ref=blog.cg-wire.com",[17,2733,2735,2739,2743],{"className":2734},[757],[17,2736,2738],{"className":2737},[761],"CGWire - Metrics",[17,2740,2742],{"className":2741},[766],"This\n webpage shows the KPI of the company. We made them public because we \nare part of the Open Company movement. Transparency is important to \nbuild trust. Let us know if you want to see additional information.",[17,2744,2746,2750],{"className":2745},[770],[48,2747],{"className":2748,"src":2749,"alt":53},[774],"https://cg-wire.com/favicon.png",[1671,2751,2753],{"className":2752},[2558],"Metrics",[17,2755,2757],{"className":2756},[2563],[48,2758],{"src":2759,"alt":53},"https://www.cg-wire.com/_nuxt/logo.4d5a2d7e.png",[1666,2761,2762],{},[39,2763,2764,2770],{},[2765,2766,2767],"b",{},[261,2768,2769],{"style":1673},"📊 ",[1671,2771,2772],{"style":1673},"公開しているKPIをチェックして、裏側での状況を見てみましょう",[63,2774],{},[66,2776,2778],{"id":2777},"communication-%F0%9F%97%A3%EF%B8%8F",[261,2779,2780],{},"コミュニケーション 🗣️",[39,2782,2783],{},"Kitsu Summitの後、イベントで話し合われた内容をより多くのチームが活用できるよう、コミュニティに向けてトークの内容を共有してきました。",[39,2785,2786,2787,2790],{},"コンテンツ面では、",[261,2788,2789],{},"3つの言語での翻訳","によってブログを改善しています。成長を続ける国際的な読者層によりアクセスしやすくなり、母国語でKitsuを探しやすくなりました。",[63,2792],{},[66,2794,2796],{"id":2795},"studios-productions-%F0%9F%8F%AB",[261,2797,2798],{},"スタジオ＆制作 🏫",[39,2800,2801],{},"過去3か月間、Kitsuファミリーにいくつかの一流の組織を迎えられたことは、大きな特権でした。これらのスタジオはゲーム、映画、アニメーションにまたがっており、それぞれが新しいエネルギー、フィードバック、そして創造性をエコシステムに持ち込んでいます。",[39,2803,2804],{},"最近の追加分の全リストはこちら：🎬",[82,2806,2807,2810,2813,2816,2819,2822,2825,2828],{},[85,2808,2809],{},"dayda.studio",[85,2811,2812],{},"20STM",[85,2814,2815],{},"lamola.studio",[85,2817,2818],{},"snowcloud",[85,2820,2821],{},"Érase una vez films",[85,2823,2824],{},"Camello Audiovisual",[85,2826,2827],{},"Station cachée",[85,2829,2830],{},"xishan.studio",[39,2832,2833],{},"これらのチームが制作パイプラインを拡大し、レビューを効率化し、素晴らしい物語を現実のものにしていくのをサポートできることを嬉しく思います。ようこそ！ 👋✨",[63,2835],{},[66,2837,2839,2842],{"id":2838},"closing-notes-%E2%9C%8D%EF%B8%8F",[261,2840,2841],{},"クロージングノート "," ✍️",[39,2844,2845],{},"読んでいただき、そしてこの歩みに参加していただきありがとうございます！ 🙌",[39,2847,2848,2849,2852],{},"今四半期は私たちにとって特別なものでした。初の",[261,2850,2851],{},"Kitsu Summit","が、これまでにない形でコミュニティを一つにしてくれました。チームが共有し、つながり、お互いから学ぶ姿を見ることができたことは、本当に大きなハイライトでした。",[39,2854,2855],{},"次の四半期へは十分なエネルギーを携えて進みます。そして、次に来るものを楽しみにしています。",[39,2857,2858,2861],{},[261,2859,2860],{},"6月","にお会いしましょう！ 👋",{"title":53,"searchDepth":336,"depth":336,"links":2863},[2864,2865,2866,2867,2868,2869,2870],{"id":2487,"depth":336,"text":2490},{"id":2583,"depth":336,"text":2586},{"id":2600,"depth":336,"text":2603},{"id":2707,"depth":336,"text":2710},{"id":2777,"depth":336,"text":2780},{"id":2795,"depth":336,"text":2798},{"id":2838,"depth":336,"text":2871},"クロージングノート  ✍️","https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/03/buildinpublic_march_2026.png",{"updated_at":2874,"featured_at":350,"visibility":351},"2026-03-31T10:00:43.000+02:00","/blog-i18n/ja/build-in-public-march-2026","2026-03-31T10:00:44.000+02:00",{"title":2475,"description":2482},"build-in-public-2026年3月","blog-i18n/ja/build-in-public-march-2026/index",[2881],{"id":359,"name":360,"slug":361,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":2882},"https://blog.cg-wire.com/tag/company/","R4I2G4jSwTU2Nks8PqHEOvEnZNSyLGfviTmcQr3NFpk",{"id":2885,"title":2886,"authors":2887,"body":2894,"description":53,"extension":346,"feature_image":3425,"html":11,"meta":3426,"navigation":352,"path":3428,"published_at":3429,"seo":3430,"slug":3431,"stem":3432,"tags":3433,"__hash__":3435,"updated_at":3427,"featured_at":350,"visibility":351},"blog/blog-i18n/ja/kitsu-summit-2026/index.md","Kitsu Summit 2026 - パイプラインが人に出会う場所",[2888],{"id":2889,"name":2678,"slug":2890,"profile_image":2891,"cover_image":11,"bio":2892,"website":11,"location":2030,"facebook":11,"twitter":2031,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":2893},"5fe9b27094f20f00398a1673","gwen","https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2020/12/profile_pics.png","Product Manager at CGWire","https://blog.cg-wire.com/author/gwen/",{"type":14,"value":2895,"toc":3414},[2896,2916,2922,2925,2928,2937,2939,2943,2946,2953,2971,2974,2976,2980,2983,2992,2999,3038,3041,3043,3047,3050,3071,3093,3096,3125,3127,3131,3134,3143,3153,3156,3175,3177,3181,3184,3187,3190,3201,3218,3221,3224,3226,3230,3233,3244,3247,3258,3260,3264,3267,3270,3273,3280,3283,3286,3288,3292,3295,3306,3309,3312,3323,3326,3348,3369,3371,3375,3378,3389,3392,3407],[17,2897,2899,2903],{"className":2898},[20,21,22],[17,2900,2902],{"className":2901},[26],"🎉",[17,2904,2906,2911,2913,2915],{"className":2905},[31],[2765,2907,2908],{},[261,2909,2910],{"style":1673},"70+名参加。15本の講演。2つの会場。ひとつのコミュニティ。",[2122,2912],{},[2122,2914],{},"2月12日、パリで開催された記念すべき最初のKitsu Summitは、制作のプロフェッショナルたちを一日を通した学び、共有、そしてつながりのために集めました。",[39,2917,2918,2919,2921],{},"2026年2月12日、パリの中心で、最初の ",[261,2920,2851],{}," が現実のものとなりました。",[39,2923,2924],{},"「Kitsuコミュニティをひとつにする」というアイデアから始まり、講演一日、ロードマップの発表、パイプラインをめぐる議論、共に味わう食事、そして本物の人と人とのつながりへと広がっていきました。",[39,2926,2927],{},"人がドアをくぐった瞬間から、その空気感を感じました🧡",[43,2929,2931],{"className":2930},[20,46],[48,2932],{"src":2933,"className":2934,"alt":53,"loading":54,"width":2935,"height":2936},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/02/CleanShot-2026-02-20-at-9---.09.34.png",[52],535,566,[63,2938],{},[66,2940,2942],{"id":2941},"%F0%9F%91%95-swag-smiles-and-a-familiar-mascot","👕 ノベルティ、笑顔、見覚えのあるマスコット",[39,2944,2945],{},"最初の基調講演が始まる前から、ロビーには特別なものが用意されていました。",[39,2947,2948,2949,2952],{},"私たちの限定 ",[261,2950,2951],{},"Kitsu Summitノベルティ"," が展示されていました。白いKitsu Tシャツ（刺繍）、トートバッグ、ステッカー。そしてもちろん、Kitsuのマスコットも来場者を迎えるために待っていました。",[43,2954,2956,2963],{"className":2955},[20,46,1660],[48,2957],{"src":2958,"className":2959,"alt":53,"loading":54,"width":2960,"height":2961,"srcSet":2962,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/02/Finder-2026-02-24-2.31.46---pm.png",[52],974,1162,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/02/Finder-2026-02-24-2.31.46---pm.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/02/Finder-2026-02-24-2.31.46---pm.png 974w",[1666,2964,2965],{},[2572,2966,2967],{},[802,2968,2970],{"className":2969,"style":1673},[2577],"親しみやすいKitsuのマスコットが、みなさんをお迎えします🧡🦊",[39,2972,2973],{},"これは、記念すべき一日をさりげなく形にし、みんなをひとつにするためのシンプルな方法でした。",[63,2975],{},[66,2977,2979],{"id":2978},"%F0%9F%8F%9B-a-venue-worthy-of-the-occasion","🏛 その日のためにふさわしい会場",[39,2981,2982],{},"サミットは、Gare du Nordの近くにあるCap Digitalで開催されました。",[43,2984,2986],{"className":2985},[20,46],[48,2987],{"src":2988,"className":2989,"alt":53,"loading":54,"width":2111,"height":2990,"srcSet":2991,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/02/4080-3072-max1.jpg",[52],1506,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/02/4080-3072-max1.jpg 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/02/4080-3072-max1.jpg 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/02/4080-3072-max1.jpg 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w2400/2026/02/4080-3072-max1.jpg 2400w",[39,2993,2994,2995,2998],{},"会議室は2つを同時に運営し、講演は ",[261,2996,2997],{},"英語 🇬🇧 とフランス語 🇫🇷"," の両方で行われたため、より幅広いコミュニティに届くイベントになりました。",[43,3000,3004,3028],{"className":3001},[20,3002,3003,1660],"kg-gallery-card","kg-width-wide",[17,3005,3008],{"className":3006},[3007],"kg-gallery-container",[17,3009,3012,3021],{"className":3010},[3011],"kg-gallery-row",[17,3013,3016],{"className":3014},[3015],"kg-gallery-image",[48,3017],{"src":3018,"width":2111,"height":3019,"loading":54,"alt":53,"srcSet":3020,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/02/image-4.png",1500,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/02/image-4.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/02/image-4.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/02/image-4.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w2400/2026/02/image-4.png 2400w",[17,3022,3024],{"className":3023},[3015],[48,3025],{"src":3026,"width":2111,"height":2990,"loading":54,"alt":53,"srcSet":3027,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/02/image-2.png","https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/02/image-2.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/02/image-2.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/02/image-2.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w2400/2026/02/image-2.png 2400w",[1666,3029,3030],{},[39,3031,3032],{},[2572,3033,3034],{},[802,3035,3037],{"className":3036,"style":1673},[2577],"2つの会場は一日中満席でした。時には、後ろに立っている人もいました。 ",[1715,3039,3040],{},"💬 制作のワークフローについて、オープンな対話を行うことへの強いニーズを感じました。",[63,3042],{},[66,3044,3046],{"id":3045},"%F0%9F%8E%A4-15-talks-real-production-stories","🎤 15本の講演、本物の制作ストーリー",[39,3048,3049],{},"アニメーション、VFX、そしてハイブリッドスタジオの各領域をまたいで、登壇者が次のような内容を共有してくれました：",[39,3051,3052,3053,3055,3056,3058,3059,3061,3062,3064,3065,3067,3068,3070],{},"• 受賞歴のある長編映画を制作",[2122,3054],{},"• 数百規模のプロジェクトをスケールして運営",[2122,3057],{},"• 完全にオープンソースのTVパイプラインを構築",[2122,3060],{},"• 3Dアセット管理を再定義",[2122,3063],{},"• ハイブリッドなワークフローで2Dと3Dを混在",[2122,3066],{},"• 3Dの技術を2Dパイプラインへ応用",[2122,3069],{},"• AIを制作に丁寧に統合 🤖",[17,3072,3075,3079],{"className":3073},[20,21,3074],"kg-callout-card-green",[17,3076,3078],{"className":3077},[26],"💡",[17,3080,3082,3083,3085,3087,3088],{"className":3081},[31],"下のYouTubeプレイリストで、講演の一部をご覧ください",[2122,3084],{},[2122,3086],{},"🔗",[231,3089,3092],{"href":3090,"rel":3091},"https://www.youtube.com/playlist?list=PLp_1gB5ZBHXpMe4lb2X6nDHmapNM7C2bP&ref=blog.cg-wire.com",[321]," Kitsu Summit 2026 講演",[39,3094,3095],{},"アプローチの多様さは印象的でした。Kitsuの使い方に「唯一の正解」はありません。そして、その柔軟性こそが強みのひとつです。",[43,3097,3099,3104],{"className":3098},[20,46,1660],[48,3100],{"src":3101,"className":3102,"alt":53,"loading":54,"width":2111,"height":2990,"srcSet":3103,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/02/image-3.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/02/image-3.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/02/image-3.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/02/image-3.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w2400/2026/02/image-3.png 2400w",[1666,3105,3106,3109,3114,3117,3122],{},[1671,3107,3108],{"style":1673},"登壇者 ",[2765,3110,3111],{},[261,3112,3113],{"style":1673},"Mario Hawat ",[1671,3115,3116],{"style":1673},"（",[2765,3118,3119],{},[261,3120,3121],{"style":1673},"Autour De Minuit ",[1671,3123,3124],{"style":1673},"）が、BlenderとKitsuが多様なアニメーションスタイルにまたがってどのように連携するかを共有しました。",[63,3126],{},[66,3128,3130],{"id":3129},"%F0%9F%9A%80-major-announcements","🚀 主な発表",[39,3132,3133],{},"サミットでは、私たちが次も発表しました：",[39,3135,3136,3137,3139,3140,3142],{},"• 新しいプラグインシステム",[2122,3138],{},"• 開発者向けドキュメントの刷新",[2122,3141],{},"• 2026年のKitsuロードマップ",[39,3144,3145,3146,3148,3149],{},"新しい開発者向けドキュメントはすでに公開されています：",[2122,3147],{},"🔗 ",[231,3150,3152],{"href":3151},"https://dev.kitsu.cloud/?ref=blog.cg-wire.com","https://dev.kitsu.cloud/",[1715,3154,3155],{},"一日を通してホスト兼MCを務め、各セッションを導き、すべてを予定どおりに保ち、文字通り最初から最後まで立ち続けてくれたCGWire CEOのFrank Rousseauに賛辞を。 ",[43,3157,3159,3164],{"className":3158},[20,46,1660],[48,3160],{"src":3161,"className":3162,"alt":53,"loading":54,"width":2111,"height":2990,"srcSet":3163,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/02/image-6.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/02/image-6.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/02/image-6.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/02/image-6.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w2400/2026/02/image-6.png 2400w",[1666,3165,3166,3172],{},[2572,3167,3168],{},[802,3169,3171],{"className":3170,"style":1673},[2577],"CGWireのプロダクトマネージャー、Gwenaelle Dupré がKitsuの最新かつ最高の機能を紹介します",[1671,3173,3174],{"style":1673}," 🦊 ",[63,3176],{},[66,3178,3180],{"id":3179},"%F0%9F%8D%BD-production-meets-gastronomy","🍽 制作が食の世界と交わる",[39,3182,3183],{},"では食事について話しましょう。",[39,3185,3186],{},"Marie Julien Cuisineが、ベジタリアン向けの選択肢も用意し、丁寧に意図を込めて作られた朝食、昼食、カクテルを提供してくれました。",[39,3188,3189],{},"もちろん、ワインのセレクションはそれ自体で言及に値します🍷",[39,3191,3192,3193,3196,3197,3200],{},"私たちは ",[261,3194,3195],{},"Domaine de Brin の Pierres Blanches"," と ",[261,3198,3199],{},"Domaine de Montaillant の Groseille"," を楽しみ、サミットの昼食にフランスらしいはっきりした風味を添えてくれました。",[43,3202,3204,3210],{"className":3203},[20,46,1660],[48,3205],{"src":3206,"className":3207,"alt":53,"loading":54,"width":3208,"height":56,"srcSet":3209,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/02/CleanShot-2026-02-24-at-3---.07.30@2x.png",[52],1794,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/02/CleanShot-2026-02-24-at-3---.07.30@2x.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/02/CleanShot-2026-02-24-at-3---.07.30@2x.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/02/CleanShot-2026-02-24-at-3---.07.30@2x.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/02/CleanShot-2026-02-24-at-3---.07.30@2x.png 1794w",[1666,3211,3212],{},[2572,3213,3214],{},[802,3215,3217],{"className":3216,"style":1673},[2577],"素晴らしい食事。素晴らしいワイン。素晴らしい会話。",[39,3219,3220],{},"最も価値のある議論のいくつかは、お皿とグラスを前にして生まれました。以前はリモートでしか話したことがなかったスタジオチームとも、直接会うことができました。",[1715,3222,3223],{},"🤝 私たちにとって、多くの人がKitsuを「名前」ではなく「顔」として本当に持てるようになりました。",[63,3225],{},[66,3227,3229],{"id":3228},"%F0%9F%8C%8D-from-slack-messages-to-real-conversations","🌍 Slackのメッセージから、リアルな会話へ",[39,3231,3232],{},"この日の中で最も嬉しかったことのひとつは、チケット、通話、レビューのメモを通じて何年も協働してきた相手と、ついに対面で会えたことです。",[82,3234,3235,3238,3241],{},[85,3236,3237],{},"制作マネージャー。",[85,3239,3240],{},"テクニカルディレクター。",[85,3242,3243],{},"スタジオの創設者。",[39,3245,3246],{},"リモートの会話から、対面でのやり取りへ移行することには強い力があります。",[82,3248,3249,3252,3255],{},[85,3250,3251],{},"新しいプロジェクトの話。",[85,3253,3254],{},"アイデアへの挑戦。",[85,3256,3257],{},"つながりが強化された。",[63,3259],{},[66,3261,3263],{"id":3262},"%F0%9F%A5%82-and-we-didn%E2%80%99t-want-it-to-end","🥂 そして、終わらせたくなかった",[39,3265,3266],{},"クロージングのカクテルは、長い会話に変わりました。",[39,3268,3269],{},"あまりにも長かったので、最終的に（丁寧に）会場を出るようお願いされるほどでした。",[39,3271,3272],{},"その流れは自然に、スピーカーディナーへ。サミットを実現してくれた人たちに感謝する、リラックスした夜となりました。",[39,3274,3275,3276,3279],{},"専門性を共有するためにパリまで来てくれた、すべての登壇者へ大きな感謝を。遠い ",[261,3277,3278],{},"ハイデラバードやニューヨーク"," から来てくれた方もいました 🌎",[39,3281,3282],{},"このレベルのコミットメントはとても大きな意味があります。",[39,3284,3285],{},"あなたがパイプライン、課題、そして学びを分かち合ってくれたことが、このサミットを意義あるものにしました。",[63,3287],{},[66,3289,3291],{"id":3290},"%F0%9F%92%9B-a-milestone-for-the-community","💛 コミュニティにとっての節目",[39,3293,3294],{},"最初のKitsu Summitは、重要なことを証明しました。",[82,3296,3297,3300,3303],{},[85,3298,3299],{},"スタジオは、自分たちが作っているものを共有したい。",[85,3301,3302],{},"同じような課題に対して、他者がどう解決しているかを見たい。",[85,3304,3305],{},"ワークフロー、ツール、そして制作現場のリアルについて、正直な会話をしたい。",[39,3307,3308],{},"そして何よりも、プロジェクトの背後にいる人たちに会いたい。たくさんの見覚えのある名前が、現実の「顔」になるのを目にできたことは、この日の最もやりがいのある部分のひとつでした。",[39,3310,3311],{},"参加してくださった皆さま、登壇してくださった皆さま、支えてくださった皆さま、そして照明が消えるまで残ってくださった皆さまに、心からありがとうございます。これは単なるカンファレンスではありません。もっと大きな何かの始まりでした🦊",[39,3313,3314,3315,3318,3319,3322],{},"また、キツサミットを支え、このイベントを実現するのを助けてくださったスポンサー ",[261,3316,3317],{},"Ranch Computing、TVPaint"," & ",[261,3320,3321],{},"Lenovo"," に大きな感謝を。昼食ビュッフェのスポンサーも快く引き受けてくださいました。",[39,3324,3325],{},"Lenovoの高性能ワークステーションは、アニメーションやVFXにまたがる要求の高い制作を支えています。パリで彼らとご一緒できたことを誇りに思います。",[39,3327,3328,3329,3334,3336,3337,3341,3343,3344],{},"🔗 Lenovo: ",[231,3330,3333],{"href":3331,"rel":3332},"https://www.lenovo.com/?ref=blog.cg-wire.com",[321],"https://www.lenovo.com/",[2122,3335],{},"🔗 TVPaint: ",[231,3338,3340],{"href":3339},"https://tvpaint.com/?ref=blog.cg-wire.com","https://tvpaint.com/",[2122,3342],{},"🔗 Ranch Computer: ",[231,3345,3347],{"href":3346},"https://www.ranchcomputing.com/en/?ref=blog.cg-wire.com","https://www.ranchcomputing.com/",[43,3349,3351,3358],{"className":3350},[20,46,1660],[48,3352],{"src":3353,"className":3354,"alt":53,"loading":54,"width":3355,"height":3356,"srcSet":3357,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/02/CleanShot-2026-02-24-at-3---.10.39@2x.png",[52],1490,1214,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/02/CleanShot-2026-02-24-at-3---.10.39@2x.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/02/CleanShot-2026-02-24-at-3---.10.39@2x.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/02/CleanShot-2026-02-24-at-3---.10.39@2x.png 1490w",[1666,3359,3360,3366],{},[2572,3361,3362],{},[802,3363,3365],{"className":3364,"style":1673},[2577],"スポンサーの皆さまに大きな感謝を ",[1671,3367,3368],{"style":1673},"🙌",[63,3370],{},[66,3372,3374],{"id":3373},"see-you-next-year-%F0%9F%91%8B","来年また会いましょう 👋",[39,3376,3377],{},"この最初の開催で分かったことがあるとすれば、制作のプロフェッショナルたちは、このような場を求めている、ということです。",[82,3379,3380,3383,3386],{},[85,3381,3382],{},"さらに透明性を。",[85,3384,3385],{},"さらに共有されたパイプラインを。",[85,3387,3388],{},"さらに正直な会話を。",[39,3390,3391],{},"次回を、あなたと一緒に作り上げるのが待ちきれません。",[17,3393,3395,3398],{"className":3394},[20,21,22],[17,3396,312],{"className":3397},[26],[17,3399,3401,3402,3406],{"className":3400},[31],"アニメーション制作のプロセスについてもっと知るには ",[231,3403,1982],{"href":3404,"rel":3405},"https://www.cg-wire.com/community?ref=blog.cg-wire.com",[321],"！ベストプラクティスを共有する1,000人以上の専門家とつながれて、時には対面イベントも企画しています。ぜひ歓迎します！ 😊",[17,3408,3410],{"className":3409},[20,327,328],[231,3411,3413],{"href":3404,"className":3412},[332,333],"Discordコミュニティに参加する",{"title":53,"searchDepth":336,"depth":336,"links":3415},[3416,3417,3418,3419,3420,3421,3422,3423,3424],{"id":2941,"depth":336,"text":2942},{"id":2978,"depth":336,"text":2979},{"id":3045,"depth":336,"text":3046},{"id":3129,"depth":336,"text":3130},{"id":3179,"depth":336,"text":3180},{"id":3228,"depth":336,"text":3229},{"id":3262,"depth":336,"text":3263},{"id":3290,"depth":336,"text":3291},{"id":3373,"depth":336,"text":3374},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/02/4080-3072-max.jpg",{"updated_at":3427,"featured_at":350,"visibility":351},"2026-03-04T12:37:27.000+01:00","/blog-i18n/ja/kitsu-summit-2026","2026-03-01T15:40:29.000+01:00",{"title":2886,"description":53},"kitsu-summit-2026","blog-i18n/ja/kitsu-summit-2026/index",[3434],{"id":359,"name":360,"slug":361,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":2882},"8mWs5KNf47hZnVSFUmdTH2S_JrOWCpaUNVguO8_E9EY",{"id":3437,"title":3438,"authors":3439,"body":3441,"description":3445,"extension":346,"feature_image":3891,"html":11,"meta":3892,"navigation":352,"path":3894,"published_at":3895,"seo":3896,"slug":3897,"stem":3898,"tags":3899,"__hash__":3901,"updated_at":3893,"featured_at":350,"visibility":351},"blog/blog-i18n/ja/build-in-public-december-2025-update/index.md","公開制作: 2025年12月アップデート",[3440],{"id":2023,"name":2024,"slug":2025,"profile_image":2026,"cover_image":2027,"bio":2028,"website":2029,"location":2030,"facebook":11,"twitter":2031,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":2032},{"type":14,"value":3442,"toc":3882},[3443,3446,3448,3454,3461,3464,3472,3479,3487,3495,3503,3511,3513,3518,3529,3536,3538,3542,3552,3558,3599,3601,3605,3612,3619,3659,3661,3665,3675,3686,3731,3745,3791,3794,3796,3801,3804,3807,3850,3853,3855,3859,3862,3865,3876],[39,3444,3445],{},"最新のCGWireとKitsuのアップデートへようこそ！この3か月間、私たちは懸命に取り組んできました。そして、これまでの進捗、新機能、改善点をすべてお届けできることをうれしく思います。さっそく見ていきましょう！ 🚀",[63,3447],{},[66,3449,3451],{"id":3450},"kitsu-updates-%F0%9F%A6%8A",[261,3452,3453],{},"Kitsuアップデート 🦊",[39,3455,3456,3457,3460],{},"大きな節目を迎えました――",[261,3458,3459],{},"Kitsuは正式にバージョン1.0.0になりました","！ 🎉",[39,3462,3463],{},"これにより、プラットフォームは新しい章へ。あらゆる面で柔軟性、性能、そして磨き込みが進みました。新しいプラグインシステムから、より賢いスケジューリング、レビュー機能まで――新たに加わった内容をご紹介します：",[39,3465,3466,3469,3471],{},[261,3467,3468],{},"1. 🧩 プラグインシステム",[2122,3470],{},"Kitsuの新しいプラグインシステムにより、チームはカスタム機能でAPIを拡張できます。さらに近々、UIにまで及びます。少しのコードで、Kitsuをスタジオの実際のニーズに合わせて調整できます。",[39,3473,3148,3474],{},[231,3475,3478],{"href":3476,"rel":3477},"https://zou.cg-wire.com/plugins/?ref=blog.cg-wire.com",[321],"プラグインについて詳しく知る",[39,3480,3481,3484,3486],{},[261,3482,3483],{},"2. 🗓️ タスクタイプ向けスケジュール表示 & タイムシートのオーバーレイ",[2122,3485],{},"任意のタスクタイプページから、スケジュール表示の切り替えが可能になりました。費やした時間と見積もりを比較するために、タイムシートデータを重ねて表示できます――一目で実際の進捗を追うのに最適です。",[39,3488,3489,3492,3494],{},[261,3490,3491],{},"3. 📝 クライアントがコメントにフレームを添付できるように",[2122,3493],{},"共有プレイリストでフィードバックを残す際に、正確なフレームをピン留めできるようになりました。より明確で文脈もわかりやすく、いつものやり取りの往復を減らします。",[39,3496,3497,3500,3502],{},[261,3498,3499],{},"4. 🧠 同一エンティティの複数バージョンをプレイリストに追加",[2122,3501],{},"同じショットのアニメーション、コンポ、FXをレビューしたいですか？同一エンティティから、異なるタスクタイプを1つのプレイリストに追加できるようになりました。部署をまたいだレビューに最適です。",[39,3504,3505,3508,3510],{},[261,3506,3507],{},"5. ✉️ クライアント向けプレイリスト通知",[2122,3509],{},"手作業でのメール送信は不要に。プレイリストを共有する際、Kitsuを通じてクライアントに直接通知できます。リンクと手順が記載された、わかりやすいメールが届きます。",[63,3512],{},[66,3514,3515],{"id":2583},[261,3516,3517],{},"インフラストラクチャのアップデート 💽",[39,3519,3520,3521,3524,3525,3528],{},"今四半期のインフラ整備は、すべて",[261,3522,3523],{},"最適化","に注力しました。大きな節目として",[261,3526,3527],{},"PostgreSQLデータベース","をアップグレードし、その結果、プラットフォーム全体で明確なパフォーマンス向上につながりました。",[39,3530,3531,3532,3535],{},"また、サステナビリティを意識するユーザー向けに、小さいながらも意味のある機能を追加しました。サブスクリプション管理UIから",[261,3533,3534],{},"カーボン請求書に直接アクセス","できるようになったのです。Kitsuに紐づくカーボン消費の報告に必要なものは、クリックするだけです。",[63,3537],{},[66,3539,3540],{"id":2600},[261,3541,2603],{},[39,3543,3544,3547,3548,3551],{},[261,3545,3546],{},"RADI in Angoulême","にて素晴らしい発表を行いました。ここで私たちは、400人以上のアニメーション業界のプロの前で",[261,3549,3550],{},"Kitsu v1.0.0","を正式に発表しました。チームにとってもプロダクトにとっても大きな瞬間です！",[39,3553,3554,3555,3557],{},"一方で、私たちは次の",[261,3556,2851],{},"に向けて準備を本格化しています。土台が整った今、私たちの焦点はすべてが滞りなく進むこと。2月までカウントダウンしながら、続報をお伝えしていきます。",[43,3559,3561,3592],{"className":3560},[20,748,1660],[231,3562,3565,3586],{"className":3563,"href":3564},[752],"https://www.cg-wire.com/kitsu-summit?ref=blog.cg-wire.com",[17,3566,3568,3572,3576],{"className":3567},[757],[17,3569,3571],{"className":3570},[761],"Kitsu Summit 2026",[17,3573,3575],{"className":3574},[766],"2026年2月12日 - パリ, フランス - 制作のコラボレーションの未来へ参加しよう",[17,3577,3579,3583],{"className":3578},[770],[48,3580],{"className":3581,"src":3582,"alt":53},[774],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/icon/favicon-2.png",[1671,3584,3571],{"className":3585},[2558],[17,3587,3589],{"className":3588},[2563],[48,3590],{"src":3591,"alt":53},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/thumbnail/meetup.af7c0c6c.jpg",[1666,3593,3594],{},[39,3595,3596],{},[1671,3597,3598],{"style":1673},"👆 すべての詳細とチケットを手に入れてください！",[63,3600],{},[66,3602,3603],{"id":2707},[261,3604,2710],{},[39,3606,3607,3608,3611],{},"Q4は好調に締まりました。2024年にわたって",[261,3609,3610],{},"わずかではあるが着実な収入増","があり、現在の市場環境を踏まえると誇らしい結果です。 ",[39,3613,3614,3615,3618],{},"また、プロダクト開発への継続投資とコミュニティの成長を支えるために、",[261,3616,3617],{},"フランスBPIからの新しい融資","にも申請しました。",[43,3620,3622,3648],{"className":3621},[20,748,1660],[231,3623,3625,3643],{"className":3624,"href":2731},[752],[17,3626,3628,3631,3634],{"className":3627},[757],[17,3629,2738],{"className":3630},[761],[17,3632,2742],{"className":3633},[766],[17,3635,3637,3640],{"className":3636},[770],[48,3638],{"className":3639,"src":2749,"alt":53},[774],[1671,3641,2753],{"className":3642},[2558],[17,3644,3646],{"className":3645},[2563],[48,3647],{"src":2759,"alt":53},[1666,3649,3650],{},[39,3651,3652,3656],{},[2765,3653,3654],{},[261,3655,2769],{"style":1673},[1671,3657,3658],{"style":1673},"公開しているKPIをチェックして、舞台裏での進捗も確認してみてください",[63,3660],{},[66,3662,3663],{"id":2777},[261,3664,2780],{},[39,3666,3667,3668,3670,3671,3674],{},"情報発信を続けています！",[261,3669,2851],{},"が近づき、そして",[261,3672,3673],{},"v1.0.0が正式にリリース","されたことを受けて、節目を記念するフランス向けPRキャンペーンをスタートしました。",[39,3676,3677,3678,3681,3682,3685],{},"Kitsuは最近",[261,3679,3680],{},"Écran Total","と",[261,3683,3684],{},"3DVF","の両方で取り上げられ、パワフルで使いやすいツールによって創造産業を支えるという私たちのミッションが紹介されました：",[43,3687,3689,3724],{"className":3688},[20,748,1660],[231,3690,3693,3718],{"className":3691,"href":3692},[752],"https://3dvf.com/collaboration-et-gestion-de-production-kitsu-passe-en-version-1/?ref=blog.cg-wire.com",[17,3694,3696,3700,3704],{"className":3695},[757],[17,3697,3699],{"className":3698},[761],"Collaboration et gestion de production : Kitsu passe en version 1",[17,3701,3703],{"className":3702},[766],"Découvrez les avancées de Kitsu V1 pour l’animation et VFX. Optimisez production avec outils de planification, budget et plugins.",[17,3705,3707,3711,3714],{"className":3706},[770],[48,3708],{"className":3709,"src":3710,"alt":53},[774],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/icon/favicon-3.jpg",[1671,3712,3684],{"className":3713},[2558],[1671,3715,3717],{"className":3716},[2677],"Benoît Rogez",[17,3719,3721],{"className":3720},[2563],[48,3722],{"src":3723,"alt":53},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/thumbnail/kitsu-3.webp",[1666,3725,3726],{},[39,3727,3728],{},[1671,3729,3730],{"style":1673},"📚 3DVFでのKitsu 1.0の掲載情報",[43,3732,3734,3738],{"className":3733},[20,719,1660],[721,3735],{"width":723,"height":724,"src":3736,"frameBorder":726,"allow":727,"referrerPolicy":728,"allowFullScreen":352,"title":3737},"https://www.youtube.com/embed/xPwCcV0X3Xw?feature=oembed","Kitsu by CGWire : V1, finances, bilan carbone, Autodesk... Kitsu nous dit tout !",[1666,3739,3740],{},[39,3741,3742],{},[1671,3743,3744],{"style":1673},"🎥 Écran Totalでの動画インタビュー",[43,3746,3748,3784],{"className":3747},[20,748,1660],[231,3749,3752,3778],{"className":3750,"href":3751},[752],"https://ecran-total.fr/2025/11/18/interview-de-franck-rousseau-fondateur-et-directeur-general-de-cgwire-il-faut-des-outils-capables-de-faire-cohabiter-industrie-et-creation-artistique/?ref=blog.cg-wire.com",[17,3753,3755,3759,3763],{"className":3754},[757],[17,3756,3758],{"className":3757},[761],"Frank Rousseau, fondateur et directeur général de CGWire : “Il faut des outils capables de faire cohabiter industrie et création artistique”",[17,3760,3762],{"className":3761},[766],"CGWire est né du constat que les studios d’animation manquaient d’outils efficaces pour structurer leur production et coordonner leurs équipes. De cette nécessité est née Kitsu, une plateforme open source qui accompagne aujourd’hui la transformation numérique des studios en simplifiant le suivi des tâches et la collaboration à distance. Entretien avec Frank Rousseau, son créateur.",[17,3764,3766,3770,3774],{"className":3765},[770],[48,3767],{"className":3768,"src":3769,"alt":53},[774],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/icon/et-favicon-1.svg",[1671,3771,3773],{"className":3772},[2558],"Ecran Total",[1671,3775,3777],{"className":3776},[2677],"Joseph Le Fer",[17,3779,3781],{"className":3780},[2563],[48,3782],{"src":3783,"alt":53},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/thumbnail/frank_rousseau_cgwire-1.jpg",[1666,3785,3786],{},[39,3787,3788],{},[1671,3789,3790],{"style":1673},"📰 Franck Rousseauとのインタビュー（Écran Total）",[39,3792,3793],{},"Kitsuの魅力について、世界中のチームに向けてこれからも共有していきます。",[63,3795],{},[66,3797,3798],{"id":2795},[261,3799,3800],{},"スタジオ & プロダクション 🏫",[39,3802,3803],{},"この3か月の間、私たちはKitsuファミリーにいくつもの一流組織をお迎えできたことを光栄に思っています。これらのスタジオはゲーム、映画、そしてアニメーションにまたがり、それぞれが新しいエネルギー、フィードバック、そして創造性をエコシステムへ持ち込んでくれています。",[39,3805,3806],{},"最近の追加メンバーの一覧はこちらです：🎬",[82,3808,3809,3816,3819,3826,3829,3836,3843],{},[85,3810,3811],{},[231,3812,3815],{"href":3813,"rel":3814},"https://pianosanofilms.fr/?ref=blog.cg-wire.com",[321],"Piano Sano",[85,3817,3818],{},"Clown 13",[85,3820,3821],{},[231,3822,3825],{"href":3823,"rel":3824},"https://www.k3dvfx.com/?ref=blog.cg-wire.com",[321],"Kiddigraph",[85,3827,3828],{},"Soup Kitchen",[85,3830,3831],{},[231,3832,3835],{"href":3833,"rel":3834},"https://www.offensivegroup.com/?ref=blog.cg-wire.com",[321],"Offensive Marketing Group",[85,3837,3838],{},[231,3839,3842],{"href":3840,"rel":3841},"https://studio.grange-animation.com/?ref=blog.cg-wire.com",[321],"La Grange Animation",[85,3844,3845],{},[231,3846,3849],{"href":3847,"rel":3848},"https://scrawlanimation.com/?ref=blog.cg-wire.com",[321],"Scrawl animation",[39,3851,3852],{},"これらのチームがパイプラインを拡大し、レビューを効率化し、素晴らしい物語を現実のものにしていくのを支えられることをうれしく思います。ようこそ、参加してください！ 👋✨",[63,3854],{},[66,3856,3857,2842],{"id":2838},[261,3858,2841],{},[39,3860,3861],{},"読んでくださって、そして私たちの歩みを追ってくださってありがとうございます！ 🙌",[39,3863,3864],{},"長年のユーザーの方も、Kitsuを今知ったばかりの方も、私たちはいつでもつながれることを楽しみにしています。ご質問やフィードバック、共有したいアイデアがあれば、遠慮なくご連絡ください。コミュニティの声を聞くのが大好きです。 💬",[39,3866,3867,3868,3871,3872,3875],{},"年末の締めくくりとして、これまでの",[261,3869,3870],{},"ご支援に心から感謝します","。そして",[261,3873,3874],{},"2026","が、創造性、コラボレーション、成功に満ちた幸せなスタートとなりますように。 ✨",[39,3877,3878,3881],{},[261,3879,3880],{},"3月","に、さらに多くのアップデート、洞察、そして舞台裏のニュースとともに戻ってきます。それまで、どうかお元気で。またすぐお会いしましょう！ 👋 🎉",{"title":53,"searchDepth":336,"depth":336,"links":3883},[3884,3885,3886,3887,3888,3889,3890],{"id":3450,"depth":336,"text":3453},{"id":2583,"depth":336,"text":3517},{"id":2600,"depth":336,"text":2603},{"id":2707,"depth":336,"text":2710},{"id":2777,"depth":336,"text":2780},{"id":2795,"depth":336,"text":3800},{"id":2838,"depth":336,"text":2871},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/12/buildinpublic_december_2025.png",{"updated_at":3893,"featured_at":350,"visibility":351},"2026-03-26T10:56:37.000+01:00","/blog-i18n/ja/build-in-public-december-2025-update","2025-12-31T13:00:26.000+01:00",{"title":3438,"description":3445},"パブリックビルド2025年12月アップデート","blog-i18n/ja/build-in-public-december-2025-update/index",[3900],{"id":359,"name":360,"slug":361,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":2882},"ZmlreapDhaSqYABqk40l0LogSIXNrbqV77vnjMfpTAw",{"id":3903,"title":3904,"authors":3905,"body":3907,"description":3911,"extension":346,"feature_image":4176,"html":11,"meta":4177,"navigation":352,"path":4179,"published_at":4180,"seo":4181,"slug":4182,"stem":4183,"tags":4184,"__hash__":4186,"updated_at":4178,"featured_at":350,"visibility":351},"blog/blog-i18n/ja/kitsu-v1-0-0-is-out/index.md","Kitsu v1.0.0 がリリースされました！",[3906],{"id":2023,"name":2024,"slug":2025,"profile_image":2026,"cover_image":2027,"bio":2028,"website":2029,"location":2030,"facebook":11,"twitter":2031,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":2032},{"type":14,"value":3908,"toc":4170},[3909,3912,3915,3918,3921,3924,3927,3930,3933,3942,3946,3949,3954,3957,3966,3971,3974,3983,3988,3991,4000,4005,4008,4016,4021,4024,4033,4038,4041,4051,4055,4058,4091,4094,4098,4101,4104,4107,4110,4113,4123,4127,4130,4162],[39,3910,3911],{},"TVシリーズから有名な長編映画まで、Kitsu は 2D、3D、2D/3D、VFX、ストップモーション、没入型体験、大規模なプロジェクションなど、幅広い制作スタイルに携わってきました。",[39,3913,3914],{},"さらに、ここ数年で Kitsu は、制作パイプラインとワークフローの成熟、ロックダウン、プラットフォームの急成長、そして直近の危機といった、あらゆる大きな変化の中で、アニメーションおよび VFX 業界を支えてきました。 ",[39,3916,3917],{},"Kitsu により、スタジオはリモートワークや共同制作に基づく分散型の体制を導入できるようになりました。良い時期には、多くのアーティストを迅速にオンボードしやすくし、その後は、リーンな運用でチーム編成を進めやすくしました。",[39,3919,3920],{},"現在では、アニメーションおよび VFX 業界の 10,000 人以上のプロフェッショナルが、毎日 Kitsu を使用しています。何千時間もの映画が、私たちのシステムを通じてレビューされ、納品されました。Kitsu は数多くの制作現場で鍛えられ、その優れた性能を証明してきました。Kistu を使用した映画は、主要なすべての賞（クリスタル、オスカー、パルム・ドールなど）を受賞し、大きな観客に届くことで成功を収めました。 ",[39,3922,3923],{},"ゲーム業界もまた、Kitsu の力によって恩恵を受けました。著名なライセンシング企業のクリエイティブチームが、それぞれのアセットを管理し、アーティストと連携するために採用しました。",[39,3925,3926],{},"学生にとっても Kitsu は楽しみでした。学習の間にプロフェッショナル向けの環境を手に入れられるからです。若いプロフェッショナルの多くは、最初のスタジオでチーム環境で働き始める準備が整っていました。",[39,3928,3929],{},"何よりも、私たちのコミュニティが、プロセスを通じてソリューションの改善、改良、デバッグを支えてくれました。数え切れないほどのフィードバックと貢献を受け取りました。これにより、市場で最も正確なソフトウェアを構築できました。",[39,3931,3932],{},"だからこそ本日、Kitsu がバージョン 1.0.0 として利用可能になったことを誇らしく発表します！Kitsu が、制作の現場でそのまま使える堅牢なソフトウェアになったという事実を示すのは自然な流れでした。これは、制作パイプラインの一部として完全に機能することを、確実に実証できています。これで、制作に自信を持って利用できます。",[43,3934,3936],{"className":3935},[20,46],[48,3937],{"src":3938,"className":3939,"alt":53,"loading":54,"width":2111,"height":3940,"srcSet":3941,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/11/website_illustrations_illustration_awards_coloring_v6-2-3-.png",[52],1481,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2025/11/website_illustrations_illustration_awards_coloring_v6-2-3-.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2025/11/website_illustrations_illustration_awards_coloring_v6-2-3-.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2025/11/website_illustrations_illustration_awards_coloring_v6-2-3-.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/11/website_illustrations_illustration_awards_coloring_v6-2-3-.png 2000w",[933,3943,3945],{"id":3944},"main-recent-new-features","主な最近の新機能",[39,3947,3948],{},"すべてのバージョンに新機能が含まれています。以下は、バージョン 1.0.0 に追加した主な内容です。",[39,3950,3951],{},[802,3952,3953],{},"コンタクトシート",[39,3955,3956],{},"各ビューはコンタクトシートとして表示でき、制作のより視覚的な全体像を把握できます！",[43,3958,3960],{"className":3959},[20,46],[48,3961],{"src":3962,"className":3963,"alt":53,"loading":54,"width":2111,"height":3964,"srcSet":3965,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/11/screenshot-kitsu-vue-principale.png",[52],1048,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2025/11/screenshot-kitsu-vue-principale.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2025/11/screenshot-kitsu-vue-principale.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2025/11/screenshot-kitsu-vue-principale.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w2400/2025/11/screenshot-kitsu-vue-principale.png 2400w",[39,3967,3968],{},[802,3969,3970],{},"バージョン管理されたスケジュール",[39,3972,3973],{},"スケジュールを予測し、さまざまなシナリオを試すことができます。タスクの実際の日時に基づいて、この同じスケジュールを表示することも可能です。",[43,3975,3977],{"className":3976},[20,46],[48,3978],{"src":3979,"className":3980,"alt":53,"loading":54,"width":2111,"height":3981,"srcSet":3982,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/11/kitsu-plannin.png",[52],991,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2025/11/kitsu-plannin.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2025/11/kitsu-plannin.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2025/11/kitsu-plannin.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w2400/2025/11/kitsu-plannin.png 2400w",[39,3984,3985],{},[802,3986,3987],{},"タスクスケジュールの分割表示",[39,3989,3990],{},"進捗をより分かりやすくするために、スケジュールを分割表示として表示できます。",[43,3992,3994],{"className":3993},[20,46],[48,3995],{"src":3996,"className":3997,"alt":53,"loading":54,"width":2111,"height":3998,"srcSet":3999,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/11/Capture-d-----cran-du-2025-11-14-13-52-57.png",[52],1044,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2025/11/Capture-d-----cran-du-2025-11-14-13-52-57.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2025/11/Capture-d-----cran-du-2025-11-14-13-52-57.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2025/11/Capture-d-----cran-du-2025-11-14-13-52-57.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w2400/2025/11/Capture-d-----cran-du-2025-11-14-13-52-57.png 2400w",[39,4001,4002],{},[802,4003,4004],{},"タスクスケジュールの比較",[39,4006,4007],{},"タスクスケジュールのまま、これまでの手順や、タイムシートが入力された日を表示できます。こうすることで、文脈のある日付設定が可能になります。",[43,4009,4011],{"className":4010},[20,46],[48,4012],{"src":4013,"className":4014,"alt":53,"loading":54,"width":2111,"height":3981,"srcSet":4015,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/11/screenshot-kitsu-planning.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2025/11/screenshot-kitsu-planning.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2025/11/screenshot-kitsu-planning.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2025/11/screenshot-kitsu-planning.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w2400/2025/11/screenshot-kitsu-planning.png 2400w",[39,4017,4018],{},[802,4019,4020],{},"予算",[39,4022,4023],{},"Kitsu で、予算を予測し、さまざまなシナリオを試せるようになりました。ソフトウェアとハードウェアのコストが含まれます。さらに、実際の支出との比較も可能です。",[43,4025,4027],{"className":4026},[20,46],[48,4028],{"src":4029,"className":4030,"alt":53,"loading":54,"width":2111,"height":4031,"srcSet":4032,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/11/screenshot-kitsu-budget.png",[52],989,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2025/11/screenshot-kitsu-budget.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2025/11/screenshot-kitsu-budget.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2025/11/screenshot-kitsu-budget.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w2400/2025/11/screenshot-kitsu-budget.png 2400w",[39,4034,4035],{},[802,4036,4037],{},"プラグイン",[39,4039,4040],{},"最後になりましたが、Kitsu をあらゆる利用ケース向けに調整できるようになりました。そのために、機能を拡張する新しいプラグインを Kitsu 上でセットアップできます。 ",[43,4042,4044],{"className":4043},[20,46],[48,4045],{"src":4046,"className":4047,"alt":53,"loading":54,"width":4048,"height":4049,"srcSet":4050,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/11/image-1.png",[52],950,1142,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2025/11/image-1.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/11/image-1.png 950w",[933,4052,4054],{"id":4053},"upcoming-breaking-changes","今後の重要な変更（ブレイキングチェンジ）",[39,4056,4057],{},"この新しいバージョンは、いくつかのブレイキングチェンジを含む 1.1.0 バージョンの前触れです。後方互換性はありません。これらの変更は実行環境に関係しており、以下に示します：",[82,4059,4060,4071,4074],{},[85,4061,4062,4063],{},"Kitsu REST API（Zou）：以下のサポートを削除",[82,4064,4065,4068],{},[85,4066,4067],{},"Postgres \u003C 14",[85,4069,4070],{},"Python \u003C 3.10",[85,4072,4073],{},"Python API（Gazu） - 以下のサポートを削除：Python 2.7 および Python 3.6",[85,4075,4076,4077],{},"Kitsu UI：以下の Web ブラウザのみがサポート対象になります",[82,4078,4079,4082,4085,4088],{},[85,4080,4081],{},"Chrome >=107",[85,4083,4084],{},"Edge >=107",[85,4086,4087],{},"Firefox >=104",[85,4089,4090],{},"Safari >=16",[39,4092,4093],{},"これらのツールがどうしても必要な場合でも、v1.0.0 は常に堅牢なソフトウェアとして利用できます。Kitsu をセルフホストしており、最新バージョンに追従したい場合は、依存関係を更新する必要があります。クラウドおよびオンプレミスのユーザーは、Kitsu REST API の変更の影響を受けません。",[933,4095,4097],{"id":4096},"whats-next","次に何が起こるか",[39,4099,4100],{},"Kitsu の開始以来、私たちは主に 2 つの開発を進めてきました。1 つ目は、アーティスト、スーパーバイザー、監督向けに専念したものでした。これは、タスクのディスパッチ、コメント、ステータス更新、レビューエンジンなど、コラボレーションと作業のレビューに必要な基本機能を含んでいました。",[39,4102,4103],{},"次に、プロデューサー向けの新しいフェーズに取り組み、スケジューリング、予算、プロジェクト横断の機能（そして近々、カーボン消費のトラッキング）を提供しました。また、予測を実データと比較する機能も追加しました。",[39,4105,4106],{},"これら 2 つの大きな追加の後、私たちは統合（consolidation）のフェーズに入り、既存のすべての機能を洗練し、パフォーマンスを最適化します。これが完了したら、テクニカルディレクター向けの第 3 フェーズに進みます。",[39,4108,4109],{},"私たちは Kisu の統合機能と拡張機能に注力します。つまり、DCC との連携をシームレスにし、プラグインシステムがあらゆる利用ケースをカバーできるようにしていきます。",[39,4111,4112],{},"全体として、バージョン 1.0.0 は Kitsu にとって大きなマイルストーンです。長く、そしてコミットして行ってきた仕事をまとめ上げ、ソフトウェアの新しい時代への扉を開きます。私たちは、あなたが",[43,4114,4116],{"className":4115},[20,46],[48,4117],{"src":4118,"className":4119,"alt":53,"loading":54,"width":4120,"height":4121,"srcSet":4122,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/11/image-2.png",[52],906,965,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2025/11/image-2.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/11/image-2.png 906w",[933,4124,4126],{"id":4125},"celebrate-it","お祝いしましょう！",[39,4128,4129],{},"私たちは、このリリースを 2 月 12 日、フランス・パリの中心で Kitsu に捧げる 1 日まるごとのカンファレンスでお祝いします！今後のロードマップについて、より詳しい情報をお届けします。Kitsu がこれほど多くのクリエイティブ・プロフェッショナルに影響している今、このイベントは業界に大きなインパクトを与えることでしょう。制作コラボレーションの未来を一緒に設計しましょう。この貴重なイベントにぜひご参加ください！",[43,4131,4133],{"className":4132},[20,748],[231,4134,4136,4156],{"className":4135,"href":3564},[752],[17,4137,4139,4142,4146],{"className":4138},[757],[17,4140,3571],{"className":4141},[761],[17,4143,4145],{"className":4144},[766],"2026年2月12日 - フランス・パリ - 制作コラボレーションの未来に参加しよう",[17,4147,4149,4153],{"className":4148},[770],[48,4150],{"className":4151,"src":4152,"alt":53},[774],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/icon/favicon-4.png",[1671,4154,3571],{"className":4155},[2558],[17,4157,4159],{"className":4158},[2563],[48,4160],{"src":4161,"alt":53},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/thumbnail/meetup.af7c0c6c-1.jpg",[43,4163,4165],{"className":4164},[20,46],[48,4166],{"src":4167,"className":4168,"alt":53,"loading":54,"width":55,"height":56,"srcSet":4169,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/11/image.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2025/11/image.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2025/11/image.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2025/11/image.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/11/image.png 1920w",{"title":53,"searchDepth":336,"depth":336,"links":4171},[4172,4173,4174,4175],{"id":3944,"depth":1088,"text":3945},{"id":4053,"depth":1088,"text":4054},{"id":4096,"depth":1088,"text":4097},{"id":4125,"depth":1088,"text":4126},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/11/Kitsu-V1_Final.png",{"updated_at":4178,"featured_at":350,"visibility":351},"2025-11-26T12:52:20.000+01:00","/blog-i18n/ja/kitsu-v1-0-0-is-out","2025-11-26T12:50:07.000+01:00",{"title":3904,"description":3911},"kitsu-v1-0-0リリース","blog-i18n/ja/kitsu-v1-0-0-is-out/index",[4185],{"id":359,"name":360,"slug":361,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":2882},"JqRZ7TOSdyNB6XjKJOgqwASRApk25_mu8SOdtNRAs80",[4188,4855,5234,5551,5975],{"id":4189,"title":4190,"authors":4191,"body":4193,"description":4197,"extension":346,"feature_image":4835,"html":11,"meta":4836,"navigation":352,"path":4838,"published_at":4839,"seo":4840,"slug":4841,"stem":4842,"tags":4843,"__hash__":4854,"updated_at":4837,"そして半年後に気づきます。会社に対してIP（知的財産）の所有権を適切に割り当てていなかったこと、支払い条項のないままクライアント契約にサインしていたこと、保険を省いたせいで、納品前に放送局から「必須の条件」を突きつけられたことなどです。\nどれも高くつく教訓です。\nこの記事は、それを防ぐための試みです。新しいスタジオが初年度に下さなければならない、主要な法務・財務・パイプラインの判断を、走りながら確認できるチェックリストとしてまとめました。It's a r\" featured_at":350,"visibility":351},"blog/blog-i18n/ja/animation-studio-setup-checklist-year-one/index.md","アニメーションスタジオ立ち上げチェックリスト：初年度に新スタジオが下すべき、あらゆる管理・事業・法務・パイプライン上の決定",[4192],{"id":8,"name":9,"slug":10,"profile_image":11,"cover_image":11,"bio":11,"website":11,"location":11,"facebook":11,"twitter":11,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":12},{"type":14,"value":4194,"toc":4801},[4195,4198,4201,4204,4207,4210,4213,4217,4220,4226,4232,4236,4242,4248,4252,4258,4264,4270,4274,4278,4284,4290,4296,4302,4306,4312,4318,4324,4328,4334,4340,4346,4352,4356,4362,4368,4374,4381,4387,4393,4397,4403,4409,4415,4421,4427,4433,4437,4440,4444,4450,4456,4460,4466,4472,4478,4482,4488,4494,4498,4504,4510,4514,4517,4521,4527,4533,4536,4540,4546,4552,4555,4559,4565,4571,4577,4581,4587,4593,4596,4600,4606,4609,4613,4619,4625,4631,4637,4643,4649,4653,4656,4660,4666,4669,4675,4681,4685,4691,4697,4703,4706,4710,4716,4722,4728,4731,4735,4741,4747,4753,4757,4760,4763,4795,4798],[39,4196,4197],{},"多くのアーティストは、自分のアニメーションスタジオを立ち上げることを夢見ています。しかし始めてみると、アートそのものに過度に集中してしまい、ビジネス面のあらゆる要素を見落としがちです。",[39,4199,4200],{},"そして6か月もすると、会社に対するIP（知的財産）の所有権を適切に割り当てていなかったこと、支払い条項のないままクライアント契約にサインしていたこと、保険をスキップしたせいで、放送局が納品前に「厳しい要件」を持ち戻ってきたことなどに気づきます。",[39,4202,4203],{},"これらは高額な学びになります。",[39,4205,4206],{},"この記事は、それを防ぐための試みです。新しいスタジオが初年度に下す必要のある、主要な法務・財務・パイプラインの判断を、運用しながら確認できるチェックリストとしてまとめました。",[39,4208,4209],{},"この内容は、スタジオが実際に形になっていく自然な流れに沿って構成されています。まず「あなたは誰で、誰に提供するのか」から始め、法人設立、顧客獲得、制作パイプラインへと進み、最後に成長する運営を支える採用と設備の判断を扱います。各セクションでは、何をすべきかだけでなく、それがなぜ重要か、そしてそれを飛ばした場合に何が起きるのかを説明します。",[39,4211,4212],{},"進む前の注意：このチェックリストは出発点となる枠組みです。要件は、管轄（国・地域）、プロジェクトの種類、スタジオ規模によって変わります。状況に合わせた判断を行う際は、必ず有資格の法律・財務・業界の専門家に相談してください。この記事は、エンターテイメント弁護士、CPA（会計士）、ライセンス許可を持つ保険ブローカーに代わるものではありません。",[66,4214,4216],{"id":4215},"_1-studio-identity-service-focus-and-target-market","1. スタジオのアイデンティティ、サービス方針、ターゲット市場",[39,4218,4219],{},"法人化や契約締結の前に答えるべき、より根本的な問いがあります。それは、「どんなスタジオを作るのか」、そして「誰のために作られるのか」です。",[39,4221,4222,4225],{},[261,4223,4224],{},"あらゆるカテゴリのクライアントに対応しようとするスタジオは、ポジショニングも難しく、採用もしづらくなります。"," スタジオが最も得意とする制作の2〜3カテゴリを定め、その制作を買うタイプのクライアントを特定し、その焦点に沿ってマーケティングとアウトリーチを組み立てることが土台のステップです。スタジオ単位でのゼネラリスト化はコモディティ価格につながり、一方で特化はプレミアム料金の正当性になります。もちろんアニメーションスタジオは時間とともに進化できますが、最初から薄く広げすぎないでください。",[39,4227,4228,4231],{},[261,4229,4230],{},"サービス方針も、その後のほぼすべての判断を左右します。"," 放送向けの2Dシリーズを狙うスタジオは、放送ではない広告アニメや独立系の短編コンテンツに注力するスタジオと比べて、必要なソフトウェア、保険の種類、労働組合に関する検討、契約の組み方が異なります。これを早い段階で明確にすることで、下流の意思決定にも明確な根拠が生まれます。",[933,4233,4235],{"id":4234},"define-your-offering","提供内容を定義する",[39,4237,4238,4241],{},[261,4239,4240],{},"スタジオが制作するために作られているプロジェクトの2〜3種類は、他のことをする前に、具体的な条件で書き出しておくべきです。"," 「子どもの放送向けの2Dキャラクターアニメ」はポジションです。「アニメーション」だと広すぎます。この定義が、リール（ショーリール）、料金表、採用の優先順位、そしてスタジオが狙うクライアントの種類を形作ります。",[39,4243,4244,4247],{},[261,4245,4246],{},"最初のプロジェクトの見積もりを出す前に、料金表（レートカード）を作っておくべきです。"," よくある納品物タイプ（例：30秒の放送スポット、1分の解説動画、キャラクターリグなど）の標準レートがあれば、クライアントが支払える金額についての推測に基づいたリアクティブ（場当たり的）な価格設定を避けられます。リアクティブな価格設定は不整合、過小見積もり、持続不可能なマージンに依存したクライアント関係につながります。社内レートを各見積もりの出発点として使うことで、事業全体の一貫性を保てます。",[933,4249,4251],{"id":4250},"brand-and-visual-identity","ブランドとビジュアルアイデンティティ",[39,4253,4254,4257],{},[261,4255,4256],{},"スタジオのビジュアルアイデンティティは、公開ローンチの前に完成しているべきです。"," スタジオ名、ロゴ、カラーパレット、タイポグラフィは、まとまりのある一つのシステムとして機能するように設計されるのが理想です。スタジオを公に告知する前に、関連するすべてのSNSアカウントのハンドルやドメイン名を登録しておくべきです（すぐに全部使わない場合でも）。ドメインの不正取得（ドメインスクワッティング）やハンドルの不正取得は現実の問題で、後から取り戻すのは高コストになり、場合によっては不可能なこともあります。",[39,4259,4260,4263],{},[261,4261,4262],{},"リール付きのWebサイトは、新規ビジネス開拓のための主要なマーケティング資産であり、クライアントを追いかける前に用意すべきです。"," Webサイトを持つのは土地を持つのと同じです。リールはスタジオの制作の幅と品質を示し、2〜3分を超えない長さにして、最も強い素材から始めてください。現在表示している作品の品質基準を引き上げるような制作が完了するたびに、リールは更新しましょう。",[39,4265,4266,4269],{},[261,4267,4268],{},"ピッチデックのテンプレートは早めに作る価値があります。機会に対して素早く返せること自体が競争上の優位になるからです。"," キャパビリティ（能力）デックは、見込み顧客にスタジオを紹介します。チーム、提供サービス、これまでの実績、そして制作プロセスです。プロジェクトのピッチデックは、オリジナルコンテンツに対する特定のクリエイティブ方針を提案します。",[66,4271,4273],{"id":4272},"_2-business-formation-and-legal-structure","2. 事業設立と法的な組織形態",[933,4275,4277],{"id":4276},"entity-and-registration","組織形態と登録",[39,4279,4280,4283],{},[261,4281,4282],{},"多くの小規模スタジオはLLCとしてスタートします。LLCは、個人の資産を事業上の負債から切り離せる一方で、株式会社よりも運用がシンプルだからです。"," たとえば、納品失敗でスタジオが訴えられた場合、LLCの仕組みなら、創業者の個人の銀行口座や自宅が直接的にリスクにさらされません。ベンチャーキャピタルを調達する段階でC-Corpが関係してきます。投資家やファンドは通常、株式の設計（エクイティ構造）にC-Corpを求めるからです。個人事業主は、責任の保護がなく、従業員やクライアントと一緒に運営するスタジオには適していません。",[39,4285,4286,4289],{},[261,4287,4288],{},"事業名の登録、定款または設立書類の提出、IRSからの連邦雇用者識別番号（EIN）の取得は、いずれも初期段階で必要な手続きです。"," EINは、事業用銀行口座の開設、従業員の雇用、税務の正しい申告に必要です。外注へ支払いをしているのにEINがない状態で運用するのは、初期によくあるミスで、税務の時期に照合（レコンシリエーション）の問題を生みます。",[39,4291,4292,4295],{},[261,4293,4294],{},"事業の財務と個人の財務は、初日から分けるべきです。"," 個人の口座から外注に支払う、あるいは個人カードでソフトを購入する、といった形で資金を混ぜると、帳簿付けが複雑になり、組織形態が持つ法的な保護を弱める可能性があります。専用の事業用当座預金口座と事業用クレジットカードも、月次クローズを簡単にします。",[39,4297,4298,4301],{},[261,4299,4300],{},"管轄やビジネスモデルによっては、州の事業免許、売上税の許可証、そして地域の事業許可がすべて必要になる場合があります。"," これらの要件は場所によって大きく異なります。市区町村の書記（city or county clerk）や、該当する州の事業登録窓口が、地域要件を理解するための適切な出発点です。",[933,4303,4305],{"id":4304},"governance-documents","ガバナンス文書",[39,4307,4308,4311],{},[261,4309,4310],{},"オペレーティング・アグリーメントは会社の内部ルールブックであり、これがない場合は州のデフォルトルールが適用されます。"," それは、誰がどの割合を所有するのか、意思決定がどう行われるのか、創業者が離脱した場合に何が起きるのかを定義します。多くの州で、2人メンバーのLLCはすべての意思決定に対して50/50の議決権がデフォルトになります。共同創業者同士で主要な契約について意見が割れると、デッドロックにつながり得ます。",[39,4313,4314,4317],{},[261,4315,4316],{},"共同創業者と一緒にスタジオを始める場合、持分の分割は、ベスティングスケジュールを含む創業者間の合意書と合わせて正式化すべきです。"," 一般的な構造は、4年ベスティングで1年のクリフです。つまり、8か月目で離れる共同創業者は何も得られず、一方で4年間留まる共同創業者は持分の全額を獲得します。これがないと、早期に離脱した共同創業者が持分を保持してしまい、将来の資金調達や事業売却が複雑になります。",[39,4319,4320,4323],{},[261,4321,4322],{},"誰が契約をサインできるか、一定金額を超える支出を承認できるか、新規採用を決められるか、などの明確な基準（しきい値）を、ガバナンス文書の中で定めておくべきです。"," たとえば、3人の創業者のうち誰でも「数十万ドル規模の契約」にサインできる状態は、紛争を待っているようなものです。",[933,4325,4327],{"id":4326},"intellectual-property","知的財産（IP）",[39,4329,4330,4333],{},[261,4331,4332],{},"キャラクター、脚本、ソフトウェアツールが、正式に法人化する前に作られていた場合、それらの資産は会社ではなく個人に属します。正式に譲渡されない限りです。"," 既存の関連資産のすべての所有権をスタジオの法人に移すIP譲渡契約（IP assignment agreement）を用意することで、権利の連鎖（チェーン・オブ・タイトル）が保護されます。投資を探す場合や会社を売却する場合、デューデリジェンスでIPチェーンのどこかに穴がないかが露呈します。",[39,4335,4336,4339],{},[261,4337,4338],{},"スタジオ名とロゴを、エンターテインメントおよびメディアに関連する適切なクラスで商標登録するコストは、差止め（cease-and-desist）の後にリブランディングするリスクに比べれば小さなコストです。"," 米国での商標登録は、申請1クラスあたりおおよそ250〜350ドルです。オリジナルキャラクターやフランチャイズの財産は、別個の商標登録が必要です。国際登録は、自国以外でコンテンツを配信する計画があるスタジオに関係します。",[39,4341,4342,4345],{},[261,4343,4344],{},"すべての雇用契約および外部委託契約には、スタジオのために制作されるすべての創作物は「職務著作（work made for hire）」であり、スタジオが所有するという明確な条項を入れるべきです。"," この条項がない場合、制作中にキャラクターを作ったアニメーターは、米国法のデフォルトとして、そのキャラクターの著作権を保持してしまいます。",[39,4347,4348,4351],{},[261,4349,4350],{},"従業員が、スタジオの営業時間外に個人的または競合する創作プロジェクトに取り組めるかどうか、そしてどの条件下で可能かは、ポリシーとして定義し、文書化する価値があります。"," これを未定義にしているスタジオは、スタッフが仕事で培ったスキルとリソースを使って競合する作品を作ってしまったときに、衝突に直面しがちです。",[933,4353,4355],{"id":4354},"contracts-and-legal-templates","契約と法務テンプレート",[39,4357,4358,4361],{},[261,4359,4360],{},"標準的な法務テンプレートのライブラリを用意しておくべきです。"," クライアントの仕事を受ける前に用意しておくことで、重要な条項を見落とすリスクを回避できます。",[39,4363,4364,4367],{},[261,4365,4366],{},"エンターテイメント弁護士に依頼することは、放送向けまたは商業クライアント向けにコンテンツを制作するスタジオにとって、必須ではありません。","（※原文にある「not optional」は翻訳します：任意ではありません。）アニメーションやメディア業界に詳しいエンターテイメント弁護士は、汎用的な契約テンプレートでは見落とされがちな点、たとえば納品仕様、権利のリバージョン（権利が戻る条件）、Errors & Omissions（エラーズ＆オミッションズ）への対応などで、スタジオの利益を守るための合意書を作成できます。",[39,4369,4370,4373],{},[261,4371,4372],{},"マスターサービス契約（MSA）はクライアントとの全体的な関係を統治し、個別の作業指示書（SOW）のテンプレートは各プロジェクトの範囲、タイムライン、納品物を具体化します。"," この2つを分けることで、既存のMSAを参照しながら新しいSOWを発行すればよく、すべての土台となる条項を毎回再交渉する必要が減ります。",[39,4375,4376,4377,4380],{},"映画/TV制作において、クルーとは、撮影の裏側で制作を成立させるために働く技術・支援スタッフのことです。 ",[261,4378,4379],{},"クルーのディールメモは、日当（day rate）、制作の見込み（ターンアラウンドの期待値）、残業（オーバータイム）の方針、クレジット条件を定義し、一方で完全な外部委託契約（フルのコントラクター契約）にはIP譲渡やNDAの条項が追加されます。"," この2つの状況に対して別テンプレートを使うことで、日常のクルー手配はシンプルに保ちつつ、機密性の高い制作素材にアクセスする外部委託者に対して必要な法的保護が確実に整います。",[39,4382,4383,4386],{},[261,4384,4385],{},"相互NDA（ミューチュアルNDA）と片務NDA（ワンウェイNDA）の両方を事前に用意しておくべきです。"," 相互NDAは共同制作やパートナーシップの可能性を話し合うときに使い、片務NDAは、プロジェクトが確定する前に見込みクライアントが機密のブリーフ資料を共有してくるときに使います。両方を用意しておけば、会話が機微に触れたときに慌ててドラフトする必要がありません。",[39,4388,4389,4392],{},[261,4390,4391],{},"タレントリリースフォームは、声優、画面に出演するパフォーマー、またはコンテンツ内にその肖像が登場する人物に対して必要です。"," 作曲者（作曲家）との契約は、音楽が職務著作（work-for-hire）として扱われ、スタジオが著作権を所有するのか、あるいは共同所有（co-ownership）として扱われるのかを明確に指定する必要があります。その場合は持分の割合と管理権（アドミニストレーション）の権利配分を定義しなければなりません。所有構造を曖昧にしてしまうことは、独立アニメーション制作で最もよくある、かつ最もコストのかかるミスの一つです。",[933,4394,4396],{"id":4395},"finance-accounting-and-insurance","財務・会計・保険",[39,4398,4399,4402],{},[261,4400,4401],{},"制作ライフサイクル（開発コスト、プリプロダクション、プロダクション、ポストプロダクション、オーバーヘッド）に沿って整理された勘定科目表（チャート・オブ・アカウント）を作ることは、汎用的な帳簿管理よりもアニメーションスタジオにとって有用です。"," 映画・メディア業界を理解している認定プロフェッショナル会計士なら、制作に関する税額控除（インセンティブ）の適用、ディファー（繰延）への対応、課税イベントを最小化する合意書の組み方まで把握しています。多くの州や国では、制作税額控除や助成金が大きく用意されていますが、スタジオが事前に適格性のための構造を整えていないために、単純に未請求で終わってしまうことがよくあります。",[39,4404,4405,4408],{},[261,4406,4407],{},"LLCまたはS-Corpとしてパススルー課税（配当課税が会社から個人に流れる形）を受けているスタジオは、利益に対する四半期の概算税（estimated tax payments）を自分で支払う責任があります。"," これらを逃すとペナルティが発生します。初年度の概算をCPAに計算してもらい、自動振替を設定しておくことで、キャッシュフロー上の驚きを避けられます。",[39,4410,4411,4414],{},[261,4412,4413],{},"多くの管轄では、アニメーションやデジタルメディア制作に対する税額控除や助成金が用意されており、適格な制作コストの20〜40％を相殺できます。"," 英国、カナダ、フランス、そしていくつかの米国の州には、積極的なプログラムがあります。これらのプログラムには、地元の労働力、制作場所、最低支出額などの適格要件があります。制作が始まる前に要件を理解していれば、予算と契約を、適格にする形に設計できます。",[39,4416,4417,4420],{},[261,4418,4419],{},"保険は、初期段階のスタジオ計画で最も見落とされがちなカテゴリの一つです。なぜなら、問題が起きたときにしか顕在化しないからです。"," 一般賠償責任保険（general liability）は、クライアント訪問者がスタジオで滑って転ぶなどの物理的な事故をカバーします。職業賠償責任保険（professional liability）—Errors and Omissions（エラーズ＆オミッションズ）保険とも呼ばれます—は、納品物そのものに起因する請求をカバーします。たとえば、放送局が「納品物に著作権侵害にあたる素材が含まれていた」と主張してくるケースです。多くの放送局や配信プラットフォームは、納品要件で指定された最低限の制限（ミニマムリミット）を満たす、現在有効なErrors & Omissionsの補償があることの証明なしには、配信契約に署名しません。",[39,4422,4423,4426],{},[261,4424,4425],{},"サイバーリスク保険（cyber liability insurance）は、事故対応コスト、通知義務、そしてデータ漏えいやランサムウェア攻撃に起因する一定の損失カテゴリをカバーします。"," アニメーションスタジオは、クライアントの機密性の高い制作素材、契約書、連絡先データなど、大量の情報を保有しており、標的になりやすいです。クリエイティブ系サービス企業に対するサイバー攻撃の規模を考えると、機密性の高いクライアント案件を扱うスタジオにとって、この補償はもはや任意ではありません。",[39,4428,4429,4432],{},[261,4430,4431],{},"大口のクライアント、ネットワーク、制作会社は、契約内で最低限の保険限度額を指定することが多く、サイン前にこれら要件を必ず確認すべきです。"," 事後に「現在の補償が契約要件に足りない」ことが判明すると、スタジオは契約違反の状態になります。",[66,4434,4436],{"id":4435},"_3-finding-and-signing-clients","3. クライアントの発掘と契約締結",[39,4438,4439],{},"アイデンティティが定義され、法的な土台が整ったら、次の優先順位は収益です。",[933,4441,4443],{"id":4442},"business-development","ビジネス開発",[39,4445,4446,4449],{},[261,4447,4448],{},"クライアントリストが大きくなりすぎてインフォーマルに管理できなくなる前に、CRMを使いましょう。"," 手入れの行き届いたスプレッドシートでも、リード、提案書、アクティブなクライアント、過去のクライアントを体系的に追跡できます。6か月前の会話を追いかけるときや、なぜ過去のクライアントが戻ってこないのかを理解するときに、「重要なクライアントとのやり取りをすべて記録する」という習慣が極めて価値を発揮します。",[39,4451,4452,4455],{},[261,4453,4454],{},"アウトリーチは広く行うのではなく絞り込むべきです。"," このとき、この記事の第1部で定義したサービス方針を使って、スタジオが制作するタイプの仕事を買う特定の企業、エージェンシー、放送局、またはプラットフォームを見つけます。子ども向け放送局の関連コミッショニングエディターに送るコールドメールは、汎用的なポートフォリオ提出を十数件送るよりも価値があることがあります。",[933,4457,4459],{"id":4458},"budgeting-and-cash-flow","予算とキャッシュフロー",[39,4461,4462,4465],{},[261,4463,4464],{},"各プロジェクト予算には、総制作コストの10〜15％の予備費（コンティンジェンシー）枠を必ず入れましょう。"," アニメーションは高度に反復が多い制作媒体で、クライアントは当初の範囲を超えた修正を定期的に求めます。予備のバッファがあることで、予期しない要求がすぐにマージンを削り取ってしまう事態を防げます。",[39,4467,4468,4471],{},[261,4469,4470],{},"業界では、作業開始前にデポジット要件を設けたNet 30（30日サイト）支払条件が標準です。"," 大規模プロジェクトでは、アニメーションのアニマティック承認、ラフアニメの納品、最終納品など、特定の納品物に紐づけたマイルストーン払いの形にすると、制作中ずっとキャッシュフローが保護され、納品後にクライアントが最終支払いを拒むリスクを下げられます。CGWire Kitsuの予算機能はここで役立ちます。各マイルストーン時点での現状支出を予算と比較することで、プロジェクト終盤の交渉問題になる前にコスト超過を発見できます。",[39,4473,4474,4477],{},[261,4475,4476],{},"プロジェクトごとの実コストを予算と照合して追跡すると、個々のプロジェクトが利益を生んでいるかがわかります。"," また、見積もりが一貫して外れている箇所や、契約が示す水準よりも提供コストが高くなっているクライアントも可視化できます。Kitsuのタイムトラッキング機能では、アーティストがタスクやショットに対して直接時間を記録し、この分析に必要なデータを自動で生成できます。さらに手作業のデータ収集なしに、プロデューサーはアーティスト、アセット、制作ステージごとの「時間内訳」を実際の形で把握できます。",[933,4479,4481],{"id":4480},"licensing-and-rights-compliance","ライセンシングと権利コンプライアンス",[39,4483,4484,4487],{},[261,4485,4486],{},"制作で使用するすべてのフォント、ストック映像クリップ、効果音、音楽トラック、テクスチャは、特定の用途に対して有効な商用ライセンスがあることを確認すべきです。"," 無料フォントの多くは個人利用のみのライセンスです。商用の放送配信には使えません。タイトル処理に未ライセンスのフォントを使用して番組を配信するのは法的なリスクになります。",[39,4489,4490,4493],{},[261,4491,4492],{},"テレビや映画向けの同期（シンク）ライセンスは、一般的な音楽配信ストリーミング権とは異なり、適切な合意書もそれを反映する必要があります。"," 放送される前提でオリジナル音楽が制作される場合、作曲家はASCAP、BMI、SESACのようなパフォーミング・ライツ・オーガニゼーションに作品を登録し、契約書には出版権を誰が管理するかを明記する必要があります。",[933,4495,4497],{"id":4496},"distribution-and-rights-for-original-content","オリジナルコンテンツの配信と権利",[39,4499,4500,4503],{},[261,4501,4502],{},"配信契約を結ぶ前に権利構造を理解することは不可欠です。何が許諾され、何が保持されるのかの条件は、長期的な影響をもたらすからです。"," オリジナルコンテンツを配信プラットフォームや放送局にライセンスする場合、特定の地域と期間について、特定の権利が付与されます。定額手数料で「世界中・永久」に広い権利を与える契約は、前払いが高くても、より短い期間かつ権利が狭い契約の方が有利になり得ます。なぜなら、他の市場で同じコンテンツを売る能力を制限してしまうからです。",[39,4505,4506,4509],{},[261,4507,4508],{},"プラットフォーム側の納品要件は、早めに調査しておくべきです。"," それは制作の組み方に大きな影響を与えるからです。Netflix、Disney+、Apple TV+ などの主要プラットフォームは、それぞれコーデック、解像度、フレームレート、音声フォーマット、字幕要件、メタデータに関する技術的な納品仕様を公開しています。これらの仕様には、Errors & Omissions保険の証明、チェーン・オブ・タイトルの書類、音楽キューシートのような法務・コンプライアンス要件も含まれます。",[66,4511,4513],{"id":4512},"_4-production-pipeline-and-software-stack","4. 制作パイプラインとソフトウェアスタック",[39,4515,4516],{},"制作パイプラインはスタジオの業務の中核です。ここでの判断は、何年にもわたってあらゆるプロジェクトに影響します。",[933,4518,4520],{"id":4519},"_2d-pipeline","2Dパイプライン",[39,4522,4523,4526],{},[261,4524,4525],{},"主要な2D DCCを選び、早期にコミットすることは、「客観的に最良のツール」を選ぶことよりも重要です。"," Toon Boom Harmonyは、放送向け2Dアニメの業界標準です。TVPaintは、フレームごとのアニメーションに広く使われ、より伝統的な感触があります。Adobe Animate、Moho、OpenToonzはそれぞれ別のニッチに対応します。単一ツールを中心にパイプラインを組むことで、複数のアーティストが別々のアプリを使うことで起きる断片化を防げます。",[39,4528,4529,4532],{},[261,4530,4531],{},"シーンファイルの命名規則、統一されたフォルダ構成、描画解像度、線の太さ、カラーパレット形式の基準を定めることは、基礎となるパイプラインの意思決定です。"," レイアウトのPSD、コンポジットのEXR、納品のProResのように、各制作段階のエクスポート形式も定義しておくべきです。ドキュメントのないパイプラインは、チームが成長するほど一貫性を失い、制作スケジュールを削るような手戻りサイクルを生みます。",[39,4534,4535],{},"KitsuはDCCツールと直接統合され、アーティストがアプリを切り替えずに作業環境の中からプレビューを公開できます。レビューに適したバージョンは、手作業で数時間〜数日後にアップロードされるのではなく、エクスポートされた瞬間に制作トラッカーへ届きます。",[933,4537,4539],{"id":4538},"_3d-pipeline","3Dパイプライン",[39,4541,4542,4545],{},[261,4543,4544],{},"DCC、レンダラー、コンポジターはセットで選ぶべきです。"," この3つのツールがスムーズに連携する必要があるからです。Maya + Arnold + Nuke は、高品質な放送・映画制作で確立された組み合わせです。Blender + Cycles + Fusion は、独立系スタジオ向けに対応力があり、費用対効果も高いスタックです。Cinema 4D + Redshift + After Effects はモーショングラフィックスや広告アニメでよく見られます。これらのどれかを制作途中で切り替えるのは、混乱を招きます。",[39,4547,4548,4551],{},[261,4549,4550],{},"Pixarが開発し、現在広く採用されているUniversal Scene Description（USD）は、3Dパイプラインにおけるアセットの受け渡しの標準として、ますます一般的になっています。"," 大規模運用をしているスタジオや外部ベンダーと協業するスタジオでは、USDをシーン組み立てとアセット受け渡しでどう使うかの明確な方針が役立ちます。",[39,4553,4554],{},"同様に、KitsuのPython APIクライアントは、テクニカルディレクターに制作データへのプログラムによるアクセスを提供します。これにより、USDアセット受け渡しスクリプトの作成、どのDCCからでもバージョンを自動取り込みする仕組み、トラッカー上でタスクステータスが変わった際にパイプライン手順を起動することが、簡単に行えます。規模の大小にかかわらず、スタジオはスクラッチで独自の制作DBを構築しなくても、こうした統合を利用できます。",[933,4556,4558],{"id":4557},"asset-management","アセット管理",[39,4560,4561,4564],{},[261,4562,4563],{},"制作トラッキングツールは、最初の制作が始まる前に選定・セットアップすべきであり、制作中に始めるものではありません。"," ShotGrid（現在はAutodesk Flow）、ftrack、Kitsuは、アニメーションにおけるショットとアセットの追跡の主な選択肢です。Kitsuはオープンソースで、あらゆる規模のスタジオに向いています。タスクやステータスの追跡を超えて、Kitsuはアセットのライフサイクル全体をカバーします。アセットの整理、バージョンの追跡、Breakdown Listを通じた「どのアセットがどのショットに属するか」のマッピング、そして制作をまたいだ重複を防ぐ再利用可能なAsset Libraryの維持です。複雑なパイプラインを持つスタジオでは、KitsuのREST APIがすべての制作データを公開するため、パイプライン上のどの外部ツールからでも参照・更新ができます。",[39,4566,4567,4570],{},[261,4568,4569],{},"スタジオ内のすべてのアセット、ショット、シーケンス、バージョン、納品物は、文書化された命名規則に従うべきです。"," たとえば：PROJ_SEQ010_SH020_ANIM_v003.ma は、プロジェクト、シーケンス10、ショット20、アニメーション段階、バージョン3を意味します。命名規則を揃えておくと、ファイルを素早く検索・特定でき、パイプラインスクリプトの自動化ができ、アセットの履歴も一目で理解できます。Kitsuの標準の検索エンジンは、キーワード、タグ、メタデータによるフィルタリングに対応しており、アセットライブラリが成長していくほど、この種の構造化された命名の価値がより高まります。",[39,4572,4573,4576],{},[261,4574,4575],{},"締切に影響するレンダーキューができる前に、レンダーマネジメント戦略を定めておくべきです。"," ThinkboxのDeadlineは、プロ向けアニメーションで最も広く使われているレンダーファーム管理システムです。Royal Render、Blender Flamenco、Tractorも確かな代替案です。AWS Deadline CloudやGoogle Cloudのようなサービスによるクラウドレンダリングは、物理的なレンダーファームのインフラを持たないスタジオにとって、ますます現実的な選択肢になっています。",[933,4578,4580],{"id":4579},"review-and-approval","レビューと承認",[39,4582,4583,4586],{},[261,4584,4585],{},"メディアレビューのプラットフォームを選び、スタジオ全体でその使い方を標準化することで、レビュー注記の「唯一の情報源（Single Source of Truth）」を作れます。"," メール、Slackメッセージ、PDFへの注釈、会議での口頭のやり取りなど、複数の手段を混在させてフィードバックを受け取るスタジオでは、レビュー内容の紛失、ノートの食い違い、修正に関する争いが日常的に発生しがちです。Kitsuでは、この課題に対処するレビューエンジンを提供しています。監督（スーパーバイザー）は、ショットやアセットに対して連続するレビュー用プレイリストを作成し、プレビュー上に直接注釈を入れ、さらに特定のバージョンに紐づくコメントを投稿できます。結果として、すべての指摘に明確な担当者、タイムスタンプ、コンテキストが付くようになります。分散チームの場合は、Kitsuのチームレビュー・ルームにより、チーム全体が同期したリアルタイムセッションでコンテンツを見て反応でき、タイムゾーンをまたいだ非同期レビューサイクルの調整コストをなくせます。",[39,4588,4589,4592],{},[261,4590,4591],{},"各段階で明確なマイルストーンを定義したレビューサイクルは、より早い段階で見えていた根本的なクリエイティブ問題が、正式にクローズされないまま残ってしまうことによる、高額な終盤修正を防ぎます。"," 各ゲートでは、制作が次へ進む前に納品物を正式に承認する必要があります。承認ゲートをスキップする標準的な理由は「スケジュールの圧力」ですが、その判断のコストは、節約できた時間をほぼ確実に上回ります。Kitsuはタスクのステータスシステムでこの規律を支援します。関連するレビューが正式にサインオフされない限り、タスクは次のパイプラインステップへ進めないため、制作側には明確で追跡可能な承認の履歴が残ります。",[39,4594,4595],{},"KitsuはSlackや他のチャットプラットフォームにも通知を送り、アーティストや監督が、新しいコメント、ステータス変更、承認について、チームが分散していてもトラッカーを手動で確認し続けなくて済むようにアラートされます。これによりレビューのループを緊密に保てます。",[933,4597,4599],{"id":4598},"planning-and-scheduling","計画とスケジューリング",[39,4601,4602,4605],{},[261,4603,4604],{},"制作スケジュールは「生きたドキュメント」なので、更新しやすく、チームに伝わる仕組みが必要です。"," Kitsuのスケジューリング機能では、プロデューサーがプロジェクトの期間を設定し、マイルストーンを割り当て、チーム全体のリソース配分を1か所で管理できます。ショットが遅れたり、リソースが利用できなくなったりした場合、スケジュールは調整してすぐに再公開でき、プロデューサーがスプレッドシートを手作業で更新してメールで再配布する必要はありません。",[39,4607,4608],{},"Kitsuの制作レポートとダッシュボードは、プロデューサーとディレクターに対して、制作の現状をいつでも360°の視点で見せます。部署、パイプラインステップ、個々のアーティストごとに整理された可視性は、特に、放送局や投資家のような外部のステークホルダーへ進捗を報告するときに価値があります。彼らは、制作システム全体にアクセスする必要がなく、定期的な更新を求めるからです。",[933,4610,4612],{"id":4611},"technology-hardware-and-data-security","テクノロジー、ハードウェア、データセキュリティ",[39,4614,4615,4618],{},[261,4616,4617],{},"一貫したハードウェア環境は、ITサポートの負担を減らし、パイプラインのメンテナンスを簡素化します。"," OS環境は事前に決めておくべきです。ワークステーションは定義された最低仕様を満たし、将来の採用者が同等のセットアップを受け取れるように文書化しておきます。",[39,4620,4621,4624],{},[261,4622,4623],{},"共有ネットワークストレージは協業型のアニメーションパイプラインの土台であり、十分に余裕を持った容量設計をすべきです。"," ネットワーク接続ストレージ（NAS）により、複数のアーティストが同じプロジェクトファイルへ同時にアクセスできます。2Dアニメシリーズの1シーズンでも、シーンファイル、レンダー、エクスポートだけで数テラバイト級のデータが生まれます。制作ファイルが作成される前に命名規則やフォルダ構成を確立しておくべきです。制作途中でストレージを再編すると、ファイルパスが壊れて復旧コストが増え、さらに時間も浪費します。",[39,4626,4627,4630],{},[261,4628,4629],{},"アニメーションやVFXソフトウェアのライセンシングは複雑で、更新日やシート数を追跡するソフトウェアアセット管理のプロセスを早めに整える価値があります。"," ノードロックライセンスは特定のマシンに紐づき、フローティングライセンスはネットワーク経由で共有できます。サブスクリプションライセンスはシートごと、またはスタジオごとです。無許可のソフトを動かすのは、法的リスクであるだけでなく、実務上も問題になります。ライセンスが切れると多くのツールが無効化されるからです。KitsuはクラウドSaaSとして、段階的な料金プラン（小規模のエージェンシーからエンタープライズまで）で提供されています。さらにCGWireのオペレーションチームが管理するオンプレミス導入や、セキュリティ要件とIT体制に合うホスティングモデルを選べるようにするための、無料の自己ホスト型オープンソース配備も可能です。",[39,4632,4633,4636],{},[261,4634,4635],{},"バックアップ戦略は、バックアップする価値があるものが生まれる前に実装すべきです。"," 業界標準は、3-2-1ルールです。データを3つ持ち、2種類のメディアに分け、1つはオフサイトまたはクラウドに置きます。アニメーションスタジオの場合は、ローカルNAS + オフサイトのバックアップドライブ + AWS S3のようなクラウドストレージ、という形になります。自動の毎日バックアップを設定し、復元手順のテストを四半期ごとに行ってください。",[39,4638,4639,4642],{},[261,4640,4641],{},"データ保持ポリシー（data retention policy）は、プロジェクトがクローズした後に、制作ファイル、レンダーキャッシュ、アーカイブした納品物をどれくらいの期間保持するかを定義します。"," ストレージにはコストがありますが、早すぎる削除は、クライアントがリビジョン要求や権利トラブルを持ち戻してきたときに、より大きなコストになります。一般的な方針としては、納品後2年間はすべての制作ファイルを保持し、その後は最終納品物を無期限でアーカイブし、中間の作業ファイルは削除する、というアプローチがよく使われます。",[39,4644,4645,4648],{},[261,4646,4647],{},"ロールベースのアクセス制御は、ある制作に取り組むアーティストが別の制作の素材へアクセスできないように設定すべきです。"," これはクライアントの機密を守り、アカウント侵害が起きたときの被害範囲（ブラスト半径）を抑えるためです。Kitsuのアーキテクチャは制作レベルでこれを支援します。アクセスはプロジェクト、ロール、部署によって制限できるため、ある番組のアーティストは別番組のアセットやタスクを閲覧できません。スタジオサーバーへのリモートアクセスには、すべてのリモート接続でVPNが必要です。すべてのスタッフはパスワードマネージャーを使用します。共有アカウント（共有クレデンシャル）は禁止し、誰かがスタジオを離れるときに何が起きるのかの運用方針は、事前に文書化しておくべきです。",[66,4650,4652],{"id":4651},"_5-hiring-facilities-and-operations","5. 採用、設備、運用",[39,4654,4655],{},"パイプラインが定義され、クライアントが入ってくれば、スペックや憶測ではなく、実際の制作要件に基づいて人員とスペースの判断ができます。",[933,4657,4659],{"id":4658},"staffing-model","人員体制モデル",[39,4661,4662,4665],{},[261,4663,4664],{},"スタジオが、小さなコアスタッフにフリーランサーを補う形で運営するのか、それともより大きな常勤チームへ向けて作っていくのか—これは土台となるモデル判断です。"," フリーランス比率が高いモデルは柔軟性がありますが、組織としての知見（インスティテューショナル・ナレッジ）が減り、調整の手間が増えます。コアスタッフ中心のモデルはカルチャーとパイプラインの一貫性を作れますが、固定費が大幅に増えます。多くのスタジオは初年度、常勤のリード層を少人数で持ちつつ、制作依存でフリーランサーを補うハイブリッドアプローチが最も効果的です。",[39,4667,4668],{},"Kitsuのtodoリスト機能は、アーティスト（スタッフもフリーランサーも両方）に対して、プロデューサーが一人ひとりをキューの中で手取り足取り案内しなくても、割り当て内容を明確に、優先順位つきで見られるようにします。特に、素早くオンボーディングされ、長いオリエンテーションなしで生産性を出す必要があるフリーランサーにとって有用です。Kitsuのリアルタイムのアクティビティフィードとタスク通知と組み合わせれば、分散チームでも、同じ建物にいるかどうかや複数のタイムゾーンにまたがるかに関わらず、連携を保てます。",[39,4670,4671,4674],{},[261,4672,4673],{},"米国の主要放送局や配信プラットフォーム向けにコンテンツを制作する計画があるスタジオは、いずれIATSE、SAG-AFTRA、WGAを巡る労働組合関連の検討に直面します。そして、その組合方針は、クライアント要件として決まる前に決めておくべきです。"," 労働組合のタレントを初めて扱う段階で事前準備がないと、給与計算を組合準拠のシステムで処理するなどの管理の複雑さや、残余（レジデュアル）要件への順守が発生します。",[39,4676,4677,4680],{},[261,4678,4679],{},"HRポリシー、行動規範（コード・オブ・コンダクト）、IP所有、リモートワークポリシー、残業の期待値をカバーする従業員ハンドブックは、法的な保護になり、スタッフに対して明確な期待値を設定します。"," クランチ文化（長時間労働）の文書化された歴史がある業界において、勤務時間や義務的な休息期間に関する書面の方針は、法的な保護であると同時に、文化的なメッセージにもなります。",[933,4682,4684],{"id":4683},"payroll-and-classification","給与と分類",[39,4686,4687,4690],{},[261,4688,4689],{},"従業員と独立請負人（インディペンデント・コントラクター）の違いは、大きな税務・法務の影響を持ちます。そして従業員を請負人として誤分類することは、クリエイティブ業界で最も一般的で、最も罰則が大きい「労務コンプライアンス上のエラー」です。"," IRSやほとんどの州の労働機関は、労働者の分類を決めるために多要素テストを適用します。ある働き手をどう分類すべきか不確実な場合は、何かを決める前に雇用弁護士に相談してください。",[39,4692,4693,4696],{},[261,4694,4695],{},"Gusto、Rippling、ADPのような給与プラットフォームは、最初の採用をする前にセットアップしておくべきです。"," これらのプラットフォームは、給与処理、税の源泉徴収、コンプライアンスの申告業務を扱います。",[39,4698,4699,4702],{},[261,4700,4701],{},"米国の多くの州では、スタジオにたとえ従業員が1人でもいる時点で、労災保険（workers' compensation insurance）が必要です。"," これがない状態で運用すると、スタジオは大きなペナルティと、従業員が業務中に負傷した場合の個人的な責任（personal liability）にさらされます。",[39,4704,4705],{},"Kitsuのタイムシートとクォータ（割当）機能は、給与と外部委託の請求の正確さを直接支援します。アーティストは特定のタスクやショットに対して時間を記録し、プロデューサーはアーティスト、アセット、制作ステージごとの詳細な時間レポートを引き出せます。給与処理や請求の承認が走る前に、ディレクターが時間を確認するのも簡単です。",[933,4707,4709],{"id":4708},"facilities","設備",[39,4711,4712,4715],{},[261,4713,4714],{},"運用モデル（リモート優先、ハイブリッド、完全な対面）は、どのリースを結ぶ前に決めるべきです。"," それは初期数か月の固定オーバーヘッドに大きく影響するからです。制作で、レンダーファームのような共有ハードウェア基盤、対面協業で有益になる同期型の制作ワークフロー、そして録音環境が必要な場合は、物理スタジオが理にかなっています。",[39,4717,4718,4721],{},[261,4719,4720],{},"アニメーション制作には、ほとんどの一般的な商業スペースが満たさないインフラ要件があり、それらはリース契約の前に評価すべきです。"," レンダーファーム用の利用可能な電力容量や、高負荷のGPUワークステーション、建物のインターネット接続の品質、ギガビットLANを稼働できるか、さらにサーバールームの空調（HVAC）の容量などが、関係する要因です。",[39,4723,4724,4727],{},[261,4725,4726],{},"商業用不動産の弁護士は、どのリース交渉にも関与させるべきです。"," 確認すべき重要な条項としては、サーバーやハードウェアをスペース内で運用できるか、看板を設置できるか、そして縮小が必要になった場合のサブリース条件（サブレット条件）などが挙げられます。",[39,4729,4730],{},"インフラのオーバーヘッドなしで、管理された制作システムのメリットを得たいスタジオ向けに、KitsuのCloud Hostingオプションは、SSLセキュリティ、99%稼働状況の監視、そして高速な動画処理を備えた、隔離された高可用性インスタンスを提供します。スタジオサーバーに自前ホストする必要がなくなります。より強いインフラ要件があるスタジオは、オンプレミス導入やテーラーメイドの配備（複数インスタンス構成、Active Directory連携、ローカルのオブジェクトストレージを含む）を選ぶことができます。",[933,4732,4734],{"id":4733},"health-safety-and-compliance","健康・安全・コンプライアンス",[39,4736,4737,4740],{},[261,4738,4739],{},"初日からエルゴノミクス（作業環境）へ投資することは、チームが長期的に働ける能力への投資です。"," アニメーションは座りがちで、反復動作が多い職業です。手首や手におけるRSI（反復動作による障害）、モニター配置が不適切なことによる首や肩の問題、そして不十分な照明による眼精疲労は、労働災害として現実の生産性コストを伴います。適切な椅子、調整可能なデスク、正しい位置に設置されたモニター、そして定期的な休憩ポリシーに投資してください。",[39,4742,4743,4746],{},[261,4744,4745],{},"遵守される勤務時間と残業の方針は、スタジオが下す最も重要なカルチャー判断の一つです。"," クランチ文化はアニメーションやゲーム開発においてよく見られ、バーンアウト、離職、メンタルヘルス問題を引き起こす要因として十分に文書化されています。義務的な休息期間、残業承認のプロセス、制作スケジュールが危険になった場合の明確なエスカレーション経路を定義することは、法的な保護であると同時に、離職を防ぐ戦略になります。アニメーション業界の離職は高コストです。採用、オンボーディング、そして新しいアーティストをパイプラインの流れに馴染ませるまでには数か月かかります。Kitsuのクォータ管理はここでも、より健全なアプローチを支えます。プロデューサーは、アーティスト個人を直接監視しなくても、生産性の目標に到達しているかどうかを把握でき、バーンアウト問題になる前に、誰が詰まっているのか、誰が過負荷なのかを早期に可視化できます。",[39,4748,4749,4752],{},[261,4750,4751],{},"GDPRやCCPAを含むデータプライバシー規制は、実際に強い執行力を持ち、スタジオではなく「データ主体がどこにいるか」に基づいて適用されます。"," GDPRの罰金は、年次の全世界売上の4％に達する可能性があります。EU居住者やカリフォルニア居住者からの個人データを扱うスタジオは、どのデータを収集し、どこに保管し、どのように保護しているかを理解しておく必要があります。",[66,4754,4756],{"id":4755},"conclusion","結論",[39,4758,4759],{},"長く続くアニメーションスタジオを作るには、忙しすぎて考えられなくなる前に、「見えないインフラ」を正しく整える必要があります。法的な組織構造、IP所有、契約テンプレート、会計、保険、パイプライン、データセキュリティは、そのどれかがクリティカルなクライアント関係の中で失敗したときに、途端にとても重要で現実的なテーマになります。",[39,4761,4762],{},"スタジオを作るのは、長期戦です。12か月のタイムラインで、どんな進み方があり得るかを示します：",[82,4764,4765,4771,4777,4783,4789],{},[85,4766,4767,4770],{},[261,4768,4769],{},"1か月目："," 法人設立、事業用の銀行口座の開設、適切な合意書のある形でコアチームの契約、そして主要なツールチェーンの意思決定。クライアントの仕事を受ける前に法人を作り、事業の財務を分離していないなら、何より先にそれを行ってください。後工程のすべてが、それに依存します。",[85,4772,4773,4776],{},[261,4774,4775],{},"3か月目："," 制作パイプラインの文書化、最初の社内プロジェクトの完了、動作する勘定科目表（チャート・オブ・アカウント）を備えた会計システムの稼働、そして経理担当者（ブックキーパー）の参画。社内プロジェクトは名作である必要はありません。クライアント案件が始まる前に、パイプラインをストレステストし、ギャップを浮き彫りにすることが目的です。これと同時期にKitsuをセットアップするのも適切なタイミングです。タスク構造、命名規則、レビューのワークフローを「リスクの低い」社内プロジェクトで設定しておくことで、クライアントの締切が迫った局面に向けて、システムがすでに実戦投入済みになります。",[85,4778,4779,4782],{},[261,4780,4781],{},"6か月目："," スタジオのWebサイトとショーリールの公開、少なくとも1つの有償クライアント案件の稼働、Errors & Omissionsを含む保険の整備、そして標準テンプレートを使って実行された少なくとも1つの有償クライアント契約。6か月目までに、料金表が現実に運用できるか、契約条件が「実際の交渉」に耐えうるかを検証できているべきです。",[85,4784,4785,4788],{},[261,4786,4787],{},"9か月目："," ベンダーおよびソフトウェア契約を、更新と再交渉のために見直します。多くの年間契約のソフトウェアサブスクリプションは自動更新です。更新日が来る前に見直し、各ツールが現在の価格でも依然として最適な選択かを評価してください。",[85,4790,4791,4794],{},[261,4792,4793],{},"12か月目："," CPAと一緒に、プロジェクトタイプ別の収益性、初年度の税金と次年度（Year Two）の概算支払い、スタジオIPがすべて適切に割り当てられ守られていることを確認するIP監査、必要に応じた報酬調整を含むチームのパフォーマンスレビュー、そして人員体制モデル、サービス方針、投資優先事項に対する明確な判断を含む次年度の戦略計画を、財務面で総点検します。この見直しにKitsuのタイムトラッキングと制作レポートを含めてください。アーティストごと・プロジェクトごとの時間内訳は、実際のコストが見積もりと比べてどこに着地したのかを理解するうえで非常に役立つインプットであり、将来の仕事の価格設定をより正確にするためにも使えます。",[39,4796,4797],{},"このチェックリストの目的は、これらの判断をそれぞれ意図的に行えるようにすることですが、最初のプロジェクトを受ける前にすべての項目を完了させる必要はありません。どこにギャップがあるのかを理解し、それらを埋める計画を持てばよいのです。",[39,4799,4800],{},"「まだ何をやっていないか」を把握しているスタジオは、中盤で危機に気づくスタジオよりも良い立ち位置にあります。",{"title":53,"searchDepth":336,"depth":336,"links":4802},[4803,4807,4814,4820,4828,4834],{"id":4215,"depth":336,"text":4216,"children":4804},[4805,4806],{"id":4234,"depth":1088,"text":4235},{"id":4250,"depth":1088,"text":4251},{"id":4272,"depth":336,"text":4273,"children":4808},[4809,4810,4811,4812,4813],{"id":4276,"depth":1088,"text":4277},{"id":4304,"depth":1088,"text":4305},{"id":4326,"depth":1088,"text":4327},{"id":4354,"depth":1088,"text":4355},{"id":4395,"depth":1088,"text":4396},{"id":4435,"depth":336,"text":4436,"children":4815},[4816,4817,4818,4819],{"id":4442,"depth":1088,"text":4443},{"id":4458,"depth":1088,"text":4459},{"id":4480,"depth":1088,"text":4481},{"id":4496,"depth":1088,"text":4497},{"id":4512,"depth":336,"text":4513,"children":4821},[4822,4823,4824,4825,4826,4827],{"id":4519,"depth":1088,"text":4520},{"id":4538,"depth":1088,"text":4539},{"id":4557,"depth":1088,"text":4558},{"id":4579,"depth":1088,"text":4580},{"id":4598,"depth":1088,"text":4599},{"id":4611,"depth":1088,"text":4612},{"id":4651,"depth":336,"text":4652,"children":4829},[4830,4831,4832,4833],{"id":4658,"depth":1088,"text":4659},{"id":4683,"depth":1088,"text":4684},{"id":4708,"depth":1088,"text":4709},{"id":4733,"depth":1088,"text":4734},{"id":4755,"depth":336,"text":4756},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/05/photo-1744686909443-eb72a54de998.jpeg",{"updated_at":4837,"そして半年後に気づきます。会社に対してIP（知的財産）の所有権を適切に割り当てていなかったこと、支払い条項のないままクライアント契約にサインしていたこと、保険を省いたせいで、納品前に放送局から「必須の条件」を突きつけられたことなどです。\nどれも高くつく教訓です。\nこの記事は、それを防ぐための試みです。新しいスタジオが初年度に下さなければならない、主要な法務・財務・パイプラインの判断を、走りながら確認できるチェックリストとしてまとめました。It's a r\" featured_at":350,"visibility":351},"2026-05-22T12:10:41.000+02:00","/blog-i18n/ja/animation-studio-setup-checklist-year-one","2026-05-04T12:08:00.000+02:00",{"title":4190,"description":4197},"animation-studio-setup-checklist-year-one","blog-i18n/ja/animation-studio-setup-checklist-year-one/index",[4844,4849],{"id":4845,"name":4846,"slug":4847,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":4848},"5fff0e4b653a0c003924f7f0","Production Management","production-management","https://cgwire.ghost.io/tag/production-management/",{"id":4850,"name":4851,"slug":4852,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":4853},"69c20dfccb09d8000107cfe9","Resources","resources","https://cgwire.ghost.io/tag/resources/","H4iorrU_hNKUCPaONv-19hzw7zMPCGpdD1sp6pv_9Gk",{"id":4856,"title":4857,"authors":4858,"body":4861,"description":53,"extension":346,"feature_image":5223,"html":11,"meta":5224,"navigation":352,"path":5226,"published_at":5225,"seo":5227,"slug":5228,"stem":5229,"tags":5230,"__hash__":5233,"updated_at":5225,"featured_at":350,"visibility":351},"blog/blog-i18n/ja/estimating-render-costs-animation/index.md","アニメーション制作会社がレンダーファームの容量を見積もる方法",[4859],{"id":8,"name":9,"slug":10,"profile_image":11,"cover_image":11,"bio":11,"website":11,"location":11,"facebook":11,"twitter":11,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":4860},"https://blog.cg-wire.com/author/basile/",{"type":14,"value":4862,"toc":5214},[4863,4874,4877,4880,4883,4889,4891,4895,4900,4906,4913,4920,4922,4926,4931,4934,4937,4975,4978,4980,4984,4989,4992,4997,5000,5003,5005,5009,5014,5020,5023,5026,5032,5038,5040,5044,5049,5052,5090,5097,5099,5103,5108,5111,5154,5161,5168,5170,5172,5177,5183,5193,5208],[17,4864,4866,4870],{"className":4865},[20,21,22],[17,4867,4869],{"className":4868},[26],"😀",[17,4871,4873],{"className":4872},[31],"レンダリングコストは当てずっぽうではありません。適切なフレームワークがあれば、予測可能になります。",[39,4875,4876],{},"誰もが、午後4時にレンダーファームがじわじわ動き出すのを見たことがあるはずです。10分経っても動かない進捗バーを見つめながら、「今日中にこのショットは終わるのか？」と考える。その瞬間、キューが満杯でアーティストが止まり、上長がETA（見込み時間）を求める――それは見積もりの問題です。",[39,4878,4879],{},"レンダリングは、予測できないように感じがちです。照明を少し調整しただけでフレーム時間が2倍になる。昨日はうまくいった設定が、今日はメモリを爆発させる。コスト見積もりのフレームワークがなければ、飽和したファーム、遅れる納期、そしてパイプラインへの信頼の低下が待っています。",[39,4881,4882],{},"朗報です。レンダリングコストは魔法ではありません。測定でき、分解でき、そして直感ではなくフレームワークを使って推定に取り組めば予測できます。",[39,4884,4885,4888],{},[261,4886,4887],{},"このガイドでは、今すぐ適用できる明確で実践的な見積もりモデルを提示します。"," 会議で主張できる数字を必要とするパイプライン開発者向けに設計されています。",[63,4890],{},[66,4892,4894],{"id":4893},"why-estimating-rendering-costs","なぜレンダリングコストを見積もるのか",[39,4896,4897],{},[231,4898],{"href":4899},"https://github.com/cgwire/blog/blob/main/drafts/render-cost-estimation/index.md?ref=blog.cg-wire.com#why-estimating-rendering-costs",[39,4901,4902,4905],{},[261,4903,4904],{},"正確なレンダリングコストの見積もりはスケジュールを守る","――危機に陥る前に。1フレームあたり2時間で見積もったシーケンスが、静かに6時間でレンダリングされてしまうと、ファームの占有率は3倍になり、下流の部門は宙に置かれます。",[39,4907,4908,4909,4912],{},"コストの可視化はまた、",[261,4910,4911],{},"創造的な意思決定にも直接影響します","。アーティストが、高品質ボリューメトリを有効にするとレンダリング時間が35%増えると知れば、代替案を探ろうとする可能性が高くなります。そうしたフィードバックがなければ、選択は見た目の好みだけに寄り、影響は後でファーム側が吸収することになります。",[39,4914,4915,4916,4919],{},"信頼できる見積もりは",[261,4917,4918],{},"インフラと予算管理に不可欠","です。ファーム容量、クラウドのバースト運用、納品計画はいずれも、予測可能な数字に依存します。1フレーム3時間の120フレームシーケンスと、1フレーム9時間のそれでは挙動が大きく変わります。特に複数の同時進行ショーにまたがる場合は顕著です。見積もりが一貫して許容範囲に収まれば、制作はパイプラインを信頼し、その信頼がより賢い技術判断の余地を生みます。",[63,4921],{},[66,4923,4925],{"id":4924},"_1-what-actually-affects-rendering-costs","1. レンダリングコストに実際に影響するのは何か？",[39,4927,4928],{},[231,4929],{"href":4930},"https://github.com/cgwire/blog/blob/main/drafts/render-cost-estimation/index.md?ref=blog.cg-wire.com#1-what-actually-affects-rendering-costs",[39,4932,4933],{},"レンダリングコストは、単発のボタン操作だけで決まることはありません。積み重なる倍率（マルチプライヤー）の結果です。",[39,4935,4936],{},"1フレームのコストが高すぎると、下流すべてがつらくなるため、議論は常に「1フレームあたりのコストに影響する要素」から始めるべきです。",[82,4938,4939,4945,4951,4957,4963,4969],{},[85,4940,4941,4944],{},[261,4942,4943],{},"解像度"," - 1080pから4Kへ移行するのは、軽微な増加ではありません。ピクセル数が4倍です。1080pで5分かかるなら、同じ設定で4Kは20分というのは十分に現実的です。",[85,4946,4947,4950],{},[261,4948,4949],{},"フレームレート"," - 24fpsで10秒は240フレーム。60fpsで同じ10秒なら600フレームです。1フレームが8分かかるなら、シェーダーやライトを一切触らずに、レンダリング時間を32時間から80時間へ変えてしまっています。",[85,4952,4953,4956],{},[261,4954,4955],{},"レンダリングエンジンの選択"," - CPUかGPUかは、速度というよりもメモリ上限の問題です。GPUは1フレームあたり劇的に速くなり得ますが、VRAMによって制約されます。12GBのテクスチャと重いジオメトリを含むシーンは、システムRAMなら快適に収まっていても、加速構造やオーバーヘッドを含めると24GBのGPUを超えてしまう可能性があります。",[85,4958,4959,4962],{},[261,4960,4961],{},"サンプリング"," - サンプル数を2倍にすると、レンダリング時間はほぼ2倍になります。ノイズが192サンプルで許容できる程度に収まるとしても、念のため512まで押し上げると、見た目の改善がわずかでもレンダリング時間がほぼ3倍近くになることがあります。",[85,4964,4965,4968],{},[261,4966,4967],{},"シーンの複雑さ"," - 現代のレンダラーは数百万ポリゴンを扱えますが、加速構造のビルド時間やメモリ使用量はスケールします。500万ポリのヒーローアセットは単体なら問題ないかもしれません。しかし、正しくインスタンス化されていない重複が50個あると、シーンメモリが2倍になり、レンダリング準備時間も大幅に増える可能性があります。テクスチャ、ボリューメトリックなフォグ、ヘアやファー、群衆、シミュレーションなどにも同様のことが当てはまります。",[85,4970,4971,4974],{},[261,4972,4973],{},"アニメーションの長さ"," - 総フレーム数は、持続時間にフレームレートを掛けたものです。24fpsで30秒なら720フレーム。1フレームが12分なら、レンダリング時間は144時間です。",[39,4976,4977],{},"考慮すべきパラメータは多く、圧倒されがちです。だからこそ「1フレームあたりのコスト」だけが重要な指標になります。目標が1フレーム8分で、初期のライティングテストで14分だとしたら、たとえほんの数フレームしかレンダリングしていなくても、プロジェクトはすでに大きなオーバーランに向かっています。",[63,4979],{},[66,4981,4983],{"id":4982},"_2-understanding-the-core-formula","2. コアとなる計算式を理解する",[39,4985,4986],{},[231,4987],{"href":4988},"https://github.com/cgwire/blog/blob/main/drafts/render-cost-estimation/index.md?ref=blog.cg-wire.com#2-understanding-the-core-formula",[39,4990,4991],{},"レンダリングコストについて真面目な議論をするなら、まずはコアとなる計算式から始める必要があります。",[1715,4993,4994],{},[261,4995,4996],{},"総レンダリングコスト = ((1フレームあたりの平均レンダリング時間 * 総フレーム数) / レンダリング速度) * 時間あたりの計算コスト",[39,4998,4999],{},"シーケンスが1,200フレームあり、各フレームが単一GPUで平均18分、さらにファームがGPUあたり$2.50で40フレームを並列処理するとします。この計算をすると、照明の微調整がたったで数千ドル（あるいは予算の額）を増やしたのかどうかがすぐに分かります。すべての意思決定に数字を与えてくれます。",[39,5001,5002],{},"1フレームあたりのレンダリング時間を見積もるには、楽観ではなく制作の現実に基づく必要があります。",[63,5004],{},[66,5006,5008],{"id":5007},"_3-local-rendering-vs-cloud","3. ローカルレンダリングとクラウド",[39,5010,5011],{},[231,5012],{"href":5013},"https://github.com/cgwire/blog/blob/main/drafts/render-cost-estimation/index.md?ref=blog.cg-wire.com#3-local-rendering-vs-cloud",[39,5015,5016,5019],{},[261,5017,5018],{},"自社でレンダーファームを構築するか、クラウドレンダリングにするか","を選ぶ際、「総保有コスト（TCO）」と「実行コスト（総コスト）」の比較評価は難しくなることがあります。",[39,5021,5022],{},"ローカルのワークステーションでレンダリングする場合、ハードウェアがすでにそこにあるため、安く見えます。しかし、そのGPUやCPUは無料ではありません。3年間で償却する6,000ドルのワークステーションは、フレームを1枚もレンダリングする前から、月あたり約166ドルです。さらに電気代を加えましょう。たとえば700Wのマシンを1日10時間使い、kWhあたり$0.20だとすると、稼働維持だけで月あたり約42ドルになります。ここに保守も乗ります。SSDの故障、ドライバの競合、OSアップデートがプラグインを壊すなどです。IT作業を月4時間、1時間あたり$75と保守的に見積もるだけでも、$300です。「無料」に見えるレンダーノードは、制作影響を考慮する前でも月500ドル超のコストになってしまいます。さらに機会費用も、もう一つの見えにくい予算破壊要因です。10人チームで、1人のアーティストが1日$600で請求するなら、1台のワークステーションがブロックされるだけで、1週間のクランチにおける間接的な遅延として数千ドル規模になり得ます。",[39,5024,5025],{},"クラウドレンダリングはモデルを「資本的支出（CapEx）」から「運用費（OpEx）」へと反転させます。マシンを買うのではなく、GPU時間として計算資源を借りるのです。たとえば1フレームに2GPU時間かかり、提供側がGPU時間あたり$1.20を請求すると、1フレームあたり$2.40です。これを500フレームに掛ければ、生の計算コストは$1,200になります。この金額は透明で、ワークロードに対して線形にスケールするため、見積もりがより予測可能になります。クラウドの強みが「スケーラビリティ」です。500フレームを24時間で納品し、各フレームに2時間かかるなら、ローカルでは1,000GPU時間です。単一ワークステーションでは40日以上のレンダリング時間になります。5台でも1週間以上かかります。クラウドなら、100台のGPUを立ち上げることで約10時間で終えられます。この差は、クライアントを獲得できるか、期限を完全に逃すかに直結し得ます。ただし、クラウドには隠れたコストがあり、多くの見積もりがそこで崩れます。",[39,5027,5028,5031],{},[261,5029,5030],{},"実務的なアプローチはハイブリッド思考です。"," たとえば小さなローカルファームで日次のレンダリングを夜間に回し、最終成果物（finals）、急なピーク（spikes）、そして社内容量を超えるシミュレーションなどはクラウドレンダリングで対応します。必要に応じて切り替えましょう。",[39,5033,5034,5037],{},[261,5035,5036],{},"レンダリングコストを見積もることは、「マシン」だけでなく「挙動」をモデル化することです。"," 改めて重要なのは、1フレームあたりの平均レンダリング時間を把握し、それをローカル／クラウド双方のコスト見積もりに投入することです。",[63,5039],{},[66,5041,5043],{"id":5042},"_4-hidden-costs-animators-forget","4. アニメーターが忘れがちな隠れたコスト",[39,5045,5046],{},[231,5047],{"href":5048},"https://github.com/cgwire/blog/blob/main/drafts/render-cost-estimation/index.md?ref=blog.cg-wire.com#4-hidden-costs-animators-forget",[39,5050,5051],{},"誰もがレンダリング時間は予算化しますが、隠れたコストはショットをまたぐと増幅します。予測可能な納品を目指すなら、それらのコストを可視化し、積極的に管理する必要があります。",[82,5053,5054,5060,5066,5072],{},[85,5055,5056,5059],{},[261,5057,5058],{},"リビジョン（修正）","は一目で分かる代表例ですが、真の費用は単に追加のCPU時間だけではありません。問題は波及（カスケード）です。ヒーローショットの遅れたアニメーション微調整は、照明の再キューイングを強制し、コンプでキャッシュを無効化し、モデリングではテクスチャを再書き出しします。重いボリュームのある300フレームの4Kショットでは、「小さな」タイミング変更が、数万のコア時間に加えてアーティスト待ち時間まで意味することがあります。バージョン承認をクリアにすることで、大きな節約になります。",[85,5061,5062,5065],{},[261,5063,5064],{},"ストレージ","も、特にEXRシーケンスでは、静かな予算破壊要因です。4Kの16-bitマルチレイヤーEXRは、1フレームあたり80〜150MBに簡単に到達します。1,000フレームなら、1つのバージョンの1ショットに対して80〜150GBです。",[85,5067,5068,5071],{},[261,5069,5070],{},"帯域幅","は、アーティストがリモートで作業する、あるいは拠点をまたいで作業する瞬間に一気に見えてきます。120GBのパブリッシュを1Gbpsの回線で同期するのは理論上約15分ですが、実際には輻輳やオーバーヘッドのため、はるかに長くかかることがあります。さらに月曜の朝に同じプレートを10人のアーティストが引き始めれば、その分を10倍です。すると、コンプが転送待ちの間、ファームがアイドルになります。現実的な対策はキャッシュとローカリティで、たとえばNASとローカルのきめ細かな同期を用意することです。",[85,5073,5074,5077,5078,5081,5082,5085,5086,5089],{},[261,5075,5076],{},"バックアップと保管ポリシー","も、同じ理由で実コストが発生します。",[261,5079,5080],{},"ソフトウェアのライセンス","は固定費として扱われがちですが、レンダー専用ライセンスのように、予測できずにスケールすることもあります。",[261,5083,5084],{},"ITの時間とパイプラインのセットアップ","は、ショーの予算に入らないことも多いですが、入れるべきです。新しいショーの構成、カスタムUSDスキーマ、ファーム統合などは、サポートやR&Dと競合するエンジニアリング時間です。そして最後に重要な点：納品が圧縮されると、すべてが高くなります。クラウドのバーストレンダリングはコア時間あたりの費用が高く、ベンダーは",[261,5087,5088],{},"エクスペダイト（急ぎ）料金","を請求し、残業は給与の燃焼を増やします。",[39,5091,5092,5093,5096],{},"これらのコストは、どれも謎ではありません。制作の主眼がクリエイティブ出力にあると、ただ無視しやすいだけです。",[261,5094,5095],{},"強力なパイプラインの役割は、こうした見えない倍率を測定可能にし、管理可能にすることです。"," チームが「小さな変更」の実コストを見るようになれば、より良い判断ができ、制作全体がサプライズの少ない運用になります。",[63,5098],{},[66,5100,5102],{"id":5101},"_5-a-simple-estimation-framework","5. シンプルな見積もりフレームワーク",[39,5104,5105],{},[231,5106],{"href":5107},"https://github.com/cgwire/blog/blob/main/drafts/render-cost-estimation/index.md?ref=blog.cg-wire.com#5-a-simple-estimation-framework",[39,5109,5110],{},"レンダリングコストの見積もりは現実に根ざす必要があります。これで必要な要素が揃ったので、以下は見積もりを作るためのシンプルな手順です。ただし、それを単純化しすぎず、スタジオのワークフローに合わせて調整してください。",[1053,5112,5113,5120,5126,5133,5140,5147],{},[85,5114,5115,5116,5119],{},"最も信頼できる出発点は",[261,5117,5118],{},"現在の制作における最も重いシーン","です。見つけられる範囲で最も複雑なショットを引っ張りましょう。最高のキャラクター数、フルFX、ボリューメトリ、モーションブラーなど、全部入りです。",[85,5121,5122,5125],{},[261,5123,5124],{},"実運用の設定で、最終品質のフレームを5〜10枚レンダリング","します。たとえばヒーローバトルのショットに6人のキャラクター、雨のFX、4K出力があるなら、実際に出荷するのと同じようにフレーム101〜110をレンダリングします。これより少ないテストは、自分を騙すことになります。",[85,5127,5128,5129,5132],{},"これらのフレームが終わったら、",[261,5130,5131],{},"バッチ内でのフレームあたり平均レンダリング時間を計算","します。10フレームが18〜26分の範囲で、平均してフレームあたり22分になるなら、その22分がベースラインです。",[85,5134,5135,5136,5139],{},"そのベースラインを得たら、",[261,5137,5138],{},"誰かに「バッファは？」と聞かれる前にバッファを追加","します。制作の現実はノイズを保証します。15〜30%のバッファは、作品の変動性によって健康的です。たとえば22分の平均が、25%のバッファ後に28分になるなら、避けられないルックデベロップのズレに対する余地を組み込めています。ライティングがロックされたスタイライズドなコマーシャルなら15%で十分かもしれません。一方で、まだ進化している最中の長編シーケンスなら30%のほうが安全で、それでも擁護可能です。",[85,5141,5142,5143,5146],{},"次に、ショー全体にスケールさせます。",[261,5144,5145],{},"バッファ込みの1フレーム時間に、総フレーム数を掛ける","のです。24fpsで90秒のシーケンスは2,160フレームです。1フレーム28分なら、60,480レンダリング分、つまり1,008時間あまりになります。200ノードのファームで各ノードが1フレームずつ処理するなら、理想的な分配と競合ゼロの前提で、壁時計（実時間）としては約5時間です。この前提は現実には成り立ちませんが、制作が議論するための具体的な材料になります。",[85,5148,5149,5150,5153],{},"次は",[261,5151,5152],{},"リビジョンのマージン","です。シーケンスのライフサイクル中に再レンダリングされる追加フレームは、10〜25%見込むべきです。過去の傾向が、クライアントの指示が典型的に2回の再レンダリングを引き起こすなら、20〜25%寄りにします。20%のリビジョンマージンは432フレームです。1フレーム28分なら、さらに201レンダリング時間分を予算化する必要があります。",[39,5155,5156,5157,5160],{},"そして先ほど触れたように、",[261,5158,5159],{},"ストレージや帯域幅といった隠れたコストを忘れないでください！"," 事前に計算し、その持続的なスループットにネットワークとディスクが実際に耐えられるか確認します。",[39,5162,5163,5164,5167],{},"これらすべてを組み合わせると、精査に耐える数字が得られます。",[261,5165,5166],{},"その数字は、コスト見積もりであると同時に制作上の制約でもあります","。シェーダーを最適化するか、ボリューメトリックを減らすか、ファーム容量を増やすか、あるいはスコープを再交渉するかを判断する材料になります。",[63,5169],{},[66,5171,4756],{"id":4755},[39,5173,5174],{},[231,5175],{"href":5176},"https://github.com/cgwire/blog/blob/main/drafts/render-cost-estimation/index.md?ref=blog.cg-wire.com#conclusion",[39,5178,5179,5182],{},[261,5180,5181],{},"レンダリングコストの見積もりは、結局のところ「不確実性を管理すること」だといえます。"," どんな見積もりも、遅れて入るクリエイティブ変更や予期せぬ技術的制約に触れると崩れます。実務的にはシンプルです。代表的なフレームで早期にテストし、直感ではなく測定データに基づいて投影し、リビジョンに対して現実的なバッファを追加し、実際のショットがファームに乗ったら継続的に再キャリブレーションします。すべてのプロジェクトはズレます。狙いは、そのズレを早期に検知し、パニックではなく計画で吸収することです。",[39,5184,5185,5186,5192],{},"その不確実性をさらに厳密に制御できるなら、",[231,5187,5191],{"href":5188,"rel":5189},"https://blog.cg-wire.com/flamenco-without-nas-kitsu/",[5190],"nofollow","レンダーファームのセルフホスティングを試すことを検討してみてください","。自社で運用すれば、クラウドの不透明な請求サマリーに頼るのではなく、パフォーマンス指標、障害率、キューの挙動、そして実際のショットごとのレンダリングコストを直接把握できます。数台のノードで短い社内プロジェクトを回すような小規模なパイロットでも、ボトルネックの発見、ベンチマークの検証、そして将来の見積もりに必要な履歴データの構築につながります。シーンの複雑さ、ハードウェアの性能、そしてスケジューリングの圧力の間にあるフィードバックループを自分の手で回せることは、レンダリングコスト見積もりを「当てずっぽう」から「運用上の強み」に変える最速の方法になり得ます。",[17,5194,5196,5199],{"className":5195},[20,21,22],[17,5197,312],{"className":5198},[26],[17,5200,5202,5203,5207],{"className":5201},[31],"アニメーション制作プロセスについてもっと知りたい方は",[231,5204,5206],{"href":3404,"rel":5205},[321],"Discordコミュニティへの参加をご検討ください","！ 私たちは、ベストプラクティスを共有する1,000人以上の専門家とつながっており、時には対面イベントを企画することもあります。ぜひ歓迎します！ 😊",[17,5209,5211],{"className":5210},[20,327,328],[231,5212,3413],{"href":3404,"className":5213},[332,333],{"title":53,"searchDepth":336,"depth":336,"links":5215},[5216,5217,5218,5219,5220,5221,5222],{"id":4893,"depth":336,"text":4894},{"id":4924,"depth":336,"text":4925},{"id":4982,"depth":336,"text":4983},{"id":5007,"depth":336,"text":5008},{"id":5042,"depth":336,"text":5043},{"id":5101,"depth":336,"text":5102},{"id":4755,"depth":336,"text":4756},"https://images.unsplash.com/photo-1719014745427-663137ae50f6?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8c2VhcmNofDF8fGFuaW1hdGlvbiUyMHJlbmRlcmluZ3xlbnwwfHx8fDE3NzMwMzg3NTR8MA&ixlib=rb-4.1.0&q=80&w=2000",{"updated_at":5225,"featured_at":350,"visibility":351},"2026-03-09T07:51:00.000+01:00","/blog-i18n/ja/estimating-render-costs-animation",{"title":4857,"description":53},"アニメーションのレンダーコスト見積もり","blog-i18n/ja/estimating-render-costs-animation/index",[5231],{"id":4845,"name":4846,"slug":4847,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":5232},"https://blog.cg-wire.com/tag/production-management/","4pMQN78yqcvF0vNqOjl-JrQTkLtSagEBMLQP4Uync0I",{"id":5235,"title":5236,"authors":5237,"body":5239,"description":53,"extension":346,"feature_image":5541,"html":11,"meta":5542,"navigation":352,"path":5544,"published_at":5543,"seo":5545,"slug":5546,"stem":5547,"tags":5548,"__hash__":5550,"updated_at":5543,"featured_at":350,"visibility":351},"blog/blog-i18n/ja/scaling-animation-studio-systems/index.md","アニメーションスタジオを5人から50人へ拡張する",[5238],{"id":8,"name":9,"slug":10,"profile_image":11,"cover_image":11,"bio":11,"website":11,"location":11,"facebook":11,"twitter":11,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":4860},{"type":14,"value":5240,"toc":5533},[5241,5252,5255,5258,5263,5266,5268,5272,5277,5280,5287,5297,5304,5311,5313,5317,5322,5325,5332,5335,5342,5350,5357,5365,5367,5371,5376,5379,5384,5387,5396,5399,5402,5408,5415,5417,5421,5426,5429,5434,5437,5443,5453,5459,5461,5465,5470,5473,5479,5493,5495,5497,5502,5508,5511,5514,5527],[17,5242,5244,5248],{"className":5243},[20,21,22],[17,5245,5247],{"className":5246},[26],"📈",[17,5249,5251],{"className":5250},[31],"アニメーションスタジオの拡張は、より多くのアーティストを採用することよりも、適切なシステムを構築することが重要です。",[39,5253,5254],{},"小規模なチームでは、全員が顔を突き合わせて話し、問題は椅子を回してすぐ解決できます。50人規模になると、同じ習慣が騒音や遅延を生み出してしまいます。",[39,5256,5257],{},"システム思考（個人の英雄的な働きに頼るのではなく、反復可能なプロセスを設計すること）は、より大きなスタジオの中でそれを目にしないと学びにくいものです。多くのアーティストがそれに気づくのは、プロジェクトがずれたときです。誰がショットを承認するのか、ファイルがどこに保存されるのか、フィードバックがどう追跡されるのかが定義されていないために起きます。それを新規採用10人分の増加と締切と掛け算すれば、混乱が続きます。",[39,5259,5260],{},[261,5261,5262],{},"課題は、良い仕事が「確実に」できる構造を作ること。解決策は、成長がつらい学びを強制する前に、情報・アセット・意思決定の流れを意図的に設計することです。",[39,5264,5265],{},"この記事では、事前に計画するためのベストプラクティスを定義します。",[63,5267],{},[66,5269,5271],{"id":5270},"_1-layered-team-structure","1. レイヤー化されたチーム構造",[39,5273,5274],{},[231,5275],{"href":5276},"https://github.com/cgwire/blog/blob/main/drafts/scaling-pipeline-from-5-to-50-artists/index.md?ref=blog.cg-wire.com#1-layered-team-structure",[39,5278,5279],{},"スタジオに5人のアーティストしかいないときは、全員があらゆることに触れ、意思決定も同じ部屋で起こります。50人になると、このモデルは混乱しか生みません。",[39,5281,5282,5283,5286],{},"animation、rigging、lighting、compositing のような部門を定義し、クリエイティブと技術面の方向性を担う監督者、そしてその範囲内で実行するアーティストを定めることで、",[261,5284,5285],{},"早い段階でレイヤー化されたチーム構造を整えることが重要","です。監督者とは、最も年次の高いアニメーターであることが重要なのではなく、最終品質と承認に対して責任を負う人です。各部門に明確な監督者と、承認の一本のルートができれば、フィードバックは一つのチャネルを通って流れ、ショットの手戻り時間が短くなります。",[43,5288,5290],{"className":5289},[20,46],[48,5291],{"src":5292,"className":5293,"alt":53,"loading":54,"width":5294,"height":5295,"srcSet":5296,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/03/image.png",[52],1438,809,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/03/image.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/03/image.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/03/image.png 1438w",[39,5298,5299,5300,5303],{},"部門は分けるべきです。そうすることで、",[261,5301,5302],{},"部門間の依存関係を減らす","ことができ、他者を待つのではなく並行してチームが作業できるパイプラインを設計できます。依存関係とは、あるタスクの開始を別のタスクが妨げるようなものです。また、リグの標準化、命名規則、公開プロセスを整備することで、アニメーションが土壇場のリグ調整待ちにならないようにできます。",[39,5305,5306,5307,5310],{},"明確なチーム構造は、拡張に伴って制作予算を管理しつつ、消化ペース（毎月どれだけの現金が費出されるか）を追跡して、",[261,5308,5309],{},"採用判断を導く","うえでも役立ちます。制作側が、「中堅アニメーターを2名追加すれば、納期マイルストーンに合わせて消化ペースを維持できる」と理解できれば、採用はもはや賭けではなくなります。",[63,5312],{},[66,5314,5316],{"id":5315},"_2-centralized-asset-management","2. 集約されたアセット管理",[39,5318,5319],{},[231,5320],{"href":5321},"https://github.com/cgwire/blog/blob/main/drafts/scaling-pipeline-from-5-to-50-artists/index.md?ref=blog.cg-wire.com#2-centralized-asset-management",[39,5323,5324],{},"アセット管理は早い段階で集約する必要があります。5人なら部屋の向こうから最新のリグを叫ぶことができますが、50人ではそれができません。",[39,5326,5327,5328,5331],{},"アセット管理の発端は単純です。",[261,5329,5330],{},"誰もが常に最新のアセットで作業しなければならない","という要件です。照明担当が半日かけてショットを磨いたのに、キャラクターのリグが2バージョンも古いと分かるほど、やりきれないことはありません。散らばったフォルダや気軽なファイル共有をやめ、承認済みファイルが置かれる「唯一の情報源」をすぐに用意することが重要です。",[39,5333,5334],{},"スプレッドシートでショットやバージョンを追跡できそうに見えても、3人の監督者が同時に更新した瞬間に崩れますし、誰かが変更を記録し忘れると一気に破綻します。Google Driveは馴染みがあるため魅力的ですが、アセットのバージョン管理が難しく、プレビュー用のレンダリングがストレージの上限をすぐに食ってしまいます。",[39,5336,5337,5338,5341],{},"解決策はシンプルです。",[261,5339,5340],{},"アクセス制御された安全なサーバーに制作アセットをすべて保存","し、ファイルが手作業で回されないようにして、権限により誤った上書きを防ぎます。DCCツールの選定を固定し、共有するファイル形式を揃え、バージョニング戦略を導入しましょう。",[43,5343,5345],{"className":5344},[20,46],[48,5346],{"src":5347,"className":5348,"alt":53,"loading":54,"width":5294,"height":5295,"srcSet":5349,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/03/image-1.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/03/image-1.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/03/image-1.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/03/image-1.png 1438w",[39,5351,5352,5353,5356],{},"バージョニングとは、変更を追跡でき、ロールバックもできるように、ファイルの増分で明確に番号付けされた反復を保存することです。アーティストに「final_v7_reallyFinal」などとファイル名を勝手に変えさせるのではなく、",[261,5354,5355],{},"DCCパイプラインを通じて自動でバージョン公開を強制","できます。具体例として、リガーがKitsuに新しいキャラクターを公開すると、システムがバージョンをインクリメントします。アニメーターはショットを開くだけで、最新の承認済みリグが自動参照されます。",[43,5358,5360],{"className":5359},[20,46],[48,5361],{"src":5362,"className":5363,"alt":53,"loading":54,"width":5294,"height":5295,"srcSet":5364,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/03/image-2.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/03/image-2.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/03/image-2.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/03/image-2.png 1438w",[63,5366],{},[66,5368,5370],{"id":5369},"_3-tracking-documentation","3. 追跡 & ドキュメンテーション",[39,5372,5373],{},[231,5374],{"href":5375},"https://github.com/cgwire/blog/blob/main/drafts/scaling-pipeline-from-5-to-50-artists/index.md?ref=blog.cg-wire.com#3-tracking--documentation",[39,5377,5378],{},"大規模なスタジオでは、責任はカジュアルな会話の中にはもう存在しません。",[39,5380,5381],{},[261,5382,5383],{},"制作トラッカー（共有システム）を用意し、タスク、締切、担当者をひと目で分かる場所に割り当てる必要があります。",[39,5385,5386],{},"例えばKitsuでは、コンセプト、アセット、ショット、シーンをすべて追跡可能なタスクとして設定し、担当者を明確に1人割り当てられます。",[43,5388,5390],{"className":5389},[20,46],[48,5391],{"src":5392,"className":5393,"alt":53,"loading":54,"width":5294,"height":5394,"srcSet":5395,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/03/image-3.png",[52],833,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/03/image-3.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/03/image-3.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/03/image-3.png 1438w",[39,5397,5398],{},"小規模チームなら、誰がウォークサイクルを仕上げているかを全員が覚えています。より大きなチームでは、2人のアニメーターが「もう片方がやっているはず」と思い込んでしまうことがあります。簡単なトラッカーが、その混乱を防ぎ、責任を明示してくれます。",[39,5400,5401],{},"これに、進捗が「直感」ではなく具体的なチェックポイントに基づいて測定されるよう、マイルストーンを定義しましょう。",[39,5403,5404,5407],{},[261,5405,5406],{},"ドキュメントも、人数に応じてスケールさせなければなりません。"," すべての人が使えるように、ツール、プロセス、慣習を集約する知識ベースが必要です。例えば、Notion や Confluence のようなツールでスタジオWikiを作り、新しいツールや修正を行ったら、タスク完了の一部としてドキュメントを残すことをアーティストに求めます。",[39,5409,5410,5411,5414],{},"最後に、",[261,5412,5413],{},"予測（フォーキャスト）ツールを活用","して遅れを早期に見つけることが重要です。もしレイアウトが各シーケンスで一貫して2日オーバーするなら、クライアントが文句を言う前ではなく、締切がずれる前に、見積もりと人員を調整しましょう。",[63,5416],{},[66,5418,5420],{"id":5419},"_4-structure-review-loops-team-communication","4. レビューのループ設計 & チームコミュニケーション",[39,5422,5423],{},[231,5424],{"href":5425},"https://github.com/cgwire/blog/blob/main/drafts/scaling-pipeline-from-5-to-50-artists/index.md?ref=blog.cg-wire.com#4-structure-review-loops--team-communication",[39,5427,5428],{},"フィードバックのサイクルにも、構造が必要です。",[39,5430,5431],{},[261,5432,5433],{},"レビューのループは、作業を提出し、レビューし、修正し、明確な段階を経て承認されるように設計された、スケジュール化された反復可能なプロセスであるべきです。",[39,5435,5436],{},"書面でのコミュニケーションも重要です。記録が残り、不明確さが解消されるためです。毎週、提出のタイミングを固定し、「何が変わったか」と「どんなフィードバックを求めているか」を短い文章で明記することをアーティストに求めるか、会議の過負荷を減らすために、同じ時間に全員が揃う必要のない非同期コメントを使いましょう。",[39,5438,5439,5442],{},[261,5440,5441],{},"レビューエンジン","（Kitsuのようなもの）を用いると、チャットのスレッド内にフィードバックが迷子になるのを防ぎ、バージョン、ノート、承認を集約できます：",[43,5444,5446],{"className":5445},[20,46],[48,5447],{"src":5448,"className":5449,"alt":53,"loading":54,"width":5450,"height":5451,"srcSet":5452,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/03/image-4.png",[52],1122,549,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/03/image-4.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/03/image-4.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/03/image-4.png 1122w",[39,5454,5455,5458],{},[261,5456,5457],{},"それをメッセージングプラットフォームと組み合わせ","て、最終ノートはレビューシステム内に保ちながら素早い確認を行うことができます。多くのチームが気づくのは、監督者がプライベートメッセージで重要なノートを渡すのをやめ、代わりにレビュー用ツールに公開するようにすると、意思疎通が改善し、重複作業が大幅に減るという点です。",[63,5460],{},[66,5462,5464],{"id":5463},"_5-infrastructure-pipeline-management","5. インフラ & パイプライン管理",[39,5466,5467],{},[231,5468],{"href":5469},"https://github.com/cgwire/blog/blob/main/drafts/scaling-pipeline-from-5-to-50-artists/index.md?ref=blog.cg-wire.com#5-infrastructure--pipeline-management",[39,5471,5472],{},"スタジオが成長すると、インフラは「裏方の心配事」では済まなくなります。50人のアーティストでは、同期するために毎日1人あたり15分の摩擦（ファイルの同期待ち、テクスチャの再リンク、壊れたショットの再レンダリングなど）が積み重なり、毎日12時間以上の制作時間の損失になります。",[39,5474,5475,5478],{},[261,5476,5477],{},"専任のパイプラインチームは重要です。"," 問題が発生した都度みんなでパッチを当てるのではなく、標準、バージョニング、オートメーションを所有する1つのパイプラインチームを用意すれば、アーティストはショットに集中し続けられます。テクニカルアーティストは、アニメーションスタジオの複数の重要コンポーネントを担当します：",[82,5480,5481,5484,5487,5490],{},[85,5482,5483],{},"NAS（Network Attached Storage）により、全員が同じ「唯一の情報源」から作業できます。チャットでファイルをコピーする代わりに、アセットは単一の場所へ公開されます。",[85,5485,5486],{},"バックアップと冗長化が災害から守ります。1つの破損したドライブで50人規模のスタジオが止まってしまうべきではありません。自動の夜間バックアップとミラーリングされたサーバーで、パニックを防ぎます。",[85,5488,5489],{},"スケーラブルなレンダーファームが、ライティングがアニメーションをブロックしないようにします。",[85,5491,5492],{},"制作中に数十万フレームを扱う段階では、カスタムのオートメーションがすぐに積み上がって大きな効果になります。",[63,5494],{},[66,5496,4756],{"id":4755},[39,5498,5499],{},[231,5500],{"href":5501},"https://github.com/cgwire/blog/blob/main/drafts/scaling-pipeline-from-5-to-50-artists/index.md?ref=blog.cg-wire.com#conclusion",[39,5503,5504,5505],{},"アニメーションスタジオを拡張するのは、単にアーティストを増やすことだけではありません。",[261,5506,5507],{},"相互に邪魔をせずに、より多くのアーティストが成功できるシステムを設計する必要があります。",[39,5509,5510],{},"意思決定にはレイヤーが必要です。アセットには構造が必要です。タスクには可視性が必要です。フィードバックにはプロセスが必要です。インフラには責任者が必要です。かつて会話や共有された直感の中にあったものは、ドキュメント化されたシステムと、明確に定義された責任へと進化しなければなりません。これらのシステムは互いを強化し合い、連携してスタジオの成長を支えます。",[39,5512,5513],{},"品質やカルチャーを犠牲にせずスムーズに拡張したいなら、この構造を支えるツールが必要です。そこでKitsuが役立ちます。アニメーションおよびVFXスタジオ向けに特化して作られたKitsuは、追跡を集約し、アセットを管理し、レビューを整理し、部門をまたいだ可視性を1つの場所で維持することを助けます。適切なシステムで、自信を持って拡張しましょう！",[17,5515,5517,5520],{"className":5516},[20,21,22],[17,5518,312],{"className":5519},[26],[17,5521,5202,5523,5526],{"className":5522},[31],[231,5524,1982],{"href":3404,"rel":5525},[321],"！ 私たちはベストプラクティスを共有する1,000人以上の専門家とつながっており、時々対面イベントも企画しています。ぜひようこそお迎えしたいです！ 😊",[17,5528,5530],{"className":5529},[20,327,328],[231,5531,3413],{"href":3404,"className":5532},[332,333],{"title":53,"searchDepth":336,"depth":336,"links":5534},[5535,5536,5537,5538,5539,5540],{"id":5270,"depth":336,"text":5271},{"id":5315,"depth":336,"text":5316},{"id":5369,"depth":336,"text":5370},{"id":5419,"depth":336,"text":5420},{"id":5463,"depth":336,"text":5464},{"id":4755,"depth":336,"text":4756},"https://images.unsplash.com/photo-1648014613911-e355dc51e2e3?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8c2VhcmNofDR8fGFuaW1hdGlvbiUyMHN0dWRpbyUyMHRlYW18ZW58MHx8fHwxNzczMDM2OTgyfDA&ixlib=rb-4.1.0&q=80&w=2000",{"updated_at":5543,"featured_at":350,"visibility":351},"2026-03-09T07:18:45.000+01:00","/blog-i18n/ja/scaling-animation-studio-systems",{"title":5236,"description":53},"アニメーションスタジオシステムのスケーリング","blog-i18n/ja/scaling-animation-studio-systems/index",[5549],{"id":4845,"name":4846,"slug":4847,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":5232},"LYfIVhxT9g2K-mgZxnaoTvcwqbukLeXZd-S1Aylpc10",{"id":5552,"title":5553,"authors":5554,"body":5556,"description":53,"extension":346,"feature_image":5964,"html":11,"meta":5965,"navigation":352,"path":5967,"published_at":5968,"seo":5969,"slug":5970,"stem":5971,"tags":5972,"__hash__":5974,"updated_at":5966,"featured_at":350,"visibility":351},"blog/blog-i18n/ja/automating-kitsu-production-onboarding/index.md","CSVインポートでKitsuの制作環境をスケールさせる（2026）",[5555],{"id":8,"name":9,"slug":10,"profile_image":11,"cover_image":11,"bio":11,"website":11,"location":11,"facebook":11,"twitter":11,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":4860},{"type":14,"value":5557,"toc":5956},[5558,5569,5577,5580,5583,5586,5614,5616,5620,5623,5664,5672,5675,5678,5688,5690,5694,5697,5700,5718,5724,5730,5733,5735,5739,5742,5758,5765,5777,5779,5783,5786,5812,5815,5818,5821,5824,5827,5829,5833,5836,5867,5870,5880,5887,5890,5893,5903,5909,5911,5913,5916,5919,5933,5936,5950],[17,5559,5561,5565],{"className":5560},[20,21,22],[17,5562,5564],{"className":5563},[26],"🚀",[17,5566,5568],{"className":5567},[31],"クリーンなスタジオデータを自動で取り込むことで、数分で新しいKitsuの制作を立ち上げます。",[39,5570,5571,5572,5576],{},"Kitsuで新しいショーやシーンを作るのにフォームをクリックして回り、アセットリストを作り直し、アーティストを1人ずつ割り当てる必要があるなら、",[231,5573,5575],{"href":5574},"https://blog.cg-wire.com/client-communication-animation/","オンボーディングは不足しています","。",[39,5578,5579],{},"こうした手作業のオーバーヘッドは、すぐに積み上がります。制作が変わるたびに同じセットアップ儀式が繰り返され、クルーのオンボーディングはコピペ合戦になり、各ステップごとに何かが壊れる別のチャンスが増えていきます。スタジオ規模では、この摩擦が本当の時間・本当の金銭・本当の正気をコストとして奪います。",[39,5581,5582],{},"最も速いスタジオは、Kitsuを単に使うだけではありません。パイプラインに組み込みます。制作データベースのように扱い、新しいショー、ショット、または部署が“日”ではなく“分”でオンラインになれるよう、クリーンで構造化されたスタジオデータを投入します。パイプラインは複製され、チームは自動的に紐づけられ、Kitsuはボトルネックではなくエンジンになります。",[39,5584,5585],{},"この記事では、CSVファイルとKitsuのPython API（Gazu）を使って、まさにそれを実現するための実務的で制作実証済みのワークフローを分解していきます。制作オンボーディングのセットアップ作業を“消す”ために、どのように自動化するかを説明します。",[17,5587,5590,5593],{"className":5588},[20,21,5589],"kg-callout-card-blue",[17,5591,3078],{"className":5592},[26],[17,5594,5596,5601,5603,5605,5606,5608,3148,5610],{"className":5595},[31],[2765,5597,5598],{},[261,5599,5600],{"style":1673},"動く例を探していますか？",[2122,5602],{},[2122,5604],{},"このガイドで紹介している例の統合の完全なソースコードは、GitHubで確認できます：",[2122,5607],{},[2122,5609],{},[231,5611,5613],{"href":5612},"https://github.com/cgwire/blog-tutorials/tree/main/import-spreadsheet-to-kitsu?ref=blog.cg-wire.com","https://github.com/cgwire/blog-tutorials/tree/main/import-spreadsheet-to-kitsu",[63,5615],{},[66,5617,5619],{"id":5618},"what-you-can-import","インポートできるもの",[39,5621,5622],{},"実際の制作では、データの大部分がいくつかの繰り返しパターンに分類され、どれも自動化に向いています：",[82,5624,5625,5641,5658],{},[85,5626,5627,5630,5631,2169,5634,2169,5637,5640],{},[261,5628,5629],{},"アーティスト"," - あなたのクルーはどこか別の場所にすでに存在しています。HRシート、給与計算のエクスポート、Notionのテーブルなどです。そこには通常、",[802,5632,5633],{},"Animator",[802,5635,5636],{},"TD",[802,5638,5639],{},"Supervisor","のような役割とともに、名前やメールアドレスが含まれています。Kitsuでユーザーを手作業で再作成する代わりに、そのリストを1回のパスでインポートすれば、1日目の前にチームを準備できます。",[85,5642,5643,5646,5647,2169,5651,2169,5654,5657],{},[261,5644,5645],{},"アセット"," - キャラクター、プロップ、環境……命名規則に従うものなら、簡単に自動化できます。",[5648,5649,5650],"code",{},"CHAR_RobotA",[5648,5652,5653],{},"PROP_Sword_01",[5648,5655,5656],{},"ENV_CityBlock","のようなエントリが入ったCSVは、数秒でKitsu内の完全にセットされたアセットリストへと変換でき、パイプラインが期待するのとまったく同じ形に整理されます。",[85,5659,5660,5663],{},[261,5661,5662],{},"タスク"," - タスクもまた、手作業のセットアップが特に痛む領域です。モデリング、リギング、サーフェシング、アニメーション……こうしたタスクタイプは、ショーごとに頻繁に変わることはありません。タスクを一括でインポートすれば、すべてのアセットに適切なタスクリスト（スタック）を自動的に紐づけたり、UIで何百行もクリックする代わりに、アーティストや部署を事前に割り当てたりできます。",[39,5665,5666,5667,5671],{},"基本を超えて、Kitsuが理解する",[231,5668,5670],{"href":5669},"https://gazu.cg-wire.com/data?ref=blog.cg-wire.com","あらゆる制作向けデータ","をインポートできます。シーケンス、ショット、エピソード、さらには“制作全体”までも可能です。これにより、過去のショーの構造をそのまま複製したり、同じレイアウトと命名規則で新しいシーズンを立ち上げたりするのが簡単になります。",[39,5673,5674],{},"ほとんどのスタジオは、すでにこれらをスプレッドシートに保存しています。そのスプレッドシートをデータソースとして扱い、Kitsuへ直接投入し、自動化にセットアップ作業を任せましょう。",[39,5676,5677],{},"KitsuのUIは基本的なスプレッドシートのインポートに対応していますが、スクリプトはそれをはるかに超えます。KitsuのPython API（Gazu）なら、Notionからタスクを同期する、アセットトラッカーをミラーする、スケジュールが変わったらタスクリストを再生成する、といった一連の自動化をつなげられます。",[43,5679,5681],{"className":5680},[20,46],[48,5682],{"src":5683,"className":5684,"alt":53,"loading":54,"width":5685,"height":5686,"srcSet":5687},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/02/data-src-image-82a7e584-d2c0-4457-9ea4-4e97c794b6ff.png",[52],600,611,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/02/data-src-image-82a7e584-d2c0-4457-9ea4-4e97c794b6ff.png 600w",[63,5689],{},[66,5691,5693],{"id":5692},"_1-csv-parser","1. CSVパーサー",[39,5695,5696],{},"最初のステップは、スタジオデータの読み取り方を標準化することです。CSVは理想的です。制作側が編集しやすく、スクリプト側が解析しやすいからです。",[39,5698,5699],{},"このチュートリアルではシンプルさのためにアーティストのデータモデルに焦点を当てますが、Googleドライブに保存したアセットや、Trelloのタスクでも同様のことができます。",[5701,5702,5703,5708],"pre",{},[5648,5704,5707],{"className":5705},[5706],"language-py","def load_csv(file_path: Path) -> pd.DataFrame:\n    \"\"\"Load a CSV file into a pandas DataFrame.\"\"\"\n    return pd.read_csv(file_path)\n",[39,5709,5710],{},[5648,5711,5713,5714,5717],{"className":5712},[5706],"def parse_artists(df: pd.DataFrame) -> List",[1671,5715,5716],{},"Dict",":\n\"\"\"\nExpected columns:\n- email\n- first_name\n- last_name\n- role\n\"\"\"\nreturn df.to_dict(orient=\"records\")\n",[39,5719,5720,5723],{},[5648,5721,5722],{},"load_csv","は、生のCSVファイルをPythonが扱える形に変える入口です。pandasを使ってディスクからファイルを読み取り、DataFrameを返します。これにより、Kitsuへ送信する前にフィルタリング、検証、変換が可能な、構造化された“表のような表現”になります。",[39,5725,5726,5729],{},[5648,5727,5728],{},"parse_artists","は、アーティストデータを表すDataFrameを受け取り、各行をアーティストのメール、名前、役割を含む辞書へと変換します。これらの辞書のリストを返すことで、KitsuまたはGazuに直接渡してユーザーを一括で作成できる、API向けのデータが生成されます。アーティストを1人ずつ追加する必要はありません。",[39,5731,5732],{},"たとえば、Google SheetsからクルーリストをエクスポートするTVアニメ制作スタジオなら、それを単にCSVとして保存すれば済みます。制作はデータの管理を保持しつつ、TDは各ショーごとにフォーマット変更を依頼されることなく取り込みを自動化できます。",[63,5734],{},[66,5736,5738],{"id":5737},"_2-kitsu-auth","2. Kitsu認証",[39,5740,5741],{},"何かをアップロードする前に、Kitsuインスタンスに対して認証する必要があります：",[5701,5743,5744],{},[5648,5745,5747,5748,5752,5753,5757],{"className":5746},[5706],"gazu.set_host(\"",[231,5749,5750],{"href":5750,"rel":5751},"http://localhost/api",[5190],"\")\nuser = gazu.log_in(\"",[231,5754,5756],{"href":5755},"mailto:admin@example.com","admin@example.com","\", \"mysecretpassword\")\n",[39,5759,5760,5761,5764],{},"実際には、スタジオは自動化のために専用の",[261,5762,5763],{},"パイプラインアカウントまたは管理者アカウント","を使うことがよくあります。これにより権限の問題を避けられ、スクリプトがデータを作成・変更するときも監査ログをきれいに保てます。",[39,5766,5767,5768,5776],{},"ローカルでのテスト用には、",[231,5769,5771,5772,5775],{"href":5770},"https://blog.cg-wire.com/dcc-integration-blender-kitsu/","「",[5648,5773,5774],{},"kitsu-docker","」のインストールを使う","のがおすすめです。",[63,5778],{},[66,5780,5782],{"id":5781},"_3-loading-data","3. データの読み込み",[39,5784,5785],{},"オンボーディング時に、アーティストは通常最初のボトルネックになります。メールを集めて招待を送り、タスクへ割り当てる必要があります……それらの作成を自動化すれば、制作コーディネーターが手作業で費やす何時間もの作業を削減できます。",[5701,5787,5788,5807],{},[5648,5789,5791,5792,5794,5795,5798,5799],{"className":5790},[5706],"def upload_artists(artists: List",[1671,5793,5716],{},"):\n\"\"\"\nCreate artists if they do not already exist.\n\"\"\"\nexisting_users = {\nuser",[1671,5796,5797],{},"\"email\"",": user\nfor user in gazu.person.all_persons()\n}",[5701,5800,5805],{"className":5801,"code":5803,"language":5804},[5802],"language-text","for artist in artists:\n    if artist[\"email\"] in existing_users:\n        print(f\"Artist exists: {artist['email']}\")\n        continue\n\n    gazu.person.new_person(\n        artist[\"first_name\"],\n        artist[\"last_name\"],\n        artist[\"email\"],\n    )\n    print(f\"Created artist: {artist['email']}\")\n","text",[5648,5806,5803],{"__ignoreMap":53},[39,5808,5809],{},[5648,5810],{"className":5811},[5706],[39,5813,5814],{},"この関数は、アーティストの辞書リストを受け取り、重複を避けながらKitsuへ同期します。",[39,5816,5817],{},"まずKitsuに対して既存ユーザーをすべて問い合わせ、メールをキーにしたルックアップテーブルを作成します。これにより、アーティストがすでに存在するかを高速に確認できます。",[39,5819,5820],{},"次に、入力されたアーティストデータを順に処理し、各エントリについてメールをルックアップと照合します。マッチが見つかればスクリプトは作成をスキップし、そのアーティストがすでに存在することをログに記録します。マッチが見つからなければ、Gazu APIを使ってアーティストの名前とメールからKitsuに新しいユーザーを作成し、確認メッセージを出力します。",[39,5822,5823],{},"この結果、再実行しても安全な“冪等（べきとう）”なインポートステップになります。新しいアーティストは追加され、既存のアーティストはそのまま変更されません。",[39,5825,5826],{},"長尺映画の立ち上げ段階では、制作側がHRデータから数百人のアーティストを1分もかからずにインポートできるでしょう。遅れて参加するスタッフは、CSVを更新してスクリプトを再実行するだけで追加でき、ユーザーの重複や手作業の確認は不要になります。",[63,5828],{},[66,5830,5832],{"id":5831},"_4-tying-it-all-together","4. すべてをつなぐ",[39,5834,5835],{},"メインの入口では、すべてをひとまとめにします：",[5701,5837,5838,5862],{},[5648,5839,5841,5842,5845,5846,5849,5850,5752,5853,5855,5856],{"className":5840},[5706],"if ",[261,5843,5844],{},"name"," == \"",[261,5847,5848],{},"main","\":\ngazu.set_host(\"",[231,5851,5750],{"href":5750,"rel":5852},[5190],[231,5854,5756],{"href":5755},"\", \"mysecretpassword\")",[5701,5857,5860],{"className":5858,"code":5859,"language":5804},[5802],"artists_df = load_csv(Path(\"artists.csv\"))\n\nartists = parse_artists(artists_df)\n\nupload_artists(artists)\n",[5648,5861,5859],{"__ignoreMap":53},[39,5863,5864],{},[5648,5865],{"className":5866},[5706],[39,5868,5869],{},"このブロックは、ファイルが直接実行されたときにのみ動作します。別のモジュールにインポートされた場合は動きません。",[39,5871,5872,5873,5876,5877,5879],{},"認証後、",[5648,5874,5875],{},"artists.csv","をpandasのDataFrameに読み込み、",[5648,5878,5728],{},"でそれらの行をアーティスト辞書のリストへ変換し、名前によってKitsu内の既存の制作を取得します。",[39,5881,5882,5883,5886],{},"最後に、準備されたデータを反復してKitsuでアーティストアカウントを作成する役割を担う",[5648,5884,5885],{},"upload_artists","を呼び出します。UIの手作業なしで、制作オンボーディングの自動化ステップが完了します。",[39,5888,5889],{},"実際には、スタジオはこれらのスクリプトをパイプラインのツールと一緒にバージョン管理します。新しいショーはチェックリストではなく、再現可能なコマンドになります。",[39,5891,5892],{},"これで、Kitsuのダッシュボードにログインし、最終結果を確認できます：",[43,5894,5896],{"className":5895},[20,46],[48,5897],{"src":5898,"className":5899,"alt":53,"loading":54,"width":5900,"height":5901,"srcSet":5902,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/02/data-src-image-9f641c9c-07b5-4154-9c42-45279f6a9d20.png",[52],1600,900,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/02/data-src-image-9f641c9c-07b5-4154-9c42-45279f6a9d20.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/02/data-src-image-9f641c9c-07b5-4154-9c42-45279f6a9d20.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/02/data-src-image-9f641c9c-07b5-4154-9c42-45279f6a9d20.png 1600w",[39,5904,5905,5908],{},[231,5906,5907],{"href":5612},"対応するGithubリポジトリをご覧ください","。ニーズに合わせて簡単にフォークして使える、動く例があります！",[63,5910],{},[66,5912,4756],{"id":4755},[39,5914,5915],{},"最良の形では、Kitsuの自動化によってテクニカルディレクターが、制作が生まれるプロセスの主導権を取り戻せます。パイプラインがクリーンなデータから自分自身を生成できるなら、オンボーディングは“面倒な作業”でなくなります。アーティスト、アセット、タスクをKitsuに直接インポートすることで、冗長な作業を排除し、人為的なミスを減らし、制作オンボーディングを予測可能にします。このアプローチは、小規模チームから複数ショーを抱えるスタジオまでスケールします。",[39,5917,5918],{},"インポートパイプラインをさらに面白くするために、追加できる機能は次のとおりです：",[82,5920,5921,5924,5927,5930],{},[85,5922,5923],{},"役割に基づいてタスクをアーティストへ自動割り当てする",[85,5925,5926],{},"制作管理のために部署を入力する",[85,5928,5929],{},"予算の制約にもとづいて、初期見積と各部署のカレンダーを生成する",[85,5931,5932],{},"スクリプトを各ショットのブレイクダウンリストに変換し、それを使ってアセットを事前生成する",[39,5934,5935],{},"このリストはまだ続けられますが、とにかく小さく始めてみてください！",[17,5937,5939,5942],{"className":5938},[20,21,22],[17,5940,312],{"className":5941},[26],[17,5943,5945,5946,5949],{"className":5944},[31],"アニメーションのプロセスについてもっと知りたい方は ",[231,5947,1982],{"href":3404,"rel":5948},[321],"！ ベストプラクティスを共有する1,000人以上の専門家とつながり、時には現地イベントも企画しています。ぜひ歓迎します！ 😊",[17,5951,5953],{"className":5952},[20,327,328],[231,5954,3413],{"href":3404,"className":5955},[332,333],{"title":53,"searchDepth":336,"depth":336,"links":5957},[5958,5959,5960,5961,5962,5963],{"id":5618,"depth":336,"text":5619},{"id":5692,"depth":336,"text":5693},{"id":5737,"depth":336,"text":5738},{"id":5781,"depth":336,"text":5782},{"id":5831,"depth":336,"text":5832},{"id":4755,"depth":336,"text":4756},"https://images.unsplash.com/photo-1504868584819-f8e8b4b6d7e3?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8c2VhcmNofDN8fHNwcmVhZHNoZWV0fGVufDB8fHx8MTc3MDA0NDU0MXww&ixlib=rb-4.1.0&q=80&w=2000",{"updated_at":5966,"featured_at":350,"visibility":351},"2026-02-20T06:03:58.000+01:00","/blog-i18n/ja/automating-kitsu-production-onboarding","2026-02-16T10:00:37.000+01:00",{"title":5553,"description":53},"kitsu制作オンボーディングの自動化","blog-i18n/ja/automating-kitsu-production-onboarding/index",[5973],{"id":4845,"name":4846,"slug":4847,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":5232},"TIHon7V5tpWe3aDuxZakRAC3595hsYJu87bScZF1uys",{"id":5976,"title":5977,"authors":5978,"body":5980,"description":53,"extension":346,"feature_image":6379,"html":11,"meta":6380,"navigation":352,"path":6382,"published_at":6383,"seo":6384,"slug":6385,"stem":6386,"tags":6387,"__hash__":6389,"updated_at":6381,"featured_at":350,"visibility":351},"blog/blog-i18n/ja/western-vs-eastern-animation/index.md","(2026) 西洋と東洋のアニメーション：何が違うのか",[5979],{"id":2889,"name":2678,"slug":2890,"profile_image":2891,"cover_image":11,"bio":2892,"website":11,"location":2030,"facebook":11,"twitter":2031,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":2893},{"type":14,"value":5981,"toc":6371},[5982,5993,5996,5999,6002,6004,6010,6025,6046,6055,6058,6060,6066,6073,6084,6092,6095,6097,6103,6106,6109,6112,6147,6150,6186,6189,6191,6197,6218,6221,6238,6252,6261,6268,6270,6276,6279,6317,6327,6330,6332,6336,6339,6342,6345,6352,6365],[17,5983,5985,5989],{"className":5984},[20,21,22],[17,5986,5988],{"className":5987},[26],"🌏",[17,5990,5992],{"className":5991},[31],"アニメーションは単なるスタイルではなく、文化的なDNAそのもの。西洋と東洋の伝統は、世界を見る別の方法を映し出します。",[39,5994,5995],{},"カートゥーンかアニメか？10人に聞けば、10通りの答えが返ってきます。",[39,5997,5998],{},"でもこれは、単なる好みの問題ではありません。西洋と東洋のアニメーションは、まったく異なる文化的DNAにもとづいて作られており、その違いが私たちの笑い方、泣き方、そして夢の見方まで変えてしまうのです。",[39,6000,6001],{},"この記事では、その層をはがしていきます。各アニメーション伝統を形作った神話、ルールを定める視覚言語、そして私たちを惹きつけ続けるストーリーテリング。旅は次の段落から始まります！",[63,6003],{},[66,6005,6007],{"id":6006},"what-is-eastern-animation",[261,6008,6009],{},"東洋のアニメーションとは？",[39,6011,6012,6013,6016,6017,6020,6021,6024],{},"東洋のアニメーションには、",[261,6014,6015],{},"日本、韓国、中国のような国々","に見られる独自のスタイルとストーリーテリング ",[261,6018,6019],{},"の伝統","が含まれます。",[261,6022,6023],{},"各国が、文化的な美意識や歴史的な語りによって形作られた独自の風味を持ち寄ります","：",[82,6026,6027,6035,6043],{},[85,6028,6029,6030,6034],{},"日本では、",[231,6031,6033],{"href":6032},"about:blank","アニメは世界的に認知された芸術の形","です（日本アニメーション協会によると、2023年の売上は210億ドル）。心温まる成長物語からSFの大叙事詩まで、幅広いジャンルを網羅しています。『カウボーイビバップ』や『ワンピース』のような象徴的なシリーズに加え、『千と千尋の神隠し』や『パプリカ』のような映画も、日本のアニメーションの深さと多様性を示しています。",[85,6036,6037,6038,6042],{},"韓国は、2023年の売上が7億6,700万ドルにのぼるなど、アニメ産業における主要プレイヤーの一人です。韓国のアニメーションは、洗練されたビジュアル・スタイル、そして",[231,6039,6041],{"href":6040},"https://blog.cg-wire.com/character-design-animation/","キャラクターデザイン","への強い重点、高い制作品質が特徴として挙げられます。国際市場での影響力が拡大する中、韓国のスタジオは『ルック主義（Lookism）』『ノブレス（Noblesse）』『神の塔（Tower of God）』のように世界的に人気のシリーズを生み出してきました。多くの場合、ファンタジー、アクション、緻密な世界構築を組み合わせています。",[85,6044,6045],{},"中国にも、何十年にもわたる豊かなアニメーションの伝統があります。初期作品では『天国の禍（Havoc in Heaven）』が、手描きの職人技と神話的な語りを示しています。現在、中国のアニメーションは、2023年の売上418億ドル（米ドル）とされるなど、投資の増加と国内視聴者の拡大によってルネサンスを迎えています。現代の中国のアニメシリーズは、しばしば古代の民間伝承、歴史的な叙事詩、そして現代の社会テーマを取り込み、伝統的なアート表現と最先端技術を融合させます。最近の例として『諸神の黄昏』が挙げられます。",[43,6047,6049],{"className":6048},[20,46],[48,6050],{"src":6051,"className":6052,"alt":53,"loading":54,"width":6053,"height":5451,"srcSet":6054,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/09/data-src-image-a34532d9-4c28-45a8-a09c-77ab49ad37df.png",[52],1024,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2025/09/data-src-image-a34532d9-4c28-45a8-a09c-77ab49ad37df.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2025/09/data-src-image-a34532d9-4c28-45a8-a09c-77ab49ad37df.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/09/data-src-image-a34532d9-4c28-45a8-a09c-77ab49ad37df.png 1024w",[39,6056,6057],{},"東洋のアニメーションは、革新を受け入れつつも、深い文化的遺産を映し出しています。西洋のアニメーション・スタイルに対する、鮮やかな代替案を提供してくれるのです。各国それぞれがアニメーションに独自の解釈を持っているとはいえ、この記事の残りでは理解しやすさのため、日本のアニメーションをモデルとして扱います。",[63,6059],{},[66,6061,6063],{"id":6062},"what-is-western-animation",[261,6064,6065],{},"西洋のアニメーションとは？",[39,6067,6068,6069,6072],{},"西洋のアニメーションとは、",[261,6070,6071],{},"主に北アメリカとヨーロッパ","から生まれる、アニメ作品（制作物）を指します。",[82,6074,6075,6078,6081],{},[85,6076,6077],{},"アメリカでは、西洋のアニメーションはウォルト・ディズニー、ワーナー・ブラザース、ピクサー、ドリームワークスのような象徴的なスタジオのおかげで、大衆的なポップカルチャーとほぼ同義です。アメリカのアニメーションは、キャラクター主導のナラティブ、感情の深み、音楽的要素、そして非常に洗練され、しばしばコンピューター生成されたビジュアルに重点を置くことで知られています。『白雪姫と七人の小人（Snow White and the Seven Dwarfs）』のような手描きの名作から、『アナと雪の女王（Frozen）』『スパイダーマン：スパイダーバース』のようなヒット作まで、USのアニメーションは、技術革新と強固な物語構造を融合させています。",[85,6079,6080],{},"西洋アニメーションのもう一つの重要なプレイヤーがフランスです。Data Bridge Market Researchによると、2021年の市場価値は163億ドル。ガモンやStudioCanalのようなフランスのスタジオは、『ベルヴィルの三人組（The Triplets of Belleville）』『アーサーとミニモイ（Arthur and the Minimoys）』のような批評家から高い評価を得た作品を制作してきました。さらに最近では『Flow』などもあり、独自のビジュアル・スタイル、独自のストーリーテリング、そして実験的なアート表現への関心が特徴として挙げられます。",[85,6082,6083],{},"ドイツ（2024年の市場規模は192億ドル）やスペイン、イタリアのような他のヨーロッパ諸国も、2D/3Dの両方において相当な影響力を持っています。",[43,6085,6087],{"className":6086},[20,46],[48,6088],{"src":6089,"className":6090,"alt":53,"loading":54,"width":5900,"height":5901,"srcSet":6091,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/09/data-src-image-4084c28c-81e5-4fa6-95d5-4932635176bf.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2025/09/data-src-image-4084c28c-81e5-4fa6-95d5-4932635176bf.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2025/09/data-src-image-4084c28c-81e5-4fa6-95d5-4932635176bf.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/09/data-src-image-4084c28c-81e5-4fa6-95d5-4932635176bf.png 1600w",[39,6093,6094],{},"この対比によって、西洋と比べて東洋のアニメーションが、スタイル、哲学、そして文化的な表現でどのように異なるのかを、より深く掘り下げるための土台が整います。",[63,6096],{},[66,6098,6100],{"id":6099},"_1-studio-organization-two-systems",[261,6101,6102],{},"1. スタジオ組織：二つのシステム",[39,6104,6105],{},"アニメーションは東洋と西洋で「見た目」だけが違うわけではありません。作り方自体が根本から異なっています。",[39,6107,6108],{},"スタジオがどう組織され、役割がどう分けられ、アニメーターがどう報酬を得るか。そうした要素が、画面に届くアートのあり方を形作ります。",[39,6110,6111],{},"日本のスタジオには独自の伝統的なモデルがあります：",[82,6113,6114,6123,6129,6135,6141],{},[85,6115,6116,903,6119,6122],{},[261,6117,6118],{},"監督をクリエイティブの建築家にする",[231,6120,6121],{"href":6032},"かんとく（監督）","が、時に自ら脚本だけでなく絵コンテ全体を描き、ビジョンを制作の「素材」そのものにまで落とし込むことがあります。宮崎駿や今敏のようなアイコンが、この手の届く現場主導のあり方を体現しています。",[85,6124,6125,6128],{},[261,6126,6127],{},"シーケンスの所有"," - アニメーターにはシーケンス全体が割り当てられます。キャラクター、小道具、エフェクト、背景までを一緒に扱い、統一感のある全体的な手触りを作り出すのです。",[85,6130,6131,6134],{},[261,6132,6133],{},"ゲンガ vs ドウガ"," - ゲンガ（キーフレーム）の担当者が、コアとなる動きと感情を定めます。一方、ドウガの担当者（中割り）は、滑らかさを提供します。サッカン（リードアニメーター／監修）が両方を見渡し、ときには監督よりも大きな意思決定力を持つこともあります。",[85,6136,6137,6140],{},[261,6138,6139],{},"アウトプットによる報酬"," - キーアニメーターはカット（シーン）単位で報酬が支払われますが、中割り担当者はシート単位（フレーム数）で支払われ、量だけでなく細部と精度を重視する仕組みになっています。",[85,6142,6143,6146],{},[261,6144,6145],{},"アートの統一性"," - 結果として、あらゆるフレームが意図され、監督のビジョンにつながっていると感じられる、深く統合されたビジュアル・スタイルが生まれます。",[39,6148,6149],{},"一方、西洋のスタジオはより「生産性重視」のアプローチを採用します：",[82,6151,6152,6162,6168,6174,6180],{},[85,6153,6154,903,6157,6161],{},[261,6155,6156],{},"過度な専門分化",[231,6158,6160],{"href":6159},"https://blog.cg-wire.com/cg-production-pre-production-production-and-post-production/","制作を多くのマイクロな役割に分解","します。アニメーションの監督、アシスタント、中割り、エフェクトの専門家、クリーンアップ担当などです。",[85,6163,6164,6167],{},[261,6165,6166],{},"分断されたコラボレーション"," - 1つのシーンでも、キャラクター、エフェクト、背景が、まったく別のチームによって描かれていることがあります。たとえ同じ画面に同時に現れていても、です。",[85,6169,6170,6173],{},[261,6171,6172],{},"分業による一貫性"," - この仕組みは品質管理とスケールを可能にしますが、構図が弱いとバラついた印象につながることもあります。",[85,6175,6176,6179],{},[261,6177,6178],{},"効率とスケール"," - 専門分化によって、西洋のスタジオは、ディズニーの長編作品やドリームワークスの映画のように、数千人規模のスタッフを抱える大規模制作を運営できます。",[85,6181,6182,6185],{},[261,6183,6184],{},"統一よりもモジュール化"," - 重点は、単一のアニメーターの“全体像のビジョン”よりも、キャラクターやエフェクトにまたがる一貫性に置かれます。",[39,6187,6188],{},"こうしたスタジオ組織の違いは、単なる段取りの問題ではありません。それぞれの伝統から生まれるアニメーションの「魂」そのものを形作ります。なぜ西洋と東洋のアニメーションが、似たような物語を語っていても非常に異なって感じられるのか。その理解に不可欠なのです。",[63,6190],{},[66,6192,6194],{"id":6193},"_2-aesthetic-visual-language",[261,6195,6196],{},"2. 美学と視覚言語",[39,6198,6199,6200,6203,6204,2169,6207,6210,6211,6217],{},"アニメでは、支配的な美学は",[261,6201,6202],{},"ミニマリスト（省略的）なアニメーション","に大きく寄っています。このスタイルは、連続的で流れるような動きよりも、",[261,6205,6206],{},"物語性",[261,6208,6209],{},"感情の深み","、そして",[231,6212,6213],{"href":6040},[6214,6215,6216],"u",{},"風変わりなキャラクターデザイン","を優先します。ミニマリストなアニメーションは、意図的な選択によって効果を生み出します。1秒あたりのコマ数を減らす（低FPS）、静止画のショットを戦略的に使うこと、そして繰り返しや簡略化されたアニメーションシーケンスを活用すること。動くマンガのように。",[39,6219,6220],{},"このアプローチは品質が低いことを意味するのではなく、むしろ計算された芸術的判断です。動きを減らすことで、アニメは繊細な表情、ドラマチックな構図、そして空気感のある背景の細部に焦点を当てられるため、感情が揺れる瞬間に視聴者が長く留まれるようになります。",[43,6222,6224,6230],{"className":6223},[20,46,1660],[48,6225],{"src":6226,"className":6227,"alt":53,"loading":54,"width":5900,"height":6228,"srcSet":6229,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/09/data-src-image-1393b376-c50c-4a6a-a873-2cc883e48d25.png",[52],800,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2025/09/data-src-image-1393b376-c50c-4a6a-a873-2cc883e48d25.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2025/09/data-src-image-1393b376-c50c-4a6a-a873-2cc883e48d25.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/09/data-src-image-1393b376-c50c-4a6a-a873-2cc883e48d25.png 1600w",[1666,6231,6232],{},[2572,6233,6234],{},[802,6235,6237],{"className":6236,"style":1673},[2577],"出典：サムライチャンプルー",[39,6239,6240,6241,6244,6245,6251],{},"対照的に、西洋のカートゥーンは",[261,6242,6243],{},"キャラクターアニメーションと高いエネルギーのある動き","を重視します。このスタイルは誇張とテンポで作られ、ダイナミックで、ときにはコメディのような視覚体験を生み出します：",[231,6246,6248],{"href":6247},"https://blog.cg-wire.com/exaggeration-animation-principle/",[6214,6249,6250],{},"キャラクターが跳んで、伸びて、誇張された身体性でリアクションする","（バックス・バニーの伸縮自在の手足やスポンジボブの跳ねるような動きを想像してください）。こうしたアニメーションは通常、より高いフレームレート（多くは24FPS以上）で動作するため、滑らかで流れるような動きになります。リップシンクも、現実味と明瞭さを保つために、より正確で一貫しています。",[43,6253,6255],{"className":6254},[20,46],[48,6256],{"src":6257,"className":6258,"alt":53,"loading":54,"width":5900,"height":6259,"srcSet":6260,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/09/data-src-image-e42c7fae-d6b8-4e0a-bbfb-3aa0e772925f.png",[52],1168,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2025/09/data-src-image-e42c7fae-d6b8-4e0a-bbfb-3aa0e772925f.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2025/09/data-src-image-e42c7fae-d6b8-4e0a-bbfb-3aa0e772925f.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/09/data-src-image-e42c7fae-d6b8-4e0a-bbfb-3aa0e772925f.png 1600w",[39,6262,6263,6264,6267],{},"その結果、アニメは内省的に感じられやすく、対して西洋のカートゥーンはパフォーマンス（見せ場）に駆動される感覚が強くなります。これらの違いは単なる技術的なものではありません。物語づくりにおける、より広い文化的価値観を反映しています。つまり、",[261,6265,6266],{},"こうした美学的な選択が、それぞれの伝統の独自の視覚的アイデンティティを定義している","のです。",[63,6269],{},[66,6271,6273],{"id":6272},"_3-storytelling-the-heart-of-animation",[261,6274,6275],{},"3. ストーリーテリング：アニメーションの心臓",[39,6277,6278],{},"どんなアニメーションの物語も、プロットやキャラクターだけでなく、深く根付いた文化的価値観によって形作られています。西洋と東洋のアニメーションは、それぞれのアプローチで大きく分岐しており、個人主義、共同体、そして対立のあり方に対する対照的な世界観が反映されます：",[82,6280,6281,6287,6293,6299,6305,6311],{},[85,6282,6283,6286],{},[261,6284,6285],{},"文化的ルーツ"," - 西洋のアニメーションは、啓蒙思想や個人主義に基づき、「自己決定」や「個人的な勝利」を重視します。東洋のアニメーションは儒教、仏教、神道といった思想に形作られ、調和、集団としての責任、そして人生の循環的な性質を強調します。",[85,6288,6289,6292],{},[261,6290,6291],{},"物語の視点（I vs we）"," - 西洋の物語は、中心となる主人公が個人としての歩みを通じてプロットを動かします。東洋の物語は、集団の視点を取ることが多く、主人公は後から現れることもあり、成長はグループ（仲間）の中で共有されます。",[85,6294,6295,6298],{},[261,6296,6297],{},"プロットと感情の駆動（変化 vs 調和）"," - 西洋のアニメーションは、対立、攪乱、そして変容に強く機能し、それが明確な勝利へと収束します。東洋の語りは、感情の響きとバランスを好み、勝利の代わりに受容、犠牲、あるいは静かな結末で終わることがよくあります。",[85,6300,6301,6304],{},[261,6302,6303],{},"キャラクター（ヒーロー vs コミュニティ）"," - 西洋のヒーローは、正義の個人主義的な象徴であり、力や欲に定義されたヴィラン（敵）に向き合います。東洋のキャラクターは、個々の名声よりも集団の成功を重視します。リーダーシップは移り変わり、ヴィランが不在であることさえあり、死が儚さ（無常）を補強します。",[85,6306,6307,6310],{},[261,6308,6309],{},"対立（善 vs 悪 vs 良いものを探す）"," - 西洋のアニメーションは、異国の悪に対してヒーローをぶつけ、征服によって解決します。東洋のアニメーションはこの二分法をぼかし、共感、共存、そして誰もが自分は正しいと信じている内面的な葛藤に焦点を当てます。",[85,6312,6313,6316],{},[261,6314,6315],{},"解決（勝利 vs 調和）"," - 西洋の物語は、決定的な勝利とハッピーな結末で終わります。東洋の物語は、ビターでも悲劇的でもあり得る形であっても、バランスを目指します。徹底的な勝利よりも、調和やつながりの中に美しさを見いだすのです。",[39,6318,6319,6320,6326],{},"西洋も東洋も、",[231,6321,6323],{"href":6322},"https://blog.cg-wire.com/animation-scripts/",[6214,6324,6325],{},"心を掴む物語","を語りますが、そうするためのレンズは根本的に異なります。西洋のアニメーションは、変化と勝利へ向かう個人の旅を称えます。一方、東洋のアニメーションは、調和と理解へ向かう集団の道を尊びます。",[39,6328,6329],{},"どちらの伝統も、物語は単なる娯楽ではないことを教えてくれます。物語は、私たちが大切にする価値観を映し出す鏡でもあるのです。",[63,6331],{},[66,6333,6334],{"id":4755},[261,6335,4756],{},[39,6337,6338],{},"西洋と東洋のアニメーションの「衝突」は、優劣の戦いではありません。それは、物語、アート、そして文化的表現における多様性の祝福であり、どちらの伝統も人間の体験に対する独自の窓を提供してくれます。",[39,6340,6341],{},"違いは深いところにあります。西洋のアニメーションは個人主義、ダイナミックなアクション、そして明確に区切られた勝利に強みがあります。対して東洋のアニメーションは、集団の調和、繊細な感情、そして無常の静かな美しさを受け入れます。これらの違いは単なる作風ではなく、儒教の価値観から啓蒙思想の理想に至るまで、何世紀にもわたる哲学・歴史・創作上の考え方に根ざしています。",[39,6343,6344],{},"ただ、共通しているのは、それが私たちを動かす力を持っていることです。偉大なアニメーションは国境を越えます。意味、つながり、そして成長を求める私たちの共通した願いに語りかけます。",[39,6346,6347,6348,6351],{},"もちろん、",[261,6349,6350],{},"現代のアニメーションはそれほど二元論的ではなく、異なる着想を見事に融合させるアニメーションスタジオもたくさんあります","。多くの成功した西洋のカートゥーンには強いアニメ影響があります（『Avatar』シリーズ、『Samurai Jack』、そしてより最近では『Invincible』など）。それと同じように、日本のアニメーションも西洋からアイデアを取り入れています（『カウボーイビバップ』『トライガン』『バッカーノ！』など）。",[17,6353,6355,6358],{"className":6354},[20,21,22],[17,6356,312],{"className":6357},[26],[17,6359,3401,6361,6364],{"className":6360},[31],[231,6362,5206],{"href":3404,"rel":6363},[321],"！私たちはベストプラクティスを共有する1,000人以上の専門家とつながっており、時には対面イベントも企画しています。ぜひようこそお迎えできれば嬉しいです！😊",[17,6366,6368],{"className":6367},[20,327,328],[231,6369,3413],{"href":3404,"className":6370},[332,333],{"title":53,"searchDepth":336,"depth":336,"links":6372},[6373,6374,6375,6376,6377,6378],{"id":6006,"depth":336,"text":6009},{"id":6062,"depth":336,"text":6065},{"id":6099,"depth":336,"text":6102},{"id":6193,"depth":336,"text":6196},{"id":6272,"depth":336,"text":6275},{"id":4755,"depth":336,"text":4756},"https://images.unsplash.com/photo-1723618633842-8534abf34894?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8c2VhcmNofDMxfHxhbmltZSUyMHZzJTIwY2FydG9vbnxlbnwwfHx8fDE3NTg0OTkyNjV8MA&ixlib=rb-4.1.0&q=80&w=2000",{"updated_at":6381,"featured_at":350,"visibility":351},"2026-02-20T06:05:05.000+01:00","/blog-i18n/ja/western-vs-eastern-animation","2025-09-29T10:30:57.000+02:00",{"title":5977,"description":53},"西洋アニメーションvs東洋アニメーション","blog-i18n/ja/western-vs-eastern-animation/index",[6388],{"id":4845,"name":4846,"slug":4847,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":5232},"bHDOBfliXntcKoQqiBq1bYGkx5h9-urqhjPYuof-mLw",[6391,6917,7690,8194,8907],{"id":6392,"title":6393,"authors":6394,"body":6396,"description":53,"extension":346,"feature_image":6899,"html":11,"meta":6900,"navigation":352,"path":6902,"published_at":6903,"seo":6904,"slug":6905,"stem":6906,"tags":6907,"__hash__":6916,"updated_at":6901,"featured_at":350,"visibility":351},"blog/blog-i18n/ja/self-hosted-blender-render-farm/index.md","Flamencoを使って2026年に自宅ホスティングのBlenderレンダーファームを構築する",[6395],{"id":8,"name":9,"slug":10,"profile_image":11,"cover_image":11,"bio":11,"website":11,"location":11,"facebook":11,"twitter":11,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":4860},{"type":14,"value":6397,"toc":6889},[6398,6409,6412,6415,6418,6421,6424,6434,6436,6440,6443,6453,6464,6471,6478,6480,6484,6492,6498,6501,6503,6507,6510,6524,6534,6536,6540,6564,6567,6577,6580,6588,6590,6594,6601,6604,6607,6615,6621,6623,6627,6630,6660,6670,6676,6696,6699,6708,6710,6714,6717,6723,6734,6737,6775,6785,6792,6809,6811,6814,6824,6827,6840,6842,6846,6852,6855,6858,6861,6868,6883],[17,6399,6401,6405],{"className":6400},[20,21,22],[17,6402,6404],{"className":6403},[26],"🖥️",[17,6406,6408],{"className":6407},[31],"クラウドに触れることなく、アイドル状態のマシンを強力なBlenderレンダーファームに変えましょう。",[39,6410,6411],{},"レンダリングのせいで期限をほとんど逃しかけたのは、最後にいつでしたか？",[39,6413,6414],{},"Blenderを開くたびに、作業用ワークステーションの音が離陸準備をするジェットエンジンのようになり、何ヶ月分もの制作物がたった1つの進捗バーに人質にされます。",[39,6416,6417],{},"一方で、昔の大学ノートPCは箱の中でホコリをかぶっています。強力ではありませんがGPUはあります。RAMもあります。パニックしながら、まったく何もせずにいるだけの完全に機能するPCです。",[39,6419,6420],{},"「レンダーファーム」という概念は、1人規模のスタジオにとっては少し怖く聞こえるかもしれません。冷房の効いた部屋にサーバーラックが並び、高価なライセンス、そしてIPアドレスについて叫ぶIT担当者…そんな光景を想像するかもしれません。",[39,6422,6423],{},"しかし、現代のBlenderのエコシステムでは、それはもう現実ではありません。",[39,6425,6426,6427,6433],{},"この記事では、",[261,6428,6429,6430],{},"古いデバイスを",[261,6431,6432],{},"Flamenco","で統一されたレンダリングシステムにする方法を説明します。ネットワーク設定の難しさを解きほぐし、数時間で複数のマシンでレンダリングできるようにします。",[63,6435],{},[66,6437,6439],{"id":6438},"why-self-host-a-render-farm","なぜレンダーファームをセルフホストするのか？",[39,6441,6442],{},"イーサネットケーブルを挿す前に、そもそもなぜやるべきなのかを話しましょう。「クラウドのファームに全部送ればいいのでは？」と思うかもしれません。クラウドファームは素晴らしいですが、ローカルのセルフホストレンダーファームは、ワークフローを3つの基本的な点で変えます。",[39,6444,6445,6446,5576,6450,6267],{},"クラウドファームにお金を払うとき、あなたは「最終出力」に対して支払っています。",[231,6447,6449],{"href":6448},"https://blog.cg-wire.com/blender-kitsu-low-res-preview/","心理的にテストレンダリングをしにくくなります",[261,6451,6452],{},"すべてが100%完璧だと確信できるまで「レンダー」を押すのが怖くなる",[39,6454,6455,6456,5576,6460,6463],{},"ファームを自分で所有していると、レンダリングのコストは電気代です。",[231,6457,6459],{"href":6458},"https://blog.cg-wire.com/getting-started-with-blender-rendering/","タイミングやライティングを確認するために、解像度50%のラフなアニメーションをレンダリングできます",[261,6461,6462],{},"この自由によって、より速く反復できます。","当てずっぽうをやめて、テストを始められます。",[39,6465,6466,6467,6470],{},"時には、NDAのある技術クライアント向けの商業プロジェクトに取り組んでいて、製品名すら口にしてはいけないほど厳格な場合があります。",[261,6468,6469],{},"それらのアセットを第三者のクラウドサーバー（たとえ安全なものでも）にアップロードすると、厳格なNDA契約に違反する可能性があります。","データをローカルネットワーク（LAN）に保持しておけば、あなたがそう言うまで、スタジオからピクセルが外に出ることはありません。",[39,6472,6473,6474,6477],{},"2GBのプロジェクトファイルをクラウドにアップロードし、レンダリングが終わるのを待ち、フレームをダウンロードして、物理キャッシュを焼き忘れていたと気づく――その苦痛には特有のものがあります。",[261,6475,6476],{},"Flamencoのようなローカルファームなら、ミスを見つけたら「キャンセル」を押して直し、もう一度「レンダー」を押せば済みます。アップロード時間もダウンロード時間もありません。","まるでワークステーションの延長のように感じられます。",[63,6479],{},[66,6481,6483],{"id":6482},"what-is-blender-flamenco","Blender Flamencoとは？",[39,6485,6486,6487,6491],{},"スクラッチからレンダーファームを立ち上げるには ",[231,6488,6490],{"href":6489},"https://blog.cg-wire.com/blender-programmatic-rendering/","かつては複雑なスクリプトが必要でした","し、または高価なサードパーティソフトウェアが必要でした。ところが今は、Blender Flamencoがあります。",[39,6493,6494,6497],{},[261,6495,6496],{},"FlamencoはBlenderのオープンソースのレンダーファームです。","セットアップはとても簡単です。マネージャーが脳になってやるべきタスクのリスト（レンダリングするフレーム）を保持し、他のコンピュータに何をすべきかを伝えます。ワーカーは追加のノートPCやデスクトップです。ワーカーはマネージャーの指示を聞き、フレームを要求し、レンダリングして保存し、次のフレームをまた要求します。",[39,6499,6500],{},"Flamencoはゼロ設定で動くように設計されています。ほぼ自動でネットワーク上を見つけてくれます。Blenderをインストールできるなら、Flamencoもセットアップできます。",[63,6502],{},[66,6504,6506],{"id":6505},"_1-the-setup","1. セットアップ",[39,6508,6509],{},"このチュートリアルでは、マネージャーとワーカーの両方をデスクトップPCで兼ねる、最もシンプルな構成から始めます。後でノートPCを追加する方法も見ていきます。",[1053,6511,6512,6518],{},[85,6513,6514,6517],{},[261,6515,6516],{},"Blenderをインストール"," - コンピュータにBlenderがインストールされていることを確認してください。",[85,6519,6520,6523],{},[261,6521,6522],{},"Flamencoをダウンロード"," - FlamencoのWebサイトにアクセスし、ご利用のOS用のパッケージをダウンロードします。フォルダに展開してください。",[43,6525,6527],{"className":6526},[20,46],[48,6528],{"src":6529,"className":6530,"alt":53,"loading":54,"width":6531,"height":6532,"srcSet":6533,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/01/data-src-image-cec7140f-c6aa-4e18-83fb-be86e5a39ac7.png",[52],1064,721,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/01/data-src-image-cec7140f-c6aa-4e18-83fb-be86e5a39ac7.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/01/data-src-image-cec7140f-c6aa-4e18-83fb-be86e5a39ac7.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/01/data-src-image-cec7140f-c6aa-4e18-83fb-be86e5a39ac7.png 1064w",[63,6535],{},[66,6537,6539],{"id":6538},"_2-run-flamenco-manager","2. Flamenco Managerを起動する",[1053,6541,6542,6545,6551,6554,6557],{},[85,6543,6544],{},"展開したFlamencoフォルダを開きます。",[85,6546,6547,6550],{},[5648,6548,6549],{},"flamenco-manager","をダブルクリックします。",[85,6552,6553],{},"いくつかのテキストログとともに、ターミナルウィンドウがポップアップします。",[85,6555,6556],{},"設定ウィザードを進めて、レンダリングするためにblendファイルをアップロードするジョブフォルダを作成します。",[85,6558,6559,6560,6563],{},"少ししてから、Webブラウザが自動的に ",[5648,6561,6562],{},"http://localhost:8080"," を開くはずです。これがFlamencoのWebインターフェースです。",[39,6565,6566],{},"フレンドリーなダークテーマのダッシュボードが表示されたら、おめでとうございます。あなたはすでにサーバー管理者の半分を達成しています。Managerが起動しています。",[43,6568,6570],{"className":6569},[20,46],[48,6571],{"src":6572,"className":6573,"alt":53,"loading":54,"width":6574,"height":6575,"srcSet":6576,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/01/data-src-image-ac803a05-e189-4c17-9fe9-d5749f916aa0.png",[52],1319,821,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/01/data-src-image-ac803a05-e189-4c17-9fe9-d5749f916aa0.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/01/data-src-image-ac803a05-e189-4c17-9fe9-d5749f916aa0.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/01/data-src-image-ac803a05-e189-4c17-9fe9-d5749f916aa0.png 1319w",[39,6578,6579],{},"マネージャーはアドオンのダウンロードを促します。それを今やってください。ステップ4で必要になります。",[43,6581,6583],{"className":6582},[20,46],[48,6584],{"src":6585,"className":6586,"alt":53,"loading":54,"width":6531,"height":6532,"srcSet":6587,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/01/data-src-image-ccd6a3fb-4abd-469e-a566-5adfddf76196.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/01/data-src-image-ccd6a3fb-4abd-469e-a566-5adfddf76196.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/01/data-src-image-ccd6a3fb-4abd-469e-a566-5adfddf76196.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/01/data-src-image-ccd6a3fb-4abd-469e-a566-5adfddf76196.png 1064w",[63,6589],{},[66,6591,6593],{"id":6592},"_3-the-worker","3. ワーカー",[39,6595,6596,6597,6600],{},"次に、マネージャーを動かしたままにして、",[5648,6598,6599],{},"flamenco-worker","をダブルクリックしてください。",[39,6602,6603],{},"以上です。",[39,6605,6606],{},"ワーカーはローカルネットワークをスキャンし、同じコンピュータ上で動いているManagerを見つけて自己紹介します。デスクトップのWebブラウザ（Managerの画面）を見てみると、「Workers」タブに「Idle」として表示され、出番を待っているはずです。",[43,6608,6610],{"className":6609},[20,46],[48,6611],{"src":6612,"className":6613,"alt":53,"loading":54,"width":6574,"height":6575,"srcSet":6614,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/01/data-src-image-6bad58f1-615a-4a7b-8aff-38f07279ebe0.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/01/data-src-image-6bad58f1-615a-4a7b-8aff-38f07279ebe0.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/01/data-src-image-6bad58f1-615a-4a7b-8aff-38f07279ebe0.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/01/data-src-image-6bad58f1-615a-4a7b-8aff-38f07279ebe0.png 1319w",[39,6616,6617,6618,6620],{},"デスクトップでも",[5648,6619,6599],{},"を動かしてください。メインPCは同時にレンダリングと管理を行えます。",[63,6622],{},[66,6624,6626],{"id":6625},"_4-add-the-blend-file-and-render","4. blendファイルを追加してレンダリングする",[39,6628,6629],{},"準備は整いました。さあ、作業に入りましょう！",[1053,6631,6632,6638,6644,6650],{},[85,6633,6634,6635,5576],{},"デスクトップで",[261,6636,6637],{},"Blenderを開く",[85,6639,6640,6643],{},[261,6641,6642],{},"アドオンを有効化"," - 編集 > 設定 > アドオン > ディスクからインストールへ移動します。マネージャーのセットアップ中にダウンロードしたflamencoのzipファイルを検索してください。",[85,6645,6646,6649],{},[261,6647,6648],{},"Managerを紐付ける"," - Flamencoアドオンの設定で、マネージャーのURLをコピー＆ペーストします。",[85,6651,6652,6655,6656,6659],{},[261,6653,6654],{},"ファイルを保存する"," - 設定されたジョブフォルダに",[5648,6657,6658],{},".blend","ファイルを保存します。",[43,6661,6663],{"className":6662},[20,46],[48,6664],{"src":6665,"className":6666,"alt":53,"loading":54,"width":6667,"height":6668,"srcSet":6669,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/01/data-src-image-88504c81-44cf-4d32-a374-0b2dc6746b56.png",[52],724,732,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/01/data-src-image-88504c81-44cf-4d32-a374-0b2dc6746b56.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/01/data-src-image-88504c81-44cf-4d32-a374-0b2dc6746b56.png 724w",[39,6671,6672,6673,6675],{},"Blenderのレンダー プロパティタブで、下にスクロールして",[261,6674,6432],{},"パネルを表示します。",[1053,6677,6678,6684,6690],{},[85,6679,6680,6683],{},[261,6681,6682],{},"「Fetch Job Types」","をクリック。",[85,6685,6686,6689],{},[261,6687,6688],{},"「Simple Render」","を選択。",[85,6691,6692,6695],{},[261,6693,6694],{},"「Submit to Flamenco」","を押す。",[39,6697,6698],{},"次に、Webブラウザへ切り替えます。ジョブが表示されるはずです。「Workers」リストのステータスバーが緑に変わります。デスクトップは、一度に1フレームずつレンダリング用に取得します。",[43,6700,6702],{"className":6701},[20,46],[48,6703],{"src":6704,"className":6705,"alt":53,"loading":54,"width":6574,"height":6706,"srcSet":6707,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/01/data-src-image-6e7fa2fb-b997-4f6f-ba60-bcc3c70d5bb0.png",[52],918,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/01/data-src-image-6e7fa2fb-b997-4f6f-ba60-bcc3c70d5bb0.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/01/data-src-image-6e7fa2fb-b997-4f6f-ba60-bcc3c70d5bb0.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/01/data-src-image-6e7fa2fb-b997-4f6f-ba60-bcc3c70d5bb0.png 1319w",[63,6709],{},[66,6711,6713],{"id":6712},"_5-bringing-in-the-laptop","5. ノートPCを追加する",[39,6715,6716],{},"次に、ホコリをかぶったノートPCをファームに追加します。",[39,6718,6719,6720],{},"ここであなたに伝えたい、最も実行可能なアドバイスが1つあります。それは90%の初心者が失敗するポイントでもあります：",[261,6721,6722],{},"すべてのコンピュータが、同じ場所にあるファイルが見えていなければなりません。",[39,6724,6725,6726,6729,6730,6733],{},"デスクトップでテクスチャが ",[5648,6727,6728],{},"C:\\Users\\Dave\\Texture.png"," にあるなら、ノートPCはそのパスに",[802,6731,6732],{},"アクセスできません","。ノートPCにはDaveというユーザーが存在しないうえ、Cドライブにもそのファイルがありません。",[39,6735,6736],{},"必要なのは共有ネットワークフォルダで、通常はNASを使います。OSによって手順は似ていますが、少しだけ違います：",[1053,6738,6739,6742,6749,6762],{},[85,6740,6741],{},"イーサネットケーブルでデスクトップとノートPCを接続",[85,6743,6744,6745,6748],{},"デスクトップ上にNASフォルダを作成し、名前を",[5648,6746,6747],{},"RenderFarm","にする。",[85,6750,6751,6752,6755,6756,6755,6759,6761],{},"右クリック > ",[261,6753,6754],{},"プロパティ"," > ",[261,6757,6758],{},"共有",[261,6760,6758],{},"。ユーザーに読み取り/書き込みの権限を付与する。",[85,6763,6764,6767,6768,6771,6772,6774],{},[261,6765,6766],{},"ネットワークドライブを割り当てる：","デスクトップで、このフォルダをドライブレターに割り当てます。たとえば",[5648,6769,6770],{},"Z:","。ノートPCでは、デスクトップのネットワーク共有に移動し、これを**同じレター ",[5648,6773,6770],{},"** に割り当てます。",[39,6776,6777,6778,6781,6782,6784],{},"これで、Blenderファイルを",[5648,6779,6780],{},"Z:\\RenderFarm\\MyProject.blend","として保存すれば、両方のコンピュータが",[5648,6783,6780],{},"としてそれを見られます。パスは絶対で、同一です。",[39,6786,6787,6788,6791],{},"デスクトップは起動したままにして、",[261,6789,6790],{},"コンピュータB（ノートPC）","へ移ってください。",[1053,6793,6794,6799,6802,6805],{},[85,6795,6796,6798],{},[5648,6797,6770],{},"ドライブ（またはセットアップした共有ストレージ）がアクセス可能か確認します。念のため、その中のファイルを開いてみてください。",[85,6800,6801],{},"ノートPCでFlamencoフォルダをインストールして開きます。",[85,6803,6804],{},"デスクトップと同じBlenderバージョンがインストールされていることを確認します。",[85,6806,6807,6550],{},[5648,6808,6599],{},[39,6810,6603],{},[39,6812,6813],{},"ワーカーはローカルネットワークをスキャンし、デスクトップで動いているManagerを見つけます。",[43,6815,6817],{"className":6816},[20,46],[48,6818],{"src":6819,"className":6820,"alt":53,"loading":54,"width":6821,"height":6822,"srcSet":6823,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/01/data-src-image-90501d50-29c3-4d8f-9b54-511e6c674739.png",[52],1504,932,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/01/data-src-image-90501d50-29c3-4d8f-9b54-511e6c674739.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/01/data-src-image-90501d50-29c3-4d8f-9b54-511e6c674739.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/01/data-src-image-90501d50-29c3-4d8f-9b54-511e6c674739.png 1504w",[39,6825,6826],{},"Flamencoが、コンピュータ間でジョブを自動的にオーケストレーションします。",[39,6828,6829,6830,6834,6835,6839],{},"NASにアクセスできない、またはNASを購入したくない場合は、Linuxのワークステーションに無料のSambaサーバーをインストールする方法を検討できます。Flamencoは非同期サービスを扱えないため、クラウドストレージは使えません（独自のジョブタイプを作成する場合を除く）。そのやり方については",[231,6831,6833],{"href":6832},"https://blog.cg-wire.com/","将来の記事","で、Kitsuを非同期の",[231,6836,6838],{"href":6837},"https://blog.cg-wire.com/animation-asset-storage/","アセットストレージサーバー","として使う方法を見ていきます。",[63,6841],{},[66,6843,6845],{"id":6844},"conclusion-knowing-when-to-scale","まとめ：いつスケールするべきかを知る",[39,6847,6848,6849],{},"ハードウェアのセットアップ、重要な共有ストレージの考え方、そしてソフトウェアのインストールまで解説しました。ここまで実施できたなら、",[261,6850,6851],{},"自宅で機能するレンダーファームが完成し、ホコリをかぶったノートPCは今やチームの生産的なメンバーになっています。",[39,6853,6854],{},"Flamencoは、セルフホストレンダリングへの参入障壁を非常に低くしてくれます。プライバシーを尊重し、電気代以外はコストがかからず、すでに持っているハードウェアの性能を余すところなく引き出せます。",[39,6856,6857],{},"ただし、1人で達成できる範囲には限界があります。",[39,6859,6860],{},"いずれ、デスクトップ＋ノートPCの組み合わせでは足りない期限にぶつかるでしょう。たとえば、24時間で重たいボリューメトリクスのある4Kシーケンスをレンダリングする必要があり、自宅ファームの見積もりでは完了まで3週間かかる、という状況です。これがセルフホスティングの天井です。",[39,6862,6863,6864,6867],{},"この壁に当たったら、さらに5台のコンピュータを買う必要はありません。",[261,6865,6866],{},"CPU/GPUノードを何百台も即座に利用できるサービス、Ranch Computingへ切り替えるタイミングです。","自宅ファームは、テスト、プレビュー、軽めのプロジェクトに最適な素晴らしい日常ドライバーです。一方で、クラウドのレンダーファームは、クライアント向けの高品質な成果物を素早くレンダリングするのに非常に役立ちます。",[17,6869,6871,6874],{"className":6870},[20,21,22],[17,6872,312],{"className":6873},[26],[17,6875,6877,6878,6882],{"className":6876},[31],"アニメーション制作のプロセスについてもっと知りたい方は",[231,6879,6881],{"href":3404,"rel":6880},[321],"ぜひDiscordコミュニティに参加することを検討してください","！ベストプラクティスを共有する1,000人以上の専門家とつながれ、時には対面イベントも企画しています。ぜひ歓迎します！ 😊",[17,6884,6886],{"className":6885},[20,327,328],[231,6887,3413],{"href":3404,"className":6888},[332,333],{"title":53,"searchDepth":336,"depth":336,"links":6890},[6891,6892,6893,6894,6895,6896,6897,6898],{"id":6438,"depth":336,"text":6439},{"id":6482,"depth":336,"text":6483},{"id":6505,"depth":336,"text":6506},{"id":6538,"depth":336,"text":6539},{"id":6592,"depth":336,"text":6593},{"id":6625,"depth":336,"text":6626},{"id":6712,"depth":336,"text":6713},{"id":6844,"depth":336,"text":6845},"https://images.unsplash.com/photo-1683322499436-f4383dd59f5a?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8c2VhcmNofDd8fGRhdGElMjBjZW50ZXJ8ZW58MHx8fHwxNzY3NjE4NDAxfDA&ixlib=rb-4.1.0&q=80&w=2000",{"updated_at":6901,"featured_at":350,"visibility":351},"2026-02-20T06:04:52.000+01:00","/blog-i18n/ja/self-hosted-blender-render-farm","2026-01-19T10:00:41.000+01:00",{"title":6393,"description":53},"自己ホスト型blenderレンダーファーム","blog-i18n/ja/self-hosted-blender-render-farm/index",[6908,6913],{"id":6909,"name":6910,"slug":6911,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":6912},"5fff0e54653a0c003924f7f2","Pipeline Automation","pipeline","https://blog.cg-wire.com/tag/pipeline/",{"id":6914,"name":676,"slug":677,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":6915},"69c20ddbcb09d8000107cfe5","https://blog.cg-wire.com/tag/blender/","3sdmLMG0TsJgKAb8NZOwjwHQlyP8WgMfjF3qAJbCA78",{"id":6918,"title":6919,"authors":6920,"body":6922,"description":53,"extension":346,"feature_image":7678,"html":11,"meta":7679,"navigation":352,"path":7681,"published_at":7682,"seo":7683,"slug":7684,"stem":7685,"tags":7686,"__hash__":7689,"updated_at":7680,"featured_at":350,"visibility":351},"blog/blog-i18n/ja/blender-shaders-explained/index.md","Blenderシェーダーの扱い方（2026）：ノード＆スクリプト",[6921],{"id":8,"name":9,"slug":10,"profile_image":11,"cover_image":11,"bio":11,"website":11,"location":11,"facebook":11,"twitter":11,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":4860},{"type":14,"value":6923,"toc":7661},[6924,6935,6941,6944,6947,6953,6955,6961,6964,6973,6978,6995,6998,7012,7022,7024,7030,7033,7036,7039,7046,7061,7068,7071,7073,7079,7086,7094,7100,7103,7141,7147,7150,7158,7164,7167,7205,7211,7214,7234,7240,7243,7269,7275,7278,7304,7310,7313,7339,7345,7348,7356,7362,7365,7379,7381,7387,7393,7396,7399,7426,7433,7436,7458,7461,7484,7487,7520,7524,7527,7572,7575,7585,7591,7599,7602,7604,7609,7616,7627,7641,7655],[17,6925,6927,6931],{"className":6926},[20,21,22],[17,6928,6930],{"className":6929},[26],"🎨",[17,6932,6934],{"className":6933},[31],"シェーダーは魔法ではありません。制御でき、自動化もできる「視覚的なレシピ」です。",[39,6936,5771,6937,6940],{},[802,6938,6939],{},"shader","（シェーダー）」という言葉を初めて聞いたとき、不安になるのは簡単です。誰かがGLSLの話をし始め、GPUが汗をかき始めるように感じて、気づけば読めないコードの壁を想像し、PCファンが助けを求めて叫んでいる――そんな気分になるでしょう。",[39,6942,6943],{},"o早い段階で誰も教えてくれないのはここです。シェーダーを扱うのに数学者やグラフィックスプログラマーである必要はありません。低レベルのGPUコードを書くことも、光の物理の裏にあるすべての式を理解することも求められていません。Blenderは、あなたにそれを期待していません。代わりに、ノードをくれます。コードというよりレゴのように振る舞う「視覚的な組み立て部品」です。つなげていくだけで結果がすぐ見えて、納得できる感触になるまで調整できます。",[39,6945,6946],{},"シェーダーをコードというより「レシピ」と考えてください。値、テクスチャ、ロジックを混ぜ合わせて、サーフェスが光にどう反応すべきかを記述します。時には既知のレシピに従い、時には即興で試し、時には何が起きるか見るためにあえて壊してみます。それが、あなたが学ぶ方法です。",[39,6948,6949,6952],{},[261,6950,6951],{},"この記事では、シェーディングが実際に何であるかを解き明かし、そこにまとわりつく恐怖心を取り払い、Blenderのノードシステムを使って（あるいは少しのスクリプトで）アニメーション制作パイプラインのためにシェーダーをプロシージャルに操作する方法を探ります。"," そして最後には、シェーディングが「立ち入ってはいけない部屋」のように感じることはなくなっているはずです。",[63,6954],{},[66,6956,6958],{"id":6957},"whats-a-shader",[261,6959,6960],{},"シェーダーとは？",[39,6962,6963],{},"シェーダーを理解するには、「色」について考えるのをやめて「物理」について考え始める必要があります。",[39,6965,6966,6972],{},[231,6967,6969],{"href":6968},"https://blog.cg-wire.com/hard-surface-modeling/",[6214,6970,6971],{},"現実世界で木の椅子を赤く塗る","とき、あなたが変えているのは単なる色ではありません。光と相互作用する「マテリアルの層」を追加しているのです。その赤いペイントには、特定のラフネス（どれだけ光を散乱させるか）、特定のスペキュラリティ（どれだけツヤがあるか）、そして特定の屈折率があります。",[39,6974,6975],{},[261,6976,6977],{},"シェーダーとは、その光の相互作用をコンピューターがどうシミュレートするかを指示する一連の命令です。",[43,6979,6981,6987],{"className":6980},[20,46,1660],[48,6982],{"src":6983,"className":6984,"alt":53,"loading":54,"width":5900,"height":6985,"srcSet":6986,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/01/data-src-image-296bf085-924e-40f9-92fc-346c5dc31de0.png",[52],1067,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/01/data-src-image-296bf085-924e-40f9-92fc-346c5dc31de0.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/01/data-src-image-296bf085-924e-40f9-92fc-346c5dc31de0.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/01/data-src-image-296bf085-924e-40f9-92fc-346c5dc31de0.png 1600w",[1666,6988,6989],{},[2572,6990,6991],{},[802,6992,6994],{"className":6993,"style":1673},[2577],"出典: TurboSquid",[39,6996,6997],{},"デジタルの太陽からの光の1本のレイが、あなたのオブジェクト表面に当たると、シェーダーが介入して次のように問いかけます。",[82,6999,7000,7003,7006,7009],{},[85,7001,7002],{},"「跳ね返りますか？」（反射）",[85,7004,7005],{},"「通り抜けますか？」（透過／ガラス）",[85,7007,7008],{},"「中に閉じ込められますか？」（吸収）",[85,7010,7011],{},"「皮膚の下へ散っていきますか？」（サブサーフェス・スキャタリング）",[39,7013,7014,7015],{},"濡れた石畳の通りをモデリングしているなら、単純な画像テクスチャだけで平坦な写真のように見せられます。しかしシェーダーは、ひび割れの中の水が完璧に反射して滑らかである一方、石はラフで鈍いことをレンダラーに伝えます。光は、濡れている部分と乾いている部分で別々に跳ね返るよう指示されます。",[231,7016,7018,7019],{"href":7017},"https://blog.cg-wire.com/how-light-shapes-emotion-in-animation/"," ",[6214,7020,7021],{},"光は現実の形を変える。",[63,7023],{},[66,7025,7027],{"id":7026},"why-you-must-master-shader-nodes",[261,7028,7029],{},"シェーダーノードを習得しなければならない理由",[39,7031,7032],{},"「じゃあ、ただテクスチャをダウンロードすればいいのでは？」と聞きたくなるかもしれません。",[39,7034,7035],{},"フォトスキャンは素晴らしいですが、プロシージャルシェーディングには、静止画像ではかなわない3つの“超能力”があります。",[39,7037,7038],{},"画像テクスチャ（JPGやPNG）を使う場合、あなたはピクセルに制限されます。壁に近づきすぎてズームすると、ぼやけます。",[39,7040,7041,7042,7045],{},"シェーダーは数学を使います。",[261,7043,7044],{},"数学には解像度の上限がありません。","金属のプロシージャルな傷にズームして、微細な溝が見えるところまで行っても、輪郭はシャープなままです。あなたが誇りを持てるモデルで、きれいなトポロジーや良いプロポーションがあっても、シェーダーなしだと平面的に見えてしまいます。",[39,7047,7048,7049,7052,7053,7056,7057,7060],{},"Blenderのシェーダーノードは、",[261,7050,7051],{},"一貫したやり方でテクスチャを簡単に微調整できる","ようにします。たとえば宇宙船をテクスチャリングしているとしましょう。テクスチャマップで船体に錆を描きます。アートディレクターがやって来て「いいね。でも船が古すぎる。錆を50%減らして。」と言います。もし手で描いていたなら、最初からやり直すか、何時間も消す作業に追われます。シェーダーノードなら、あなたが作った「Rust Amount（錆の量）」の値を見つけて、",[5648,7054,7055],{},"1.0","から",[5648,7058,7059],{},"0.5","へスライドさせるだけです。以上です。",[39,7062,7063,7064,7067],{},"静止テクスチャは固まって見えますが、",[261,7065,7066],{},"シェーダーはアニメーションもできます","。フレーム番号に応じて岩の上に苔が時間とともに生えていくようにセットアップできますし、あるいは当たるほどシールドが明るく発光するようにもできます。シェーダーは、マテリアルが環境に反応することを可能にします。",[39,7069,7070],{},"これらすべての理由から、シェーダーノードを“使いこなせるようになること”は、厳しい納期のある制作現場で働くプロのアーティストにとって、非常に大きな解放（アンロック）になります。",[63,7072],{},[66,7074,7076],{"id":7075},"the-different-types-of-shader-nodes",[261,7077,7078],{},"シェーダーノードの種類",[39,7080,7081,7082,7085],{},"Blenderのノードシステムはフローチャートのように動きます。ノードを追加するには",[5648,7083,7084],{},"Add（追加）","をクリックし、それらを接続します。データは左から右へ流れます。各機能をどう活かすかを理解するには、用意されているさまざまなノードの種類を理解する必要があります。",[43,7087,7089],{"className":7088},[20,46],[48,7090],{"src":7091,"className":7092,"alt":53,"loading":54,"width":5900,"height":5901,"srcSet":7093,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/01/data-src-image-2573386d-adc9-4979-a848-89d1cae3645e.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/01/data-src-image-2573386d-adc9-4979-a848-89d1cae3645e.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/01/data-src-image-2573386d-adc9-4979-a848-89d1cae3645e.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/01/data-src-image-2573386d-adc9-4979-a848-89d1cae3645e.png 1600w",[933,7095,7097],{"id":7096},"_1-input-nodes",[261,7098,7099],{},"1. 入力ノード",[39,7101,7102],{},"入力ノードは、シーン・オブジェクト・ジオメトリ、またはユーザー定義の値から、シェーダーネットワークへデータを供給します。",[82,7104,7105,7111,7117,7123,7129,7135],{},[85,7106,7107,7110],{},[261,7108,7109],{},"Texture Coordinate（テクスチャ座標）"," - UV、オブジェクト、生成、カメラ座標を提供 + UV出力を使って、UV展開モデルに画像テクスチャを正しくマッピングする",[85,7112,7113,7116],{},[261,7114,7115],{},"Geometry（ジオメトリ）"," - 法線や“とがり具合”などの幾何情報を出力 + “Pointiness（とがり）”を使って窪みに汚れが溜まるようにする",[85,7118,7119,7122],{},[261,7120,7121],{},"Fresnel（フレネル）"," - 視線角に基づく反射率を計算 + ガラスのエッジでより強い反射を作る",[85,7124,7125,7128],{},[261,7126,7127],{},"Object Info（オブジェクト情報）"," - ランダム値やオブジェクトカラーなど、オブジェクトごとのデータを提供 + Random出力を使って各オブジェクトを少しずつ違う色にする",[85,7130,7131,7134],{},[261,7132,7133],{},"Value（値）"," - 定数の数値を出力 + 単一のスライダーでラフネスを制御する",[85,7136,7137,7140],{},[261,7138,7139],{},"Color（カラー）"," - 定数の色を出力 + スタイル化されたマテリアルのベースカラーとして使う",[933,7142,7144],{"id":7143},"_2-output-nodes",[261,7145,7146],{},"2. 出力ノード",[39,7148,7149],{},"出力ノードはシェーダーの最終結果を定義し、ノードネットワークをBlenderのレンダリングシステムへ接続します。",[82,7151,7152],{},[85,7153,7154,7157],{},[261,7155,7156],{},"Material Output（マテリアル出力）"," - 最終的な表面、ボリューム、ディスプレースメント情報を出力 + Surface入力にPrincipled BSDFを接続する",[933,7159,7161],{"id":7160},"_3-shader-nodes",[261,7162,7163],{},"3. シェーダーノード",[39,7165,7166],{},"シェーダーノードは、反射・屈折・発光など、光がサーフェスとどう相互作用するかを定義します。",[82,7168,7169,7175,7181,7187,7193,7199],{},[85,7170,7171,7174],{},[261,7172,7173],{},"Principled BSDF（プリンシプルBSDF）"," - 物理ベースのオールインワン表面シェーダー + 現実的な金属、プラスチック、肌などのマテリアルを作る",[85,7176,7177,7180],{},[261,7178,7179],{},"Diffuse BSDF（ディフューズBSDF）"," - マットで反射しないサーフェスを生成 + チョーク、粘土、研磨していない石に使う",[85,7182,7183,7186],{},[261,7184,7185],{},"Glossy BSDF（グロッシーBSDF）"," - 鏡のような反射を生成 + 磨かれた金属や鏡に使う",[85,7188,7189,7192],{},[261,7190,7191],{},"Glass BSDF（ガラスBSDF）"," - 屈折と反射を組み合わせる + 窓やガラスボトルに使う",[85,7194,7195,7198],{},[261,7196,7197],{},"Emission（エミッション）"," - サーフェスから光を放出 + スクリーン、LED、ネオンサインに使う",[85,7200,7201,7204],{},[261,7202,7203],{},"Mix Shader（ミックスシェーダー）"," - 2つのシェーダー出力をブレンド + 摩耗した金属にはディフューズとグロッシーを混ぜる",[933,7206,7208],{"id":7207},"_4-displacement-nodes",[261,7209,7210],{},"4. ディスプレースメントノード",[39,7212,7213],{},"ディスプレースメントノードは、ジオメトリまたはシェーディングの法線を変更して、サーフェスのディテールを変えます。",[82,7215,7216,7222,7228],{},[85,7217,7218,7221],{},[261,7219,7220],{},"Displacement（ディスプレースメント）"," - 本当のジオメトリのディスプレースメントを実行 + 高さマップを使ってレンガ壁に実在の奥行きを作る（Cycles）",[85,7223,7224,7227],{},[261,7225,7226],{},"Bump（バンプ）"," - 法線の微調整で表面ディテールをシミュレート + ジオメトリを増やさずに微細な傷を追加する",[85,7229,7230,7233],{},[261,7231,7232],{},"Normal Map（法線マップ）"," - 法線テクスチャを使える法線データへ変換 + ゲームアセットからベイクした法線マップを適用する",[933,7235,7237],{"id":7236},"_5-color-nodes",[261,7238,7239],{},"5. カラーノード",[39,7241,7242],{},"カラーノードは、シェーダーネットワーク内で色情報を調整したり、ブレンドしたり、変換したりします。",[82,7244,7245,7251,7257,7263],{},[85,7246,7247,7250],{},[261,7248,7249],{},"Mix Color（ミックスカラー）"," - 2つの色またはテクスチャをブレンド + 清いベースカラーに汚れテクスチャを混ぜる",[85,7252,7253,7256],{},[261,7254,7255],{},"RGB Curves（RGBカーブ）"," - コントラストとカラーバランスを調整 + 画像を再編集せずにテクスチャのコントラストを高める",[85,7258,7259,7262],{},[261,7260,7261],{},"Hue/Saturation（色相/彩度）"," - 色相、彩度、値を変更 + テクスチャを塗り直さずにマテリアルを青く色付けする",[85,7264,7265,7268],{},[261,7266,7267],{},"Invert（反転）"," - 色の値を逆にする + ラフネスマップを反転してツヤ感のマップを作る",[933,7270,7272],{"id":7271},"_6-texture-nodes",[261,7273,7274],{},"6. テクスチャノード",[39,7276,7277],{},"テクスチャノードは、マテリアル用の画像またはプロシージャルなテクスチャを生成／読み込みします。",[82,7279,7280,7286,7292,7298],{},[85,7281,7282,7285],{},[261,7283,7284],{},"Image Texture（画像テクスチャ）"," - 外部の画像ファイルを読み込む + PBRマテリアルのためにアルベドマップを使う",[85,7287,7288,7291],{},[261,7289,7290],{},"Noise Texture（ノイズテクスチャ）"," - 滑らかなプロシージャルノイズを生成 + プラスチックに微妙なラフネスの変化を加える",[85,7293,7294,7297],{},[261,7295,7296],{},"Voronoi Texture（ボロノイテクスチャ）"," - セル状のパターンを生成 + ひび割れ、スケール、石タイルを作る",[85,7299,7300,7303],{},[261,7301,7302],{},"Gradient Texture（グラデーションテクスチャ）"," - 滑らかなグラデーションを出力 + マテリアルのブレンド用マスクとして使う",[933,7305,7307],{"id":7306},"_7-utility-nodes",[261,7308,7309],{},"7. ユーティリティノード",[39,7311,7312],{},"ユーティリティノードは、数学的演算やデータ変換を行います。",[82,7314,7315,7321,7327,7333],{},[85,7316,7317,7320],{},[261,7318,7319],{},"Mapping（マッピング）"," - テクスチャ座標を変換 + テクスチャパターンをスケール／回転する",[85,7322,7323,7326],{},[261,7324,7325],{},"Math（数学）"," - 数値演算を実行 + 極端になりすぎないようラフネス値をクランプする",[85,7328,7329,7332],{},[261,7330,7331],{},"Vector Math（ベクターマス）"," - ベクターに基づく計算を実行 + 法線や方向ベクターを変更する",[85,7334,7335,7338],{},[261,7336,7337],{},"Clamp（クランプ）"," - 指定した範囲に値を制限 + 過剰に明るいエミッション値を防ぐ",[933,7340,7342],{"id":7341},"_8-group-nodes",[261,7343,7344],{},"8. グループノード",[39,7346,7347],{},"グループノードは複数のノードを、再利用できる整理されたコンポーネントとしてまとめます。",[82,7349,7350],{},[85,7351,7352,7355],{},[261,7353,7354],{},"Node Group（ノードグループ）"," - 複雑なノードセットアップをカプセル化 + 複数のアセットで使い回せる「Rust Shader（錆シェーダー）」を作る",[933,7357,7359],{"id":7358},"_9-layout-nodes",[261,7360,7361],{},"9. レイアウトノード",[39,7363,7364],{},"レイアウトノードはノードグラフを見やすく整理するためのもので、レンダリング結果には影響しません。",[82,7366,7367,7373],{},[85,7368,7369,7372],{},[261,7370,7371],{},"Frame（フレーム）"," - 関連するノードを見た目でグループ化 + テクスチャ関連ノードをまとめて囲う",[85,7374,7375,7378],{},[261,7376,7377],{},"Reroute（リルート）"," - 読みやすさのためにノード接続を迂回させる + 重なり合ったノードのノード（見た目の配線）を整理する",[63,7380],{},[66,7382,7384],{"id":7383},"the-next-level-scripting-your-shaders",[261,7385,7386],{},"次のレベル：シェーダーをスクリプトで扱う",[39,7388,7389,7390],{},"手でノードをつなげるのに慣れてくると、木、プラスチック、ゴールド、あらゆる種類のマテリアルを作れます。ですが、",[261,7391,7392],{},"500個ものユニークなオブジェクトがあるシーンで、それぞれに“少しの調整”を加えつつ、摩耗した金属マテリアルのランダムなバリエーションを生成する必要があるとしたら？",[39,7394,7395],{},"そこで重要になるのがPythonスクリプトです。プロジェクト内のすべてのマテリアルが、同じノード構造に従うことを保証できます。「このマテリアルを赤にして、ただしオブジェクトごとにランダムな数値で色相を少しずつ変える」といったスクリプトを書くことができます。",[39,7397,7398],{},"さっそく手を動かしましょう。このガイドでは、新しいマテリアルを作り、Principled BSDFを追加し、色を制御するためのノイズテクスチャを生成して、それらを一つにつなげるPythonスクリプトを書きます。",[17,7400,7402,7405],{"className":7401},[20,21,5589],[17,7403,3078],{"className":7404},[26],[17,7406,7408,7413,7415,7417,7418,7420,3148,7422],{"className":7407},[31],[2765,7409,7410],{},[261,7411,7412],{"style":1673},"動くサンプルを探していますか？",[2122,7414],{},[2122,7416],{},"このガイドで紹介しているサンプル統合の完全なソースコードは、GitHubで確認できます：",[2122,7419],{},[2122,7421],{},[231,7423,7425],{"href":7424},"https://github.com/cgwire/blog-tutorials/tree/main/blender-shaders?ref=blog.cg-wire.com","https://github.com/cgwire/blog-tutorials/tree/main/blender-shaders",[39,7427,7428,7429,7432],{},"Blenderで",[802,7430,7431],{},"Scripting","タブを開き、新しいテキストブロックを作成して、手順に沿って進めてください。",[39,7434,7435],{},"まずはライブラリをインポートして、Blenderに新しいマテリアルを作りたいことを伝える必要があります。",[5701,7437,7438,7452],{},[5648,7439,7442,7443,7446,7449],{"className":7440},[7441],"language-python","import random\n",[39,7444,7445],{},"import bpy",[39,7447,7448],{},"def create_procedural_material(mat_name):\n    mat = bpy.data.materials.new(name=mat_name)",[39,7450,7451],{},"    mat.use_nodes = True\n    nodes = mat.node_tree.nodes\n    links = mat.node_tree.links",[39,7453,7454],{},[5648,7455,7457],{"className":7456},[7441],"    nodes.clear()",[39,7459,7460],{},"次に、ノードを追加します。「Add」メニューからアイテムを引っ張り出すのと同じだと思ってください。プログラムで：",[5701,7462,7463,7470],{},[5648,7464,7466,7467],{"className":7465},[7441],"    node_output = nodes.new(type='ShaderNodeOutputMaterial')\n    node_output.location = (400, 0)",[39,7468,7469],{},"    node_principled = nodes.new(type='ShaderNodeBsdfPrincipled')\n    node_principled.location = (0, 0)",[39,7471,7472],{},[5648,7473,7475,7476,7479,7480,7483],{"className":7474},[7441],"    node_principled.inputs",[1671,7477,7478],{},"'Roughness'",".default_value = 0.2\n    node_principled.inputs",[1671,7481,7482],{},"'Metallic'",".default_value = 1.0",[39,7485,7486],{},"では、面白くしていきます。ノイズテクスチャとColorRamp（カラ―ランプ）を追加して、ランダムな色のパターンを生成します。",[5701,7488,7489,7510],{},[5648,7490,7492,7493,7496,7497,7500,7501,7504],{"className":7491},[7441],"node_noise = nodes.new(type='ShaderNodeTexNoise')\n    node_noise.location = (-600, 0)\n    node_noise.inputs",[1671,7494,7495],{},"'Scale'",".default_value = 15.0\n    node_noise.inputs",[1671,7498,7499],{},"'Detail'",".default_value = 10.0",[39,7502,7503],{},"    node_ramp = nodes.new(type='ShaderNodeValToRGB')\n    node_ramp.location = (-300, 0)",[39,7505,7506,7507,7509],{},"    node_ramp.color_ramp.elements",[1671,7508,726],{},".color = (0.1, 0.1, 0.1, 1)",[39,7511,7512],{},[5648,7513,7515,7516,7519],{"className":7514},[7441],"    rand_r = random.random()\n    rand_g = random.random()\n    rand_b = random.random()\n    node_ramp.color_ramp.elements",[1671,7517,7518],{},"1",".color = (rand_r, rand_g, rand_b, 1)",[39,7521,7522],{},[2122,7523],{},[39,7525,7526],{},"最後に、それらを配線して、この新しいシェーダーを現在のコンテキスト（デフォルトのキューブ）に適用します。",[5701,7528,7529,7566],{},[5648,7530,7532,7533,7536,7537,7539,7540,7550,7560,7563],{"className":7531},[7441],"    links.new(node_noise.outputs",[1671,7534,7535],{},"'Fac'",", node_ramp.inputs",[1671,7538,7535],{},")",[39,7541,7542,7543,7546,7547,7539],{},"    links.new(node_ramp.outputs",[1671,7544,7545],{},"'Color'",", node_principled.inputs",[1671,7548,7549],{},"'Base Color'",[39,7551,7552,7553,7556,7557,7539],{},"    links.new(node_principled.outputs",[1671,7554,7555],{},"'BSDF'",", node_output.inputs",[1671,7558,7559],{},"'Surface'",[39,7561,7562],{},"    return mat",[39,7564,7565],{},"my_new_mat = create_procedural_material(\"SciFi_Metal_Random\")",[39,7567,7568],{},[5648,7569,7571],{"className":7570},[7441],"bpy.context.object.data.materials.append(my_new_mat)",[39,7573,7574],{},"このコードをテキストエディタにコピーして、「Run Script（スクリプトを実行）」を押します（再生ボタン）。アクティブなオブジェクトを見てください。ランダムな色のノイズパターンを持つメタリックな表面になっています。もう一度実行して（関数呼び出し内の名前を変更します）、別の色が得られます。",[43,7576,7578],{"className":7577},[20,46],[48,7579],{"src":7580,"className":7581,"alt":53,"loading":54,"width":7582,"height":7583,"srcSet":7584,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/01/data-src-image-99dc12fe-068b-40f7-9f10-ef0c5e000ba0.png",[52],1268,827,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/01/data-src-image-99dc12fe-068b-40f7-9f10-ef0c5e000ba0.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/01/data-src-image-99dc12fe-068b-40f7-9f10-ef0c5e000ba0.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/01/data-src-image-99dc12fe-068b-40f7-9f10-ef0c5e000ba0.png 1268w",[39,7586,7587,7588],{},"おめでとうございます、",[261,7589,7590],{},"あなたはプロシージャルなマテリアルジェネレーターを作りました！",[39,7592,7593],{},[231,7594,7018,7596],{"href":7424,"rel":7595},[321],[6214,7597,7598],{},"対応するGithubリポジトリ",[39,7600,7601],{},"コードをいじってみるために、ぜひ見てください！",[63,7603],{},[66,7605,7606],{"id":4755},[261,7607,7608],{},"まとめ",[39,7610,7611,7612,7615],{},"シェーダーは、ただ線の中に色を塗る以上のものです。シェーダーは、あなたのデジタル世界の「皮膚」です。",[261,7613,7614],{},"シェーダーは、そのオブジェクトの物語を伝えます","。どれくらい古いのか、どこを通ってきたのか、そして何でできているのか。",[39,7617,7618,7619,7622,7623,7626],{},"シェーダーノードのロジックを理解すれば、",[261,7620,7621],{},"フォトリアルな肌から、スタイル化したカートゥーンの炎まで","何でも作れます。さらにPythonスクリプトへ一歩踏み出せば、制作を",[261,7624,7625],{},"より速く、より賢く","進める力が手に入ります。面倒な部分を自動化して、アートに集中できるようになるのです。",[39,7628,7629,7630,7633,7634,7640],{},"ただし、これはパズルのほんの一部です。表面は変えられます。でも形はどうでしょう？旅の次の論理的なステップは",[802,7631,7632],{},"ジオメトリノード","です。シェーダーノードが色や光をプロシージャルに制御するのと同じように、ジオメトリノードはメッシュや構造をプログラム的に制御します。",[231,7635,7018,7637],{"href":7636},"https://blog.cg-wire.com/blender-scripting-geometry-nodes-2/",[6214,7638,7639],{},"こちらの専用記事をご覧ください","。コードからシーン全体を作る方法を学べます！",[17,7642,7644,7647],{"className":7643},[20,21,22],[17,7645,312],{"className":7646},[26],[17,7648,7650,7651,7654],{"className":7649},[31],"アニメーション制作のプロセスをもっと学ぶには",[231,7652,5206],{"href":3404,"rel":7653},[321],"！私たちはベストプラクティスを共有する1,000人以上の専門家とつながっており、ときどき対面イベントも企画しています。ぜひ歓迎します！😊",[17,7656,7658],{"className":7657},[20,327,328],[231,7659,3413],{"href":3404,"className":7660},[332,333],{"title":53,"searchDepth":336,"depth":336,"links":7662},[7663,7664,7665,7676,7677],{"id":6957,"depth":336,"text":6960},{"id":7026,"depth":336,"text":7029},{"id":7075,"depth":336,"text":7078,"children":7666},[7667,7668,7669,7670,7671,7672,7673,7674,7675],{"id":7096,"depth":1088,"text":7099},{"id":7143,"depth":1088,"text":7146},{"id":7160,"depth":1088,"text":7163},{"id":7207,"depth":1088,"text":7210},{"id":7236,"depth":1088,"text":7239},{"id":7271,"depth":1088,"text":7274},{"id":7306,"depth":1088,"text":7309},{"id":7341,"depth":1088,"text":7344},{"id":7358,"depth":1088,"text":7361},{"id":7383,"depth":336,"text":7386},{"id":4755,"depth":336,"text":7608},"https://images.unsplash.com/photo-1664526936810-ec0856d31b92?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8c2VhcmNofDd8fHNoYWRlciUyMG5vZGVzfGVufDB8fHx8MTc2NzYwMzU4M3ww&ixlib=rb-4.1.0&q=80&w=2000",{"updated_at":7680,"featured_at":350,"visibility":351},"2026-03-26T09:56:11.000+01:00","/blog-i18n/ja/blender-shaders-explained","2026-01-05T10:35:18.000+01:00",{"title":6919,"description":53},"blenderシェーダー解説","blog-i18n/ja/blender-shaders-explained/index",[7687,7688],{"id":6909,"name":6910,"slug":6911,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":6912},{"id":6914,"name":676,"slug":677,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":6915},"FtHcD4w3SEuheqh1Oo3QbPOjS9n8gUq_1dILJ0IeJVw",{"id":7691,"title":7692,"authors":7693,"body":7695,"description":53,"extension":346,"feature_image":8182,"html":11,"meta":8183,"navigation":352,"path":8185,"published_at":8186,"seo":8187,"slug":8188,"stem":8189,"tags":8190,"__hash__":8193,"updated_at":8184,"featured_at":350,"visibility":351},"blog/blog-i18n/ja/blender-programmatic-rendering/index.md","Python（2026）でBlenderにおけるプログラムによる動画レンダリング",[7694],{"id":8,"name":9,"slug":10,"profile_image":11,"cover_image":11,"bio":11,"website":11,"location":11,"facebook":11,"twitter":11,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":4860},{"type":14,"value":7696,"toc":8173},[7697,7708,7711,7714,7717,7720,7727,7730,7732,7738,7741,7785,7788,7791,7817,7820,7847,7849,7855,7858,7864,7876,7887,7889,7895,7898,7904,7911,7914,7920,7923,7932,7934,7940,7950,7953,7959,7962,7968,7971,7979,7981,7987,7996,8007,8010,8016,8019,8025,8028,8034,8037,8043,8046,8052,8055,8061,8063,8069,8076,8102,8105,8112,8115,8125,8140,8142,8146,8149,8152,8167],[17,7698,7700,7704],{"className":7699},[20,21,22],[17,7701,7703],{"className":7702},[26],"🧠",[17,7705,7707],{"className":7706},[31],"数行のPythonだけで、Blenderをプログラム可能なレンダリングエンジンに変えます。",[39,7709,7710],{},"3DアーティストとしてBlenderを学ぶことは、通常はそのアドオン・エコシステムについて学ぶことを意味します。リグ付けのように何時間もかかってしまう作業も、Rigifyのようなアドオンによって数秒に短縮できます。同じことはほとんどのワークフローでも言えます。私たちはしばしば、同じような繰り返しの疑問を抱きます。「Blenderはこれを自動でできるのだろうか？」",[39,7712,7713],{},"答えは「はい」です。ポイントはプログラミング言語のPythonです。",[39,7715,7716],{},"Blenderには強力な内蔵スクリプトエンジンがあり、数行のコードでオブジェクトを作成し、カメラを配置し、さらにはフルレンダリングをトリガーできます。",[39,7718,7719],{},"自分でアドオンを作れるなら、アドオンにお金を払う必要はありません。そしてアドオンの本質は、カスタムのBlenderユーザーインターフェースで包まれた単なるスクリプトです。",[39,7721,7722,7723,7726],{},"Blenderでスクリプトを書いたことがない場合、",[5648,7724,7725],{},"bpy","モジュールを見つける体験は、すでに知っているはずのツールの中にある「秘密の扉を開く」ようなものです。すると、突然インターフェースのあらゆる部分がプログラム可能になります。もはやボタンをクリックしているだけではなく、反復可能な仕組みを作るための指示を出しているのです。",[39,7728,7729],{},"自動化できる最も重要なワークフローの1つがレンダリングです。パイプラインを速くするだけでなく、レンダリング設定を一貫していて予測しやすい状態に保つのにも役立ちます。このチュートリアルでは、3Dテキストを自動でアニメーションさせ、フルHDの動画に変換するための基本的なプログラムによるレンダリングシステムを実装します。ゼロから始めて、BlenderでPythonを実行する方法、そしてシーンを制御する方法を探っていきます。最後には、一般的なアニメーション作業を自動化する方法の全体像をしっかり掴めるはずです。",[63,7731],{},[66,7733,7735],{"id":7734},"use-cases",[261,7736,7737],{},"ユースケース",[39,7739,7740],{},"プログラムによるレンダリングは、従来の手作業によるシーン構築をはるかに超えた、多様で強力なワークフローを開放します：",[82,7742,7743,7749,7755,7761,7767,7773,7779],{},[85,7744,7745,7748],{},[261,7746,7747],{},"データ駆動モーショングラフィックス"," — アニメーション化されたチャート、リアルタイムのAPI駆動による放送用グラフィックス、または自動生成されるソーシャル動画。",[85,7750,7751,7754],{},[261,7752,7753],{},"生成アート"," — コードから進化していくプロシージャルなパターン、ノイズフィールド、粒子実験、アルゴリズムによるイラスト。",[85,7756,7757,7760],{},[261,7758,7759],{},"バッチレンダリングされたバリエーション"," — パーソナライズされた広告、製品の色違い、アスペクト比の自動トリミング、大量のソーシャル素材生成。",[85,7762,7763,7766],{},[261,7764,7765],{},"プロシージャルな3Dコンテンツ"," — 地形ビルダー、パラメトリックモデリング、植生／ワールドの人口、3Dアセットのバリエーションを自動で生成。",[85,7768,7769,7772],{},[261,7770,7771],{},"生成UI & デザインシステム"," — ダイナミックなSVG、テンプレート化されたバナー、ブランドに一貫したグラフィックスを必要なときにレンダリング。",[85,7774,7775,7778],{},[261,7776,7777],{},"VFXおよびアニメーションのスクリプト化"," — 自動化されたリグ制御、群衆システム、粒子の増殖、反復可能なシミュレーション設定。",[85,7780,7781,7784],{},[261,7782,7783],{},"シミュレーションの可視化"," — 流体や煙のシミュレーション、交通や群衆のダイナミクス、科学的／物理ベースのレンダリング。",[39,7786,7787],{},"多くの3Dモデリング作業は反復的で時間がかかります。これらを自動化された、スクリプト駆動のパイプラインに統合することで、Pythonが面倒な部分を裏で処理し、アーティストは創造的なワールド構築により集中できます。",[39,7789,7790],{},"いずれの場合でも、開発ワークフローはほぼ同じです：",[1053,7792,7793,7799,7805,7811],{},[85,7794,7795,7798],{},[261,7796,7797],{},"セットアップ"," - 必要な入力データを定義し、シーンをクリーンアップ",[85,7800,7801,7804],{},[261,7802,7803],{},"ジオメトリ生成"," - タスクに必要な実際のアセットをモデリング",[85,7806,7807,7810],{},[261,7808,7809],{},"アニメーション"," - トランスフォームとそれに関連するキーフレームを定義",[85,7812,7813,7816],{},[261,7814,7815],{},"出力"," - 望む成果物（3Dモデル、動画、画像シーケンスなど）",[39,7818,7819],{},"そして、これがまさに私たちが3Dテキスト動画レンダリングの例で辿る道です。",[17,7821,7823,7826],{"className":7822},[20,21,5589],[17,7824,3078],{"className":7825},[26],[17,7827,7829,7834,7836,7838,7839,7841,3148,7843],{"className":7828},[31],[2765,7830,7831],{},[261,7832,7833],{"style":1673},"動く実例を探していますか？",[2122,7835],{},[2122,7837],{},"このガイドで紹介している例の統合に関する完全なソースコードは、GitHubで確認できます：",[2122,7840],{},[2122,7842],{},[231,7844,7846],{"href":7845},"https://github.com/cgwire/blender-programmatic-rendering?ref=blog.cg-wire.com","https://github.com/cgwire/blender-programmatic-rendering",[63,7848],{},[66,7850,7852],{"id":7851},"_1-scene-setup",[261,7853,7854],{},"1. シーン設定",[39,7856,7857],{},"シーンを生成する前に、まずはきれいなスタート地点が必要です。Blenderを開くと、通常はキューブ、カメラ、ライトを含むデフォルトのシーンが読み込まれます。このチュートリアルでは後者2つだけを使います。",[39,7859,7860,7861,7863],{},"Blenderをプログラム的に使う最初のステップは、",[5648,7862,7725],{},"モジュールをインポートすることです。これによりPythonからBlenderのデータ、ツール、レンダリングパイプラインへ直接フルアクセスできます：",[5701,7865,7866,7870],{},[5648,7867,7869],{"className":7868},[7441],"import bpy\n",[39,7871,7872],{},[5648,7873,7875],{"className":7874},[7441],"bpy.data.objects.remove(bpy.data.objects.get(\"Cube\"), do_unlink=True)",[39,7877,7878,7879,7882,7883,7886],{},"ここではデフォルトの",[261,7880,7881],{},"Cube","オブジェクトを削除します。",[5648,7884,7885],{},"do_unlink=True","というパラメータにより、Blenderはオブジェクトを削除するだけでなく、それを参照している可能性のあるどのシーンからもアンリンクします。",[63,7888],{},[66,7890,7892],{"id":7891},"_2-manipulating-3d-text",[261,7893,7894],{},"2. 3Dテキストの操作",[39,7896,7897],{},"次に、シーンへ3Dテキストオブジェクトを追加し、これを操作し、最終的にプログラムによってレンダリングする中核要素にします。",[5701,7899,7900],{},[5648,7901,7903],{"className":7902},[7441],"bpy.ops.object.text_add(location=(0, 0, 0))\ntext_obj = bpy.context.object\ntext_obj.name = \"CaptionText\"\ntext_obj.data.body = \"Hello world!\"",[39,7905,7906,7907,7910],{},"このコードスニペットは、ワールド原点に新しいテキストオブジェクトを作成し、読みやすい名前を割り当て、表示テキストを",[5648,7908,7909],{},"\"Hello world!\"","に設定します。",[39,7912,7913],{},"テキストにシーン内での存在感を持たせるために、ジオメトリを調整できます。サイズを大きくし、押し出し（エクストルード）を追加することで完全な3Dテキストになり、さらに両軸で中心揃えにしておくと、将来の変換やアニメーションが簡単になります：",[5701,7915,7916],{},[5648,7917,7919],{"className":7918},[7441],"text_obj.data.size = 0.6\ntext_obj.data.extrude = 0.05\ntext_obj.data.align_x = \"CENTER\"\ntext_obj.data.align_y = \"CENTER\"",[39,7921,7922],{},"これらの調整により、テキストはきれいに中央揃えされ、適切にスケールされ、さらなる処理の準備が整います。",[43,7924,7926],{"className":7925},[20,46],[48,7927],{"src":7928,"className":7929,"alt":53,"loading":54,"width":5900,"height":7930,"srcSet":7931,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/12/data-src-image-8cb519b5-e128-4bdd-9348-9aa0dfe2c36c.png",[52],901,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2025/12/data-src-image-8cb519b5-e128-4bdd-9348-9aa0dfe2c36c.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2025/12/data-src-image-8cb519b5-e128-4bdd-9348-9aa0dfe2c36c.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/12/data-src-image-8cb519b5-e128-4bdd-9348-9aa0dfe2c36c.png 1600w",[63,7933],{},[66,7935,7937],{"id":7936},"_3-adding-keyframes",[261,7938,7939],{},"3. キーフレームを追加する",[39,7941,7942,7943,7949],{},"次に、",[231,7944,7018,7946],{"href":7945},"https://blog.cg-wire.com/stepped-animation/",[6214,7947,7948],{},"キーフレームを挿入してテキスト位置のシンプルなアニメーションを作成","し、時間の経過に沿って動かします。",[39,7951,7952],{},"まず、タイムラインカーソルをフレーム1に移動し、テキストを開始位置に配置して、その位置をキーフレームとして記録します：",[5701,7954,7955],{},[5648,7956,7958],{"className":7957},[7441],"bpy.context.scene.frame_set(1)\ntext_obj.location = (-4.0, 0.0, 1.0)\ntext_obj.keyframe_insert(data_path=\"location\", frame=1)",[39,7960,7961],{},"次にフレーム40へ進め、X軸方向にテキストをシフトさせて、新しい位置を示すもう1つのキーフレームを挿入します：",[5701,7963,7964],{},[5648,7965,7967],{"className":7966},[7441],"bpy.context.scene.frame_set(40)\ntext_obj.location = (0.0, 0.0, 1.0)\ntext_obj.keyframe_insert(data_path=\"location\", frame=40)",[39,7969,7970],{},"これら2つのキーフレームが揃うと、Blenderは自動的にその間の移動を補間し、テキストがフレーム中央へ滑り込むような滑らかなアニメーションを作成します。",[43,7972,7974],{"className":7973},[20,46],[48,7975],{"src":7976,"className":7977,"alt":53,"loading":54,"width":5900,"height":7930,"srcSet":7978,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/12/data-src-image-c33d7b37-264c-4c9f-a1ea-e8f2e2a39ff2.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2025/12/data-src-image-c33d7b37-264c-4c9f-a1ea-e8f2e2a39ff2.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2025/12/data-src-image-c33d7b37-264c-4c9f-a1ea-e8f2e2a39ff2.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/12/data-src-image-c33d7b37-264c-4c9f-a1ea-e8f2e2a39ff2.png 1600w",[63,7980],{},[66,7982,7984],{"id":7983},"_4-video-rendering",[261,7985,7986],{},"4. 動画のレンダリング",[39,7988,7989,7990,7995],{},"残っているのは、",[231,7991,7018,7992],{"href":6458},[6214,7993,7994],{},"Blenderのレンダリング設定を構成","して、最終的な動画を出力するだけです。",[39,7997,7998,7999,8002,8003,8006],{},"まず、どのレンダリングエンジンを使うかを選びます：",[261,8000,8001],{},"Eevee"," か ",[261,8004,8005],{},"Cycles"," です。",[39,8008,8009],{},"Eeveeはリアルタイムのラスタライズエンジンなので非常に高速で、プレビューやスタイライズされたアニメーションに最適です。一方Cyclesは、物理ベースのパストレーサでより現実的なライティングを生成しますが、レンダリング時間がはるかに長くなります。素早い反復と多くの自動化ワークフローでは、Eeveeが一般により良い選択肢です：",[5701,8011,8012],{},[5648,8013,8015],{"className":8014},[7441],"bpy.context.scene.render.engine = \"BLENDER_EEVEE\"",[39,8017,8018],{},"次に、出力解像度を指定します：",[5701,8020,8021],{},[5648,8022,8024],{"className":8023},[7441],"bpy.context.scene.render.resolution_x = 1920\nbpy.context.scene.render.resolution_y = 1080",[39,8026,8027],{},"次にフレームレートとアニメーション範囲を設定します。ここでは24 fpsで60フレームのショットです：",[5701,8029,8030],{},[5648,8031,8033],{"className":8032},[7441],"bpy.context.scene.render.fps = 24\nbpy.context.scene.frame_start = 1\nbpy.context.scene.frame_end = 60",[39,8035,8036],{},"Blenderは、最終動画をどのようにエンコードするかも知る必要があります。レンダリング速度のため、H.264の動画エンコーディングを使ってMP4として書き出します：",[5701,8038,8039],{},[5648,8040,8042],{"className":8041},[7441],"bpy.context.scene.render.image_settings.file_format = \"FFMPEG\"\nbpy.context.scene.render.ffmpeg.format = \"MPEG4\"\nbpy.context.scene.render.ffmpeg.codec = \"H264\"",[39,8044,8045],{},"最後に、利便性のためカレントフォルダを使って出力ファイルの保存先を選びます：",[5701,8047,8048],{},[5648,8049,8051],{"className":8050},[7441],"bpy.context.scene.render.filepath = \"//render.mp4\"",[39,8053,8054],{},"すべてが設定できたら、次の1つのコマンドでレンダリング処理を開始できます：",[5701,8056,8057],{},[5648,8058,8060],{"className":8059},[7441],"bpy.ops.render.render(animation=True)",[63,8062],{},[66,8064,8066],{"id":8065},"_5-putting-it-all-together",[261,8067,8068],{},"5. まとめる",[39,8070,8071,8072,8075],{},"コードは完成しているので、あとはそれをPythonファイル",[5648,8073,8074],{},"render.py","に入れるだけです：",[5701,8077,8078,8097],{},[5648,8079,7445,8081,8083,8085,8087,8089,8091,8094],{"className":8080},[7441],[39,8082,7875],{},[39,8084,7903],{},[39,8086,7919],{},[39,8088,7958],{},[39,8090,7967],{},[39,8092,8093],{},"bpy.context.scene.render.engine = \"BLENDER_EEVEE\"\nbpy.context.scene.render.resolution_x = 1920\nbpy.context.scene.render.resolution_y = 1080\nbpy.context.scene.render.resolution_percentage = 100\nbpy.context.scene.render.fps = 24\nbpy.context.scene.frame_start = 1\nbpy.context.scene.frame_end = 60",[39,8095,8096],{},"bpy.context.scene.render.image_settings.file_format = \"FFMPEG\"\nbpy.context.scene.render.ffmpeg.format = \"MPEG4\"  # container\nbpy.context.scene.render.ffmpeg.codec = \"H264\"\nbpy.context.scene.render.ffmpeg.constant_rate_factor = \"HIGH\"\nbpy.context.scene.render.ffmpeg.gopsize = 12\nbpy.context.scene.render.ffmpeg.audio_codec = \"AAC\"\nbpy.context.scene.render.filepath = \"//render.mp4\"",[39,8098,8099],{},[5648,8100,8060],{"className":8101},[7441],[39,8103,8104],{},"レンダリングを開始するために、スクリプトを実行します：",[5701,8106,8107],{},[5648,8108,8111],{"className":8109},[8110],"language-bash","python3 render.py",[39,8113,8114],{},"レンダリングが完了したら、作業ディレクトリを確認してください。完全にプログラムで生成されたアニメーションが、これで視聴できる状態になっているはずです。",[43,8116,8118],{"className":8117},[20,46],[48,8119],{"src":8120,"className":8121,"alt":53,"loading":54,"width":8122,"height":8123,"srcSet":8124,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/12/data-src-image-2b287259-a96b-456b-b95e-375bf116e3a1.png",[52],1088,722,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2025/12/data-src-image-2b287259-a96b-456b-b95e-375bf116e3a1.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2025/12/data-src-image-2b287259-a96b-456b-b95e-375bf116e3a1.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/12/data-src-image-2b287259-a96b-456b-b95e-375bf116e3a1.png 1088w",[17,8126,8128,8131],{"className":8127},[20,21,5589],[17,8129,3087],{"className":8130},[26],[17,8132,8134,8135],{"className":8133},[31],"コードは、再現しやすいようにGithubのリポジトリで確認できます：",[231,8136,7018,8137],{"href":7845},[6214,8138,8139],{},"github.com/cgwire/blender-programmatic-rendering",[63,8141],{},[66,8143,8144],{"id":4755},[261,8145,4756],{},[39,8147,8148],{},"この手順解説では、Blenderの中に完全な自動化パイプラインを構築しました。クリーンなシーンを用意し、3Dテキストを作成・修正し、キーフレームでアニメーションさせ、スムーズな補間でシーケンスをレンダリングしたのです。必要な手作業は一切ありません。すべてPythonだけで処理されます！",[39,8150,8151],{},"Blender APIがどれほどの制御を提供してくれるかを見た今、これらのアイデアをさらに大きく広げられます。ワークフローを自動化し、データからグラフィックスを生成し、シーンを組み立てる内部ツールを作り、バリエーションをレンダリングし、あるいは1つのコマンドでまるごとアニメーションを作ることもできます... アニメーション制作チームをもっと生産的にするための道が尽きることはありません。",[17,8153,8155,8158],{"className":8154},[20,21,22],[17,8156,312],{"className":8157},[26],[17,8159,8161,8162,8166],{"className":8160},[31],"アニメーションのプロセスについてさらに学ぶには ",[231,8163,8165],{"href":3404,"rel":8164},[321],"Discordコミュニティへの参加を検討してください","！ベストプラクティスを共有する1,000人以上の専門家とつながれ、時には対面イベントも開催しています。ぜひあなたをお迎えできればうれしいです！ 😊",[17,8168,8170],{"className":8169},[20,327,328],[231,8171,3413],{"href":3404,"className":8172},[332,333],{"title":53,"searchDepth":336,"depth":336,"links":8174},[8175,8176,8177,8178,8179,8180,8181],{"id":7734,"depth":336,"text":7737},{"id":7851,"depth":336,"text":7854},{"id":7891,"depth":336,"text":7894},{"id":7936,"depth":336,"text":7939},{"id":7983,"depth":336,"text":7986},{"id":8065,"depth":336,"text":8068},{"id":4755,"depth":336,"text":4756},"https://images.unsplash.com/photo-1622547748225-3fc4abd2cca0?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8c2VhcmNofDJ8fHJlbmRlcnN8ZW58MHx8fHwxNzY2MzgyNjA1fDA&ixlib=rb-4.1.0&q=80&w=2000",{"updated_at":8184,"featured_at":350,"visibility":351},"2026-02-20T06:04:02.000+01:00","/blog-i18n/ja/blender-programmatic-rendering","2025-12-29T10:00:10.000+01:00",{"title":7692,"description":53},"blenderプログラマティックレンダリング","blog-i18n/ja/blender-programmatic-rendering/index",[8191,8192],{"id":6909,"name":6910,"slug":6911,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":6912},{"id":6914,"name":676,"slug":677,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":6915},"B6WOo-AjOva47rXQ6Jsq0SmlVolAQj_aYOUiOuA-pRU",{"id":8195,"title":8196,"authors":8197,"body":8199,"description":53,"extension":346,"feature_image":8895,"html":11,"meta":8896,"navigation":352,"path":8898,"published_at":8899,"seo":8900,"slug":8901,"stem":8902,"tags":8903,"__hash__":8906,"updated_at":8897,"featured_at":350,"visibility":351},"blog/blog-i18n/ja/blender-kitsu-versioning-addon/index.md","KitsuバージョニングアドオンでBlenderファイルのリビジョン管理を行う（2026）",[8198],{"id":8,"name":9,"slug":10,"profile_image":11,"cover_image":11,"bio":11,"website":11,"location":11,"facebook":11,"twitter":11,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":4860},{"type":14,"value":8200,"toc":8886},[8201,8212,8219,8222,8227,8230,8233,8236,8239,8242,8244,8250,8253,8256,8282,8285,8312,8314,8320,8329,8353,8363,8366,8369,8400,8410,8413,8416,8419,8421,8427,8434,8455,8464,8471,8474,8477,8495,8498,8501,8516,8523,8539,8542,8585,8588,8594,8597,8599,8605,8608,8615,8633,8636,8639,8672,8674,8680,8687,8690,8693,8710,8713,8716,8741,8744,8746,8752,8760,8777,8807,8810,8832,8835,8845,8847,8851,8854,8857,8866,8880],[17,8202,8204,8208],{"className":8203},[20,21,22],[17,8205,8207],{"className":8206},[26],"🧱",[17,8209,8211],{"className":8210},[31],"混乱したファイル命名を、Blenderリビジョンの単一の真実の情報源で置き換えましょう。",[39,8213,8214,8215,8218],{},"すべてのプロジェクトは、良い意図から始まります。きれいな",[5648,8216,8217],{},"model.blend","、整理されたフォルダ、そして「今回はちゃんと整頓しておこう」という約束からスタートします。",[39,8220,8221],{},"しかし締切が近づくにつれ、制作に静かに忍び寄るエントロピーが現実になります。やがてプロジェクトのディレクトリは、パニック気味の直前編集が積み重なった、考古学的な発掘現場のように見え始めます：",[5701,8223,8224],{},[5648,8225,8226],{},"model.blend\nmodel_v2.blend\nmodel_v2b.blend\nmodel_final.blend\nmodel_final_really_final.blend\nmodel_FINAL_v3.blend",[39,8228,8229],{},"お分かりの通りです。誰かが急な変更を必要とし、別のアーティストが「念のため」でバージョンを枝分かれさせます。そうして、いったいどのファイルが「本物」なのか、誰も確信を持てなくなっていきます。チャットのコメントはファイル名と矛盾し、古いバージョンからショットがレンダーされ、そしてスーパーバイザーは深くため息をつきます。",[39,8231,8232],{},"アニメーションスタジオでは、このような小さなカオスが積み重なります。そこで必要になるのが、きちんとした真実の情報源です。",[39,8234,8235],{},"多くのチームでは、その情報源がKitsuです。そしてBlenderアーティストにとって不足しているのは、ファイルのバージョンが管理され、追跡でき、プロジェクトの制作データと確実に揃う状態を保つ自動化されたブリッジです。",[39,8237,8238],{},"そこで方針を決めます。BlenderがKitsuと連携し、パイプラインがついに「味方してくれている」感覚になるようなバージョニングシステムを作るのです。",[39,8240,8241],{},"このチュートリアルでは、Blender上から直接ファイルのリビジョンを管理するアドオンを作成します。BlenderをKitsuプロジェクトに接続し、3Dモデルのリビジョンを作成・アップロードし、既存のすべてのリビジョンを閲覧し、さらに過去のリビジョンをBlenderへ呼び戻せるようになります。",[63,8243],{},[66,8245,8247],{"id":8246},"workflow-overview",[261,8248,8249],{},"ワークフローの概要",[39,8251,8252],{},"一般的なKitsu主導のワークフローでは、アーティストがBlenderでシーンを開き作業を行い、マイルストーンに到達したらリビジョンをアップロードします。アーティストはレビューし、改良し、修正し、そして再度アップロードします。Kitsuは各ステップをきれいに管理してくれます。",[39,8254,8255],{},"ただ、クリックひとつでリビジョンをアップロードしたり、引き戻したりできれば便利ですよね？",[1053,8257,8258,8264,8270,8276],{},[85,8259,8260,8263],{},[261,8261,8262],{},"Blenderから始める"," - 作業用シーンを開きます。モデリング、シェーディング、リギングなど、いま必要な作業に応じて対応します。",[85,8265,8266,8269],{},[261,8267,8268],{},"作業をチェックポイント化する"," - マイルストーン（「ブロッキング完了」「レビュー準備完了」など）に到達したら、Kitsu上で新しいリビジョンを作成します。",[85,8271,8272,8275],{},[261,8273,8274],{},"履歴を確認する"," - Kitsuはすべてのリビジョンを保存するため、スーパーバイザーには明確なタイムラインが提示され、ファイルを掘り起こさずにバージョン比較が可能になります。",[85,8277,8278,8281],{},[261,8279,8280],{},"新しい変更を取り込む"," - 別のバージョンが必要になったら、現在のワークスペースにアセットを取り込むだけです。",[39,8283,8284],{},"これは非常に基本的なワークフローなので、競合解決の扱い（同じショットに対して2人のアーティストが作業し、それぞれが新しいリビジョンを作成したら？ どう処理する？）といった問題に直面するのは避けられませんが、まずはアニメーションパイプラインのニーズに合わせて後で改善できる、機能するアドオンを作るには十分です。",[17,8286,8288,8291],{"className":8287},[20,21,5589],[17,8289,3078],{"className":8290},[26],[17,8292,8294,8299,8301,8303,8304,8306,3148,8308],{"className":8293},[31],[2765,8295,8296],{},[261,8297,8298],{"style":1673},"動作例を探していますか？",[2122,8300],{},[2122,8302],{},"このガイドで紹介する例の統合について、完全なソースコードはGitHubで確認できます：",[2122,8305],{},[2122,8307],{},[231,8309,8311],{"href":8310},"https://github.com/cgwire/blender-kitsu-versioning-addon?ref=blog.cg-wire.com","https://github.com/cgwire/blender-kitsu-versioning-addon",[63,8313],{},[66,8315,8317],{"id":8316},"_1-populating-the-kitsu-dashboard",[261,8318,8319],{},"1. Kitsuダッシュボードを準備する",[39,8321,8322,8323,8328],{},"KitsuのWebインターフェースは、プロデューサー、コーディネーター、リードがプロジェクトの構造を素早く設定できるように設計されています。Blenderアーティストがリビジョンを公開する前に、制作中のアセットで制作データを埋めておく必要があります。",[231,8324,7018,8325],{"href":5770},[6214,8326,8327],{},"ローカル開発用のKitsu Dockerインスタンス","では：",[1053,8330,8331,8337,8344,8350],{},[85,8332,8333,8336],{},[261,8334,8335],{},"Kitsuダッシュボード","にログインします。",[85,8338,8339,8340,8343],{},"メインのナビゲーションバーで",[261,8341,8342],{},"Productions","に移動します。",[85,8345,8346,8349],{},[261,8347,8348],{},"「Create production」","をクリックします（通常は右上）。",[85,8351,8352],{},"制作情報を入力します",[43,8354,8356],{"className":8355},[20,46],[48,8357],{"src":8358,"className":8359,"alt":53,"loading":54,"width":8360,"height":8361,"srcSet":8362,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/12/data-src-image-58cb0571-2b74-4110-9b07-9e15030bbd05.png",[52],985,694,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2025/12/data-src-image-58cb0571-2b74-4110-9b07-9e15030bbd05.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/12/data-src-image-58cb0571-2b74-4110-9b07-9e15030bbd05.png 985w",[39,8364,8365],{},"新しい制作はリストに表示されるので、開いてアセットの追加を開始できます。",[39,8367,8368],{},"アセットはプロジェクトの構成要素です。キャラクター、小道具、環境、車両... 制作管理が必要なものは何でも対象になります。",[1053,8370,8371,8377,8384,8390],{},[85,8372,8373,8376],{},[261,8374,8375],{},"Productions → あなたの制作名","へ移動します。",[85,8378,8379,8380,8383],{},"制作内の",[261,8381,8382],{},"Assets","タブに切り替えます。",[85,8385,8386,8389],{},[261,8387,8388],{},"「Create Asset」","をクリックします。",[85,8391,8392,8395,8396,8399],{},[261,8393,8394],{},"アセット名","（例：「RobotHead」）と",[261,8397,8398],{},"アセット種別","（Character, Prop, Setなど）を入力します。",[43,8401,8403],{"className":8402},[20,46],[48,8404],{"src":8405,"className":8406,"alt":53,"loading":54,"width":8407,"height":8408,"srcSet":8409,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/12/data-src-image-f4336c33-57ef-4baa-9715-e0c749f7d9b4.png",[52],1270,870,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2025/12/data-src-image-f4336c33-57ef-4baa-9715-e0c749f7d9b4.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2025/12/data-src-image-f4336c33-57ef-4baa-9715-e0c749f7d9b4.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/12/data-src-image-f4336c33-57ef-4baa-9715-e0c749f7d9b4.png 1270w",[39,8411,8412],{},"これでアセットが作成され、3つのタスクが割り当てられました。 ",[39,8414,8415],{},"タスクは、各アセットに対してアーティストが行う制作手順（モデリング、シェーディング、リギングなど）を定義します。",[39,8417,8418],{},"これで、アドオンをテストするための準備が整いました。",[63,8420],{},[66,8422,8424],{"id":8423},"_2-linking-the-current-blender-project-to-a-kitsu-task",[261,8425,8426],{},"2. 現在のBlenderプロジェクトをKitsuのタスクに紐づける",[39,8428,8429,8430,8433],{},"まずは、UIの配置を定義し、",[5648,8431,8432],{},"gazu","を読み込み、ドロップダウンメニューで公開するデータを準備する最小限のアドオン宣言から始めます：",[5701,8435,8436,8449],{},[5648,8437,8439,8440,8443,8446],{"className":8438},[7441],"bl_info = {\n    \"name\": \"Model Versioning (Production/Task/Asset/Revisions)\",\n    \"author\": \"cgwire\",\n    \"version\": (1, 0, 0),\n    \"blender\": (2, 80, 0),\n    \"location\": \"View3D > Sidebar > ModelVersioning\",\n    \"description\": \"Browse productions, tasks, assets, and manage revisions (list/create/load)\",\n     \"category\": \"3D View\",\n}\n",[39,8441,8442],{},"import sys",[39,8444,8445],{},"sys.path.append(\"~/.local/lib/python3.11/site-packages\")",[39,8447,8448],{},"import os\nimport tempfile",[39,8450,8451],{},[5648,8452,8454],{"className":8453},[7441],"import bpy\nimport gazu\nfrom bpy.props import EnumProperty, PointerProperty\nfrom bpy.types import Operator, Panel, PropertyGroup",[39,8456,8457,8458,8460,8461,8463],{},"注目点として、",[5648,8459,8445],{},"により、",[5648,8462,8432],{},"のような外部パッケージへアクセスするためにローカルのPythonインストールを使用できます。デフォルトではBlenderが独自のPython環境を動かすため、パッケージのインストールはやや面倒です。そこで、ローカルモジュールを参照するようBlenderに伝えます。このパスは、あなたのシステム設定に合わせて適宜更新してください。",[39,8465,8466,8467,8470],{},"バージョニングを自動化する前に、BlenderがKitsu上の",[802,8468,8469],{},"どこ","に現在のモデルが属するのかを理解する必要があります。つまり、プロジェクト、アセット、タスク、そして最終的にそれに紐づくリビジョンを特定します。",[39,8472,8473],{},"最初のステップは簡単です。Kitsuで認証し、利用可能な制作（Productions）を取得し、アーティストがサイドバーUIからコンテキストを直接選べるようにします。",[39,8475,8476],{},"アドオンが読み込まれたら、認証し、アドオンをKitsu APIホストへ向けます：",[5701,8478,8479,8489],{},[5648,8480,8482,8483,8486,8487,5855],{"className":8481},[7441],"gazu.set_host(\"\u003C",[231,8484,5750],{"href":5750,"rel":8485},[5190],">\")\nuser = gazu.log_in(\"",[231,8488,5756],{"href":5755},[39,8490,8491],{},[5648,8492,8494],{"className":8493},[7441],"temp_dir_path = tempfile.gettempdir()",[39,8496,8497],{},"これにより、制作を閲覧し、タスクを見つけ、そして最終的にリビジョンを作成するために使うセッションが確立されます。",[39,8499,8500],{},"ここから制作の構造を公開し始められます。プロジェクト、アセット、タスク、リビジョンの検索用ヘルパー関数を用意し、各ドロップダウンを動的に埋めます：",[5701,8502,8503,8510],{},[5648,8504,8506,8507],{"className":8505},[7441],"def find_project(name):\n    return gazu.project.get_project_by_name(name)",[39,8508,8509],{},"def find_asset(project, name):\n    return gazu.asset.get_asset_by_name(project, name)",[39,8511,8512],{},[5648,8513,8515],{"className":8514},[7441],"def find_task(asset, type_id):\n    return gazu.task.get_task_by_name(asset, type_id, \"main\")",[39,8517,8518,8519,8522],{},"各",[5648,8520,8521],{},"EnumProperty","のコールバックは、Kitsuから新しいデータを取得します：",[5701,8524,8525],{},[5648,8526,8528,8529,8531,8532,8535,8536,8538],{"className":8527},[7441],"def enum_projects(self, context):\n    items = ",[1671,8530],{},"\n    projects = gazu.project.all_projects()\n    for p in projects:\n        items.append((p",[1671,8533,8534],{},"\"name\"",", p",[1671,8537,8534],{},", \"\"))\n    if not items:\n        items.append((\"NONE\", \"--- no productions ---\", \"\"))\n    return items",[39,8540,8541],{},"アセット、タスク、リビジョンも同じパターンに従います：",[5701,8543,8544,8569],{},[5648,8545,8547,8548,8550,8551,8553,8554,8556,8557],{"className":8546},[7441],"def enum_assets(self, context):\n    project = find_project(context.scene.mv_state.project)\n    items = ",[1671,8549],{},"\n    if project:\n        assets = gazu.asset.all_assets_for_project(project)\n        for t in assets:\n            items.append((t",[1671,8552,8534],{},", t",[1671,8555,8534],{},", \"\"))\n    if not items:\n        items.append((\"NONE\", \"--- no tasks ---\", \"\"))\n    return items",[39,8558,8559,8560,8562,8563,8553,8566,8556],{},"def enum_tasks(self, context):\n    project = find_project(context.scene.mv_state.project)\n    asset = find_asset(project, context.scene.mv_state.asset)\n    items = ",[1671,8561],{},"\n    if asset:\n        tasks = gazu.task.all_tasks_for_asset(asset)\n        for t in tasks:\n            items.append((t",[1671,8564,8565],{},"\"task_type_id\"",[1671,8567,8568],{},"\"task_type_name\"",[39,8570,8571],{},[5648,8572,8574,8575,8577,8578,8581,8582,8584],{"className":8573},[7441],"def enum_revisions(self, context):\n    project = find_project(context.scene.mv_state.project)\n    asset = find_asset(project, context.scene.mv_state.asset)\n    task = find_task(asset, context.scene.mv_state.task)\n    items = ",[1671,8576],{},"\n    if task:\n        revisions = gazu.files.get_all_preview_files_for_task(task)\n        for r in revisions:\n            items.append((str(r",[1671,8579,8580],{},"\"revision\"","), str(r",[1671,8583,8580],{},"), \"\"))\n    if not items:\n        items.append((\"NONE\", \"--- no revisions ---\", \"\"))\n    return items",[39,8586,8587],{},"最後に、すべてのUI選択を1つの状態（state）オブジェクトに保存します：",[5701,8589,8590],{},[5648,8591,8593],{"className":8592},[7441],"class MV_State(PropertyGroup):\n    project: EnumProperty(\n        name=\"Project\", description=\"Select project\", items=enum_projects\n    )\n    asset: EnumProperty(name=\"Asset\", description=\"Select asset\", items=enum_assets)\n    task: EnumProperty(name=\"Task\", description=\"Select task\", items=enum_tasks)\n    revision: EnumProperty(\n        name=\"Revision\", description=\"Select revision\", items=enum_revisions\n    )",[39,8595,8596],{},"これはパイプライン統合の土台です。これでBlenderはKitsuを閲覧でき、アーティストが作業中の“正確なタスク”に自分自身を紐づけられるようになりました。ここから、リビジョンのライフサイクルに取り組み始めます。",[63,8598],{},[66,8600,8602],{"id":8601},"_3-creating-a-new-revision-button",[261,8603,8604],{},"3. 「新規リビジョン」ボタンを作成する",[39,8606,8607],{},"まずアーティストが最も頻繁に触れる部分の自動化を始められます。それが新しいリビジョンの作成です。通常の手作業ワークフローでは、ファイルをエクスポートして、正しいタスクに対してKitsuへアップロードします。私たちのアドオンでは、その作業をBlender内の1つのボタン操作にまとめます。",[39,8609,8610,8611,8614],{},"Kitsuは",[5648,8612,8613],{},"publish_preview()","を通じて新しいリビジョンを処理します。これはファイルとメタデータの両方を送信します：",[5701,8616,8617,8627],{},[5648,8618,8620,8621,8624],{"className":8619},[7441],"temp_file_path = os.path.join(temp_dir_path, \"new_version.glb\")",[39,8622,8623],{},"bpy.ops.export_scene.gltf(filepath=temp_file_path, export_format=\"GLB\")",[39,8625,8626],{},"(comment, preview_file) = gazu.task.publish_preview(\n    task,\n    task_status,\n    revision=new_revision,\n    comment=\"increment revision\",\n    preview_file_path=temp_file_path,\n)",[39,8628,8629],{},[5648,8630,8632],{"className":8631},[7441],"os.remove(temp_file_path)",[39,8634,8635],{},"アドオンでは、これをサイドバーのボタンからトリガーします。",[39,8637,8638],{},"オペレーターは主に3つのステップを実行します。アドオンの状態からユーザーの選択を取得し、次のリビジョン番号を計算し、エクスポートしたファイルを新しいリビジョンとしてアップロードします：",[5701,8640,8641,8666],{},[5648,8642,8644,8645,8648,8651,8654,8657,8660,8663],{"className":8643},[7441],"class MV_OT_create_revision(Operator):\n    bl_idname = \"mv.create_revision\"\n    bl_label = \"Create Revision\"",[39,8646,8647],{},"    def invoke(self, context, event):\n        wm = context.window_manager\n        return wm.invoke_props_dialog(self, width=400)",[39,8649,8650],{},"    def execute(self, context):\n        project = find_project(context.scene.mv_state.project)\n        asset = find_asset(project, context.scene.mv_state.asset)\n        task = find_task(asset, context.scene.mv_state.task)\n        revision = context.scene.mv_state.revision\n        new_revision = int(revision) + 1",[39,8652,8653],{},"        task_status = gazu.task.get_task_status_by_name(\"todo\")",[39,8655,8656],{},"        temp_file_path = os.path.join(temp_dir_path, \"new_version.glb\")",[39,8658,8659],{},"        bpy.ops.export_scene.gltf(filepath=temp_file_path, export_format=\"GLB\")",[39,8661,8662],{},"        (comment, preview_file) = gazu.task.publish_preview(\n            task,\n            task_status,\n            revision=new_revision,\n            comment=\"increment revision\",\n            preview_file_path=temp_file_path,\n        )",[39,8664,8665],{},"        os.remove(temp_file_path)",[39,8667,8668],{},[5648,8669,8671],{"className":8670},[7441],"        self.report({\"INFO\"}, \"Revision created\")\n        return {\"FINISHED\"}",[63,8673],{},[66,8675,8677],{"id":8676},"_4-pulling-a-revision-into-blender",[261,8678,8679],{},"4. リビジョンをBlenderへ取り込む",[39,8681,8682,8683,8686],{},"バージョニングは、公開することだけではありません。",[802,8684,8685],{},"戻る","ことも重要です。以前の段階をレビューしたり、トポロジを比較したり、前回の反復から細部を復元したりする場合、Blenderへ新しいリビジョンや古いリビジョンを素早く確実に読み込む手段が必要です。",[39,8688,8689],{},"タスクが選択されると、Kitsuからリビジョンを取り出すのは簡単な2ステップになります。選択したリビジョンに紐づくプレビューファイルをダウンロードし、それをBlenderへインポートします。",[39,8691,8692],{},"現在のタスクに対するすべてのプレビューファイルを取得したら、インデックスで目的のリビジョンを特定し、アセットを直接Blenderへ取り込みます：",[5701,8694,8695,8705],{},[5648,8696,8620,8698],{"className":8697},[7441],[39,8699,8700,8701,8704],{},"preview_file = preview_files",[1671,8702,8703],{},"int(revision) - 1","\ngazu.files.download_preview_file(preview_file, temp_file_path)\nbpy.ops.import_scene.gltf(filepath=temp_file_path)",[39,8706,8707],{},[5648,8708,8632],{"className":8709},[7441],[39,8711,8712],{},"これにより、制作のその時点での状態そのままのアセットを、統一された手順で取得できるようになります。",[39,8714,8715],{},"このワークフローを、作成（Create Revision）ボタンの構造と同様のオペレーターにまとめます：",[5701,8717,8718,8735],{},[5648,8719,8721,8722,8725,8727,8733],{"className":8720},[7441],"class MV_OT_load_revision(Operator):\n    bl_idname = \"mv.load_revision\"\n    bl_label = \"Load Revision\"",[39,8723,8724],{},"    def execute(self, context):\n        project = find_project(context.scene.mv_state.project)\n        asset = find_asset(project, context.scene.mv_state.asset)\n        task = find_task(asset, context.scene.mv_state.task)\n        revision = context.scene.mv_state.revision\n        preview_files = gazu.files.get_all_preview_files_for_task(task)",[39,8726,8656],{},[39,8728,8729,8730,8732],{},"        preview_file = preview_files",[1671,8731,8703],{},"\n        gazu.files.download_preview_file(preview_file, temp_file_path)\n        bpy.ops.import_scene.gltf(filepath=temp_file_path)",[39,8734,8665],{},[39,8736,8737],{},[5648,8738,8740],{"className":8739},[7441],"        self.report({\"INFO\"}, \"Opened Revision\")\n        return {\"FINISHED\"}",[39,8742,8743],{},"このオペレーターにより、アーティストはBlenderを離れることなく、Kitsuに保存されている任意のバージョンを閲覧して読み込むことが簡単になります。",[63,8745],{},[66,8747,8749],{"id":8748},"_5-registering-the-addon",[261,8750,8751],{},"5. アドオンを登録する",[39,8753,8754,6024],{},[231,8755,8757],{"href":8756},"https://blog.cg-wire.com/blender-addon-ui-scripting-guide/",[6214,8758,8759],{},"このパネルが、リビジョンのワークフロー全体をつなぎます",[82,8761,8762,8765,8768,8771,8774],{},[85,8763,8764],{},"プロジェクトを選択",[85,8766,8767],{},"アセットを選択",[85,8769,8770],{},"タスクを選択",[85,8772,8773],{},"リビジョンを閲覧",[85,8775,8776],{},"クリックひとつでバージョンを作成または読み込み",[5701,8778,8779,8801],{},[5648,8780,8782,8783,8786,8789,8792,8795,8798],{"className":8781},[7441],"class MV_PT_panel(Panel):\n    bl_label = \"Model Versioning\"\n    bl_idname = \"MV_PT_panel\"\n    bl_space_type = \"VIEW_3D\"\n    bl_region_type = \"UI\"\n    bl_category = \"ModelVersion\"",[39,8784,8785],{},"    def draw(self, context):\n        layout = self.layout\n        scene = context.scene\n        mv = scene.mv_state",[39,8787,8788],{},"        layout.label(text=\"Project\")\n         layout.prop(mv, \"project\", text=\"\")\n        layout.separator()",[39,8790,8791],{},"        layout.label(text=\"Asset\")\n         layout.prop(mv, \"asset\", text=\"\")\n        layout.separator()",[39,8793,8794],{},"        layout.label(text=\"Task\")\n         layout.prop(mv, \"task\", text=\"\")\n        layout.separator()",[39,8796,8797],{},"        layout.label(text=\"Revision\")\n         layout.prop(mv, \"revision\", text=\"\")\n        layout.separator()",[39,8799,8800],{},"        row = layout.row(align=True)\n        row.operator(\"mv.create_revision\", text=\"Create Revision\", icon=\"ADD\")",[39,8802,8803],{},[5648,8804,8806],{"className":8805},[7441],"        layout.operator(\n            \"mv.load_revision\", text=\"Load Selected Revision\", icon=\"IMPORT\"\n        )",[39,8808,8809],{},"最後に、オペレーター、パネル、状態（state）を登録して、BlenderがUIを構築できるようにします：",[5701,8811,8812,8822],{},[5648,8813,8815,8816,8819],{"className":8814},[7441],"classes = (\n    MV_State,\n    MV_OT_create_revision,\n    MV_OT_load_revision,\n    MV_PT_panel,\n)",[39,8817,8818],{},"def register():\n    for c in classes:\n        bpy.utils.register_class(c)\n    bpy.types.Scene.mv_state = PointerProperty(type=MV_State)",[39,8820,8821],{},"def unregister():\n    for c in reversed(classes):\n        bpy.utils.unregister_class(c)\n    if hasattr(bpy.types.Scene, \"mv_state\"):\n        del bpy.types.Scene.mv_state",[39,8823,8824],{},[5648,8825,5841,8827,5845,8829,8831],{"className":8826},[7441],[261,8828,5844],{},[261,8830,5848],{},"\":\n    register()",[39,8833,8834],{},"この時点で、モデルのバージョニングワークフローは完全に双方向になっています。Blenderから新しいリビジョンを公開でき、以前のものを即座に取得できます。",[43,8836,8838],{"className":8837},[20,46],[48,8839],{"src":8840,"className":8841,"alt":53,"loading":54,"width":8842,"height":8843,"srcSet":8844,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/12/data-src-image-00e861e7-3b2e-4bdc-80b8-1af740cab480.png",[52],759,488,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2025/12/data-src-image-00e861e7-3b2e-4bdc-80b8-1af740cab480.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/12/data-src-image-00e861e7-3b2e-4bdc-80b8-1af740cab480.png 759w",[63,8846],{},[66,8848,8849],{"id":4755},[261,8850,4756],{},[39,8852,8853],{},"Blender APIのオペレーターを数個と、Gazu SDKの便利さを組み合わせることで、Blenderの中にそのまま存在し、Kitsuと同期し続ける、実用的（ただし基本的な）バージョニングワークフローを構築しました。アーティストはBlenderのシーンをKitsuのプロジェクト、アセット、タスクに紐づけ、新しいリビジョンをボタンひとつで作成し、任意のタスクのリビジョン履歴をすべて閲覧し、比較や復元が必要になったときは古いバージョンを直接Blenderへ取り込めます。",[39,8855,8856],{},"このワークフローは、まだ始まりにすぎません。ここから、アドオンを拡張して自動エクスポート、サムネイルやトゥルーターンテーブルのレンダリング、複数の出力形式の対応、スーパーバイザー向けレビュー用ツール、さらにはレンダーファームへの連携などに広げられるでしょう。",[39,8858,8859,8860,8865],{},"まずは、このバージョニングアドオンの",[231,8861,7018,8862],{"href":8310},[6214,8863,8864],{},"GitHubリポジトリ","をクローンして、自分でも試してみてください！",[17,8867,8869,8872],{"className":8868},[20,21,22],[17,8870,312],{"className":8871},[26],[17,8873,8875,8876,8879],{"className":8874},[31],"アニメーション制作のプロセスについてさらに学ぶには、",[231,8877,5206],{"href":3404,"rel":8878},[321],"。私たちは1,000人以上の専門家とつながっており、ベストプラクティスを共有し、時には現地イベントも開催しています。ぜひ歓迎します！ 😊",[17,8881,8883],{"className":8882},[20,327,328],[231,8884,3413],{"href":3404,"className":8885},[332,333],{"title":53,"searchDepth":336,"depth":336,"links":8887},[8888,8889,8890,8891,8892,8893,8894],{"id":8246,"depth":336,"text":8249},{"id":8316,"depth":336,"text":8319},{"id":8423,"depth":336,"text":8426},{"id":8601,"depth":336,"text":8604},{"id":8676,"depth":336,"text":8679},{"id":8748,"depth":336,"text":8751},{"id":4755,"depth":336,"text":4756},"https://images.unsplash.com/photo-1617746533234-288e5cf484e2?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8c2VhcmNofDMwfHxhbmltYXRpb24lMjBwaXBlbGluZXxlbnwwfHx8fDE3NjYzODE5ODZ8MA&ixlib=rb-4.1.0&q=80&w=2000",{"updated_at":8897,"featured_at":350,"visibility":351},"2026-02-20T06:04:01.000+01:00","/blog-i18n/ja/blender-kitsu-versioning-addon","2025-12-22T10:00:20.000+01:00",{"title":8196,"description":53},"blender-kitsuバージョニングアドオン","blog-i18n/ja/blender-kitsu-versioning-addon/index",[8904,8905],{"id":6909,"name":6910,"slug":6911,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":6912},{"id":6914,"name":676,"slug":677,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":6915},"uB9oNLlcZosv_d9qCcCtv-jm1yp1HRYNEdh8RdmcCuk",{"id":8908,"title":8909,"authors":8910,"body":8912,"description":53,"extension":346,"feature_image":9498,"html":11,"meta":9499,"navigation":352,"path":9500,"published_at":9501,"seo":9502,"slug":9503,"stem":9504,"tags":9505,"__hash__":9508,"updated_at":8897,"featured_at":350,"visibility":351},"blog/blog-i18n/ja/blender-kitsu-low-res-preview/index.md","Kitsu（2026）を使ったBlenderでの低解像度アニメーションプレビューの自動化",[8911],{"id":8,"name":9,"slug":10,"profile_image":11,"cover_image":11,"bio":11,"website":11,"location":11,"facebook":11,"twitter":11,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":4860},{"type":14,"value":8913,"toc":9488},[8914,8925,8928,8931,8934,8937,8954,8957,8983,8985,8991,8994,8997,9012,9020,9022,9028,9035,9049,9052,9055,9057,9063,9070,9079,9100,9107,9110,9113,9116,9121,9129,9132,9134,9140,9154,9157,9175,9212,9215,9223,9230,9232,9238,9247,9250,9314,9332,9342,9345,9348,9357,9360,9368,9370,9376,9379,9386,9392,9395,9401,9410,9412,9418,9421,9424,9433,9435,9439,9442,9462,9465,9468,9482],[17,8915,8917,8921],{"className":8916},[20,21,22],[17,8918,8920],{"className":8919},[26],"⚡",[17,8922,8924],{"className":8923},[31],"数時間ではなく数秒でレンダーできる軽量なプレビューで、アニメーションレビューを高速化します。",[39,8926,8927],{},"フル解像度のレンダーを待ってからショットを確認するのは、制作全体の進行を遅らせます。アーティストは待ち時間に時間を取られ、スーパーバイザーもフィードバックを受け取るのが遅れてしまいます。反復ループの効率が悪いのです。",[39,8929,8930],{},"そこで、Blender上で低解像度のアニメーションプレビューを直接作成し、アニメーションパイプラインの一部としてPythonでKitsuへ自動アップロードしましょう。これらのプレビューはレンダーが速く、レビューしやすく、承認のためにKitsuで素早く利用できます。",[39,8932,8933],{},"これは大きな効果があります。フル解像度のレンダーは数時間かかることがあり、何千ものショットを扱うとクラウドストレージやネットワーク帯域のコストも決して軽くありません。1080pから480pにするだけで、サイズを最大5倍まで（＝最大5分の1）にできます！",[39,8935,8936],{},"本チュートリアルでは、次の内容を扱います：",[82,8938,8939,8942,8945,8951],{},[85,8940,8941],{},"低解像度プレビュー用にBlenderのレンダー設定を調整する",[85,8943,8944],{},"Pythonでレンダープロセスを自動化する",[85,8946,8947,8950],{},[5648,8948,8949],{},"ffmpeg","を使って動画に透かしとタイムスタンプを追加し、素早く状況を把握できるようにする",[85,8952,8953],{},"動画を出力し、Kitsuへアップロードする",[39,8955,8956],{},"最後には、レビューにかかる時間を短縮しつつ、フィードバックの質を犠牲にしないスクリプトが手に入ります。",[17,8958,8960,8963],{"className":8959},[20,21,5589],[17,8961,3078],{"className":8962},[26],[17,8964,8966,8970,8972,8974,8975,8977,3148,8979],{"className":8965},[31],[2765,8967,8968],{},[261,8969,7833],{"style":1673},[2122,8971],{},[2122,8973],{},"このガイドで紹介している例の統合（インテグレーション）の完全なソースコードは、私たちのGitHubで確認できます：",[2122,8976],{},[2122,8978],{},[231,8980,8982],{"href":8981},"https://github.com/cgwire/blender-kitsu-low-res-preview?ref=blog.cg-wire.com","https://github.com/cgwire/blender-kitsu-low-res-preview",[63,8984],{},[66,8986,8988],{"id":8987},"_1-simple-blender-scene-setup",[261,8989,8990],{},"1. シンプルなBlenderシーンのセットアップ",[39,8992,8993],{},"アニメーション付きプレビューを作る前に、シーン内に開始用のオブジェクトが必要です。このチュートリアルでは、Blenderのデフォルトのキューブを使います。",[39,8995,8996],{},"まず、シーンとキューブの参照を作成します：",[5701,8998,8999,9002],{},[5648,9000,7869],{"className":9001},[7441],[39,9003,9004],{},[5648,9005,9007,9008,9011],{"className":9006},[7441],"cube = bpy.data.objects",[1671,9009,9010],{},"\"Cube\"","\nscene = bpy.context.scene",[43,9013,9015],{"className":9014},[20,46],[48,9016],{"src":9017,"className":9018,"alt":53,"loading":54,"width":5900,"height":7930,"srcSet":9019,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/12/data-src-image-bf950a7a-c387-4b8d-9318-49e5bd3251bd.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2025/12/data-src-image-bf950a7a-c387-4b8d-9318-49e5bd3251bd.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2025/12/data-src-image-bf950a7a-c387-4b8d-9318-49e5bd3251bd.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/12/data-src-image-bf950a7a-c387-4b8d-9318-49e5bd3251bd.png 1600w",[63,9021],{},[66,9023,9025],{"id":9024},"_2-adding-keyframes-for-animation",[261,9026,9027],{},"2. アニメーション用のキーフレームを追加する",[39,9029,9030,9031,9034],{},"次のステップはキューブをアニメーション化することです。モデリングのプレビューを素早く行うには、短いシーケンスが理想です。ここでは",[261,9032,9033],{},"360°回転","を48フレーム（24 FPSで2秒）で作成します：",[5701,9036,9037],{},[5648,9038,9040,9041,9044,9045,9048],{"className":9039},[7441],"for frame, angle in ",[1671,9042,9043],{},"(1, 0), (12, 1.57), (24, 3.14), (36, 4.71), (48, 6.28)",":\n    scene.frame_set(frame)\n    cube.rotation_euler",[1671,9046,9047],{},"2"," = angle\n    cube.keyframe_insert(data_path=\"rotation_euler\", index=2)",[39,9050,9051],{},"このループは一定間隔でキーフレームを設定し、Z軸の周りにpi/2ずつ滑らかに回転させます。フレーム数を少なくすることでレンダーが速くなり、プレビュー用途に最適になります。",[39,9053,9054],{},"この時点で、Blender上でタイムラインをスクラブして、キューブが期待どおりに回転するか確認できます。",[63,9056],{},[66,9058,9060],{"id":9059},"_3-low-resolution-rendering",[261,9061,9062],{},"3. 低解像度レンダリング",[39,9064,9065,9066,9069],{},"アニメーションが用意できたら、Blenderで",[261,9067,9068],{},"高速で低解像度のプレビュー","をレンダーするように設定します。目的は品質よりもスピードです。レビューに十分に見やすく、かつ作成が素早いものを目指します。",[39,9071,9072,9073,9078],{},"ここでは、",[231,9074,7018,9075],{"href":6458},[6214,9076,9077],{},"スピードのためのEeveeレンダリングエンジンを使い、不要なレンダリングのオーバーヘッドを減らします","。Eeveeは単純なラスターライズ（画像の格子化）エンジンなので、Cyclesよりはるかに高速です。90%のケースでは、超リアルな出力は必要ありません。",[5701,9080,9081,9094],{},[5648,9082,9084,9085,9088,9091],{"className":9083},[7441],"scene.render.engine = \"BLENDER_EEVEE\"",[39,9086,9087],{},"scene.render.resolution_x = 1920\nscene.render.resolution_y = 1080\nscene.render.resolution_percentage = 50",[39,9089,9090],{},"scene.render.fps = 24\nscene.frame_start = 1\nscene.frame_end = 48  # アニメーションの長さに合わせてください",[39,9092,9093],{},"scene.render.image_settings.file_format = \"FFMPEG\"\nscene.render.ffmpeg.format = \"MPEG4\"\nscene.render.ffmpeg.codec = \"H264\"",[39,9095,9096],{},[5648,9097,9099],{"className":9098},[7441],"scene.render.filepath = \"//preview.mp4\"",[39,9101,9102,9103,9106],{},"古典的な横長の解像度を使いつつも、",[5648,9104,9105],{},"resolution_percentage","を下げたり、Eeveeで高品質サンプリングをオフにしたりすると、プレビューのレンダー時間を大幅に減らせます。",[39,9108,9109],{},"残りの設定はかなり標準的です。24 FPSで合計48フレーム、出力はH264エンコードのmp4動画（圧縮を速くするため）で、スクリプトの現在のフォルダに書き込まれます。",[39,9111,9112],{},"用途に応じて、解像度、フレームレート、ビットレートを下げれば、プレビューのサイズも小さくできます。ただし、レビュー工程に必要なだけの品質は確保する必要があるので、パフォーマンスとの最適なバランスになるよう設定を調整してください。",[39,9114,9115],{},"最後に、レンダーを1行でトリガーできます：",[5701,9117,9118],{},[5648,9119,8060],{"className":9120},[7441],[43,9122,9124],{"className":9123},[20,46],[48,9125],{"src":9126,"className":9127,"alt":53,"loading":54,"width":8122,"height":8123,"srcSet":9128,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/12/data-src-image-27b0c802-b589-4306-b52b-5f910b58320b.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2025/12/data-src-image-27b0c802-b589-4306-b52b-5f910b58320b.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2025/12/data-src-image-27b0c802-b589-4306-b52b-5f910b58320b.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/12/data-src-image-27b0c802-b589-4306-b52b-5f910b58320b.png 1088w",[39,9130,9131],{},"このプレビュービデオは、すぐにレビューに使うことができるほか、Kitsuへアップロードする前にFFmpegのようなツールでタイムスタンプや透かし、または独自の命名規則を追加するなど、追加処理も可能です。",[63,9133],{},[66,9135,9137],{"id":9136},"_4-ffmpeg-processing-timestamp-naming-watermark",[261,9138,9139],{},"4. FFmpeg処理：タイムスタンプ、命名、透かし",[39,9141,9142,9143,9146,9147,9153],{},"Blenderがアニメーションを動画ファイルにレンダーしたら、次は",[261,9144,9145],{},"FFmpeg","でさらに処理できます。これは",[231,9148,7018,9150],{"href":9149},"https://blog.cg-wire.com/ffmpeg-commands-for-animators/",[6214,9151,9152],{},"制作パイプラインでよくある手順","で、タイムスタンプ、透かし、またはカスタムの命名などを追加して、レビューに使える状態に整えます。",[39,9155,9156],{},"プレビューをレンダーした後、ターミナルで次のコマンドを実行します：",[5701,9158,9159],{},[5648,9160,9162,9163,9166,9167,9170,9171,9174],{"className":9161},[8110],"ffmpeg -framerate 24 \\\\\n  -i preview.mp4 \\\\\n  -i watermark.png \\\\\n  -filter_complex \"\\\\\n    ",[1671,9164,9165],{},"0:v","drawtext=text='%{pts\\\\:hms}':x=10:y=10:fontsize=24:fontcolor=white:bordercolor=black:borderw=2",[1671,9168,9169],{},"v1","; \\\\\n    [v1]",[1671,9172,9173],{},"1:v","overlay=W-w-20:H-h-20\" \\\\\n  -c:v libx264 -crf 22 -pix_fmt yuv420p \\\\\n  preview_with_stamp.mp4",[82,9176,9177,9185,9197,9205],{},[85,9178,9179,9184],{},[261,9180,9181],{},[5648,9182,9183],{},"drawtext"," は左上に現在進行中のタイムスタンプを重ねて表示します。",[85,9186,9187,9192,9193,9196],{},[5648,9188,9189],{},[261,9190,9191],{},"overlay"," は右下に透かし画像（",[5648,9194,9195],{},"watermark.png","）を配置します。",[85,9198,9199,9204],{},[261,9200,9201],{},[5648,9202,9203],{},"c:v libx264 -crf 22 -pix_fmt yuv420p"," は動画再生の互換性と品質を確保します。",[85,9206,9207,9208,9211],{},"出力ファイル ",[5648,9209,9210],{},"preview_with_stamp.mp4"," が、レビュー準備完了の最終プレビューです。",[39,9213,9214],{},"もちろん、チームやクライアントのレビュー用にプレビューを標準化するため、必要に応じてフォントサイズ、位置、透かしの配置などを調整できます。",[43,9216,9218],{"className":9217},[20,46],[48,9219],{"src":9220,"className":9221,"alt":53,"loading":54,"width":8122,"height":8123,"srcSet":9222,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/12/data-src-image-aaed9f6c-1b29-4592-b629-1830a6f2aa79.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2025/12/data-src-image-aaed9f6c-1b29-4592-b629-1830a6f2aa79.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2025/12/data-src-image-aaed9f6c-1b29-4592-b629-1830a6f2aa79.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/12/data-src-image-aaed9f6c-1b29-4592-b629-1830a6f2aa79.png 1088w",[39,9224,9225,9226,9229],{},"これで、制作に向けた低解像度アニメーションプレビューの準備が完了です。ファイルは、素早いフィードバックのために",[261,9227,9228],{},"Kitsu","へアップロードする準備ができています。",[63,9231],{},[66,9233,9235],{"id":9234},"_5-uploading-to-kitsu-via-gazu",[261,9236,9237],{},"5. Gazu経由でKitsuへアップロードする",[39,9239,9240,9241,9243,9244,9246],{},"低解像度プレビューが用意できたら、ダッシュボードから直接",[261,9242,9228],{},"へアップロードするか、",[5648,9245,8432],{},"のPython SDKを使えます。Kitsuは、アーティストやスーパーバイザーがプレビューにすぐアクセスしてレビューできる共同作業型のパイプライントラッカーです。",[39,9248,9249],{},"次のPythonスクリプトは、プロジェクトとタスクを選んでプレビューをアップロードできる、シンプルな対話型CLIを提供します：",[5701,9251,9252,9308],{},[5648,9253,9255,9256,9266,9279,9292,9299,9302,9305],{"className":9254},[7441],"import gazu",[39,9257,9258,9259,9262,9263],{},"def pickProject(label, list_of_items):\n    \"\"\"Helper UI to pick one item from a list.\"\"\"\n    for i, item in enumerate(list_of_items):\n        print(f\"{i + 1}. {item",[1671,9260,9261],{},"'name'","}\")\n    idx = int(input(f\"Choose {label} number: \")) - 1\n    return list_of_items",[1671,9264,9265],{},"idx",[39,9267,9268,9269,9272,9273,9276,9277,7539],{},"def pickTask(label, list_of_items):\n    \"\"\"Helper UI to pick one item from a list.\"\"\"\n    for i, item in enumerate(list_of_items):\n        asset = gazu.entity.get_entity(item",[1671,9270,9271],{},"\"entity_id\"",")\n        status = gazu.task.get_task_status(item",[1671,9274,9275],{},"\"task_status_id\"",")\n        type = gazu.task.get_task_type(item",[1671,9278,8565],{},[39,9280,9281,9282,9284,9285,9287,9288,9262,9290],{},"        print(f\"{i + 1}. {asset",[1671,9283,9261],{},"} {type",[1671,9286,9261],{},"} {status",[1671,9289,9261],{},[1671,9291,9265],{},[39,9293,8482,9294,8486,9297,5855],{},[231,9295,5750],{"href":5750,"rel":9296},[5190],[231,9298,5756],{"href":5755},[39,9300,9301],{},"projects = gazu.project.all_projects()\nproject = pickProject(\"project\", projects)",[39,9303,9304],{},"tasks = gazu.task.all_tasks_for_project(project)\ntask = pickTask(\"task\", tasks)",[39,9306,9307],{},"print(\"Uploading preview...\")\ntask_status = gazu.task.get_task_status_by_name(\"todo\")\nresult = gazu.task.publish_preview(\n    task,\n    task_status,\n    comment=\"Auto-generated preview\",\n    preview_file_path=\"./preview.mp4\",\n)",[39,9309,9310],{},[5648,9311,9313],{"className":9312},[7441],"print(\"Done:\", result)",[39,9315,9316,9317,9319,9320,9325,9326,3681,9329,9331],{},"まず、",[5648,9318,8432],{},"であなたの資格情報を使ってKitsuにログインします。ここでは、",[231,9321,7018,9322],{"href":5770},[6214,9323,9324],{},"Kitsu Dockerによるローカル開発環境のインストール","を使用します。このプログラムでは、利用可能な異なるKitsu APIエンドポイントを使って制作データをすべて取得し、そこから",[261,9327,9328],{},"プロジェクト",[261,9330,5662],{},"を選択できます：",[43,9333,9335],{"className":9334},[20,46],[48,9336],{"src":9337,"className":9338,"alt":53,"loading":54,"width":9339,"height":9340,"srcSet":9341,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/12/data-src-image-21091709-64dd-41c6-875e-2cdce8b5b178.png",[52],1343,816,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2025/12/data-src-image-21091709-64dd-41c6-875e-2cdce8b5b178.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2025/12/data-src-image-21091709-64dd-41c6-875e-2cdce8b5b178.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/12/data-src-image-21091709-64dd-41c6-875e-2cdce8b5b178.png 1343w",[39,9343,9344],{},"そして、前のステップで生成したプレビュー動画を、選択したタスクへアップロードします。",[39,9346,9347],{},"完了すると、プレビューはKitsuのレビュー画面で利用可能になり、高解像度のレンダーを待たずに、チームメンバーやスーパーバイザーがフィードバックを出しやすくなります。",[43,9349,9351],{"className":9350},[20,46],[48,9352],{"src":9353,"className":9354,"alt":53,"loading":54,"width":8360,"height":9355,"srcSet":9356,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/12/data-src-image-78d2cd48-21e9-4599-9b2b-a5e5bef63f76.png",[52],948,"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2025/12/data-src-image-78d2cd48-21e9-4599-9b2b-a5e5bef63f76.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2025/12/data-src-image-78d2cd48-21e9-4599-9b2b-a5e5bef63f76.png 985w",[39,9358,9359],{},"レビューエンジンは、フレームに素早く注釈を付け、正確なショットに対してコメントを追加するのに最適です：",[43,9361,9363],{"className":9362},[20,46],[48,9364],{"src":9365,"className":9366,"alt":53,"loading":54,"width":5294,"height":5295,"srcSet":9367,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/12/data-src-image-6ae9b3dd-18e9-4d85-9fa6-e5106babc87e.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2025/12/data-src-image-6ae9b3dd-18e9-4d85-9fa6-e5106babc87e.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2025/12/data-src-image-6ae9b3dd-18e9-4d85-9fa6-e5106babc87e.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/12/data-src-image-6ae9b3dd-18e9-4d85-9fa6-e5106babc87e.png 1438w",[63,9369],{},[66,9371,9373],{"id":9372},"_6-putting-it-all-together",[261,9374,9375],{},"6. すべてをまとめる",[39,9377,9378],{},"タスクを最初から最後まで自動化するには、簡単なbashコマンドを書きます：",[39,9380,9381],{},[261,9382,9383],{},[6214,9384,9385],{},"preview.sh",[5701,9387,9388],{},[5648,9389,9391],{"className":9390},[7441],"python3 render.py && ./watermark.sh && python3 upload.py",[39,9393,9394],{},"その後、プレビューを共有する必要があるたびにスクリプトを実行できます：",[5701,9396,9397],{},[5648,9398,9400],{"className":9399},[7441],"./preview.sh",[39,9402,9403,9404,9409],{},"最終結果を自分で試すには、私たちの",[231,9405,7018,9406],{"href":8981},[6214,9407,9408],{},"Githubリポジトリ blender-kitsu-low-res-preview","をご覧ください。",[63,9411],{},[66,9413,9415],{"id":9414},"_7-artist-friendly-addon-overview",[261,9416,9417],{},"7. アーティスト向けアドオンの概要",[39,9419,9420],{},"この記事の範囲外ですが、このコードをBlenderのアドオンにまとめて、アーティストが簡単に使えるようにすることも可能です。",[39,9422,9423],{},"アップロードするために、制作物（プロダクション）、アセット、タスクを選ぶドロップダウンメニューを格納するメインパネルが必要になります。そして、アップロード用のボタンをクリックするだけでよい形にします。アップロードのロジックでは、レンダリング、透かし処理のためのffmpegをサブプロセスとして呼び出し、さらに一時ファイルを実際にKitsuへ送信します。",[39,9425,9426,9427,9432],{},"詳しくは",[231,9428,7018,9429],{"href":8756},[6214,9430,9431],{},"Blender Add-on UI Development","に関する記事をご覧ください。",[63,9434],{},[66,9436,9437],{"id":4755},[261,9438,4756],{},[39,9440,9441],{},"ここまでで、完全なパイプラインを構築できました。Blenderでシンプルな3Dオブジェクトを作り、アニメーションさせ、低解像度のプレビューを生成し、タイムスタンプと透かしを追加し、そしてKitsuへアップロードします。得られるメリットはすぐに明確です：",[82,9443,9444,9450,9456],{},[85,9445,9446,9449],{},[261,9447,9448],{},"より速いレビュー"," - スーパーバイザーやチームメンバーは、フル解像度のレンダーを待たずに、プレビューをすぐに視聴できます。",[85,9451,9452,9455],{},[261,9453,9454],{},"より速い反復"," - アーティストはより早くフィードバックを受け取れます。これにより反復ループが短くなり、ボトルネックが減ります。",[85,9457,9458,9461],{},[261,9459,9460],{},"より少ない詰まり（ブロッカー）"," - 自動化されたプレビューとアップロードにより、パイプラインでの反復的な手作業がなくなり、成果物の一貫性が保たれます。",[39,9463,9464],{},"これまで1時間かかっていた手作業は、いくつかのスクリプトで処理できるようになり、チームは制作の「創造的な側面」に集中する時間を増やせます。",[39,9466,9467],{},"さらに、あなたのアニメーションスタジオのニーズに応じてこのワークフローを発展させることもできます。Blenderにボタンやパネルを追加してワンクリックでパイプライン全体を実行したり、単一のスクリプトで複数のショットやシーンのプレビューを自動で一括生成したり、といったことが可能です。",[17,9469,9471,9474],{"className":9470},[20,21,22],[17,9472,312],{"className":9473},[26],[17,9475,9477,9478,9481],{"className":9476},[31],"アニメーションの制作プロセスについてもっと知るには ",[231,9479,1982],{"href":3404,"rel":9480},[321],"！ 私たちはベストプラクティスを共有する1000人以上の専門家とつながっており、時々対面イベントも企画しています。ぜひようこそお迎えしたいです！ 😊",[17,9483,9485],{"className":9484},[20,327,328],[231,9486,3413],{"href":3404,"className":9487},[332,333],{"title":53,"searchDepth":336,"depth":336,"links":9489},[9490,9491,9492,9493,9494,9495,9496,9497],{"id":8987,"depth":336,"text":8990},{"id":9024,"depth":336,"text":9027},{"id":9059,"depth":336,"text":9062},{"id":9136,"depth":336,"text":9139},{"id":9234,"depth":336,"text":9237},{"id":9372,"depth":336,"text":9375},{"id":9414,"depth":336,"text":9417},{"id":4755,"depth":336,"text":4756},"https://images.unsplash.com/photo-1653200256306-6dc84510dfb6?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8c2VhcmNofDN8fGFuaW1hdGlvbiUyMHBpcGVsaW5lfGVufDB8fHx8MTc2NTA5ODQ2Mnww&ixlib=rb-4.1.0&q=80&w=2000",{"updated_at":8897,"featured_at":350,"visibility":351},"/blog-i18n/ja/blender-kitsu-low-res-preview","2025-12-15T10:00:23.000+01:00",{"title":8909,"description":53},"blender-kitsu低解像度プレビュー","blog-i18n/ja/blender-kitsu-low-res-preview/index",[9506,9507],{"id":6909,"name":6910,"slug":6911,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":6912},{"id":6914,"name":676,"slug":677,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":6915},"sPjqpH0Cg4vD_2WUnuMWGGl9hYkscJT8ENWugLPJ234",[9510,9766,10031,10333,10722],{"id":9511,"title":9512,"authors":9513,"body":9515,"description":9519,"extension":346,"feature_image":9750,"html":11,"meta":9751,"navigation":352,"path":9753,"published_at":9754,"seo":9755,"slug":9756,"stem":9757,"tags":9758,"__hash__":9765,"updated_at":9752,"featured_at":350,"visibility":351},"blog/blog-i18n/ja/physics-and-mechanics-principles-in-animation/index.md","アニメーションで使われる必知の物理・メカニクスの原理（2026）",[9514],{"id":2889,"name":2678,"slug":2890,"profile_image":2891,"cover_image":11,"bio":2892,"website":11,"location":2030,"facebook":11,"twitter":2031,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":2893},{"type":14,"value":9516,"toc":9740},[9517,9520,9523,9529,9532,9535,9538,9541,9550,9555,9561,9564,9567,9570,9573,9576,9582,9585,9588,9591,9594,9614,9617,9623,9626,9629,9638,9643,9646,9649,9652,9658,9661,9664,9667,9670,9676,9679,9682,9688,9691,9700,9705,9708,9712,9715,9718],[39,9518,9519],{},"アニメーションは現実世界の反映です。信じられるだけのリアリティを持たせる必要がある一方で、同時に魅力的で面白くもあるべきです。スパイダーマンの動きは、Web（糸）の絡みつき感を地に足のついたものにしてダイナミックに見せるため、実在のパルクールやブレイクダンスに着想を得ています。 ",[39,9521,9522],{},"そのために、アニメーターは基本的な物理・メカニクスの原理を使い、よりスタイライズされた見た目に向けて“曲げて”いきます。この記事では、物理・メカニクスの原理をいくつかの例を通して紹介し、アニメーションのテクニックをより適切に言語化して、より惹きつけられるストーリーを作るための手助けをします。 ",[66,9524,9526],{"id":9525},"_1-body-mechanics",[261,9527,9528],{},"1. ボディメカニクス",[39,9530,9531],{},"キャラクターを生き生きと動かすには、実際の身体がどう動くかを理解する必要があります。",[39,9533,9534],{},"ボディメカニクスは、歩く、走る、階段を上るといったリアルな動作をアニメーション化するための基礎です。たとえば、アイドルアニメーションでは、キャラクターが立っていて呼吸しているといった微細な動きを表します。ポーズはニュートラルでもアクション重視でも構いませんが、連続した効果になるようにシームレスにループするよう設計できます。また、最初と最後のキーフレームが同一になっている他のサイクルやループは、連続した動きの錯覚を生み出します。",[39,9536,9537],{},"髪や服といった身体の一部、さらには無生物の小道具などは、物理の原理を使ったダイナミックシミュレーションが必要になる場合があります。たとえば、なびく髪やたなびく布地をシミュレートするには、副次的な動き（風でひらめくマントなど）の説得力を高めたり、小道具に命を吹き込むようにします（落ちる、跳ねる、ぶつかる、など）。",[39,9539,9540],{},"スピーチ（発話）アニメーションでは、フォネム（音素）が、特定の母音や子音に関連する口の形を表します。フォネムをマスターすれば、キャラクターのセリフにぴったり合う現実的な口の動きを作り出せます。",[43,9542,9544],{"className":9543},[20,46],[48,9545],{"src":9546,"className":9547,"alt":53,"loading":54,"width":9548,"height":9549},"https://lh7-us.googleusercontent.com/docsz/AD_4nXfmh7szja65dXpTNw1I3NqJjqWlqkWOEre2kR_PUATu_zw5G9V0w3h3Kt9nHKAgBPz16APcum-OeBwcr13Bz7Q-0fBwjViTZazr2JFNiNAJgu1mHXzJx14Ptjeqf9dVYa9_7u-L6_hPktMHZ2remH2LsFKm?key=wGN05F489POzdh7HFSn1cg",[52],1440,638,[39,9551,9552],{},[802,9553,9554],{},"出典：Blender Artists",[66,9556,9558],{"id":9557},"_2-timing-and-spacing",[261,9559,9560],{},"2. タイミングとスぺーシング",[39,9562,9563],{},"アニメーションとは、かっこいいポーズを描くアートなだけではありません。タイミングとスぺーシングは、強力なジャンプであれゆっくりした歩きであれ、信じられる動きを作るために同じくらい重要です。",[39,9565,9566],{},"タイミングは、各アクションに割り当てるフレーム数だと考えてください。これはアニメーションの速度を決めます。フレーム数が少なければ動きは速くなり、増やせば遅くなります。跳ねるボールを想像してください。跳ね上がりが高いほど、その最高点と下降を滑らかに見せるためにより多くのフレームが必要になります。",[39,9568,9569],{},"フレームレート（FPS）は、1秒あたりに表示される画像の枚数です。タイミングの土台となります。",[39,9571,9572],{},"スぺーシングは、フレーム間でオブジェクトが移動する距離のことです。スぺーシングはタイミングとセットで働き、重さや速さの錯覚を作ります。フレーム間の距離が大きいほど素早い動きを示し、距離が小さいほど遅く、より慎重な動作になります。",[39,9574,9575],{},"タイミングとスぺーシングは、モーションブラーと組み合わせることもできます。これにより、素早い動きの間にオブジェクトがにじむような表現が可能です。高速で走る車を想像してください。私たちの目は、クリスタルのようにくっきりしたフレームの連続ではなく、ブラーとして知覚します。",[66,9577,9579],{"id":9578},"_3-weight-and-mass",[261,9580,9581],{},"3. 重さと質量",[39,9583,9584],{},"重さと質量の違い、そして3Dソフトウェアがそれらの概念をアニメーションのツールにどう反映するかを理解すれば、オブジェクトの動きについてより適切な判断ができます。重さと質量はしばしば同じ意味として扱われますが、それぞれ別の意味を持っています。",[39,9586,9587],{},"質量とは、オブジェクトが含む物質の量です。質量は重力に関係なく一定です。地球上の巨大な岩塊と月の上のそれを想像してみてください。質量は同じでも、重力の違いにより重さは異なります。",[39,9589,9590],{},"重さは、重力によってオブジェクトに加わる力です。重い物体はより大きな重力による引力を受けるため、動かすにも止めるにも、より大きな力が必要になります。",[39,9592,9593],{},"3Dアニメーションソフトは、オブジェクトに対して直接「重さ」や「質量」のデータを保存するわけではありません。とはいえ、動きの効果を模倣するためのツールは提供しています：",[82,9595,9596,9602,9608],{},[85,9597,9598,9601],{},[261,9599,9600],{},"アニメーションクーブ（Animation Curves）"," - アニメーションクーブを調整することで、オブジェクトがどう加速し、最高速度に到達し、減速するかを制御できます。重いオブジェクトでは遅めのカーブにすると反応が鈍く遅れるようになり、軽いオブジェクトでは鋭いカーブにすると方向転換が素早く表現できます。",[85,9603,9604,9607],{},[261,9605,9606],{},"フォースフィールド（Force Fields）"," - 一部のソフトでは、重力や風といった力をオブジェクトに適用できます。これらの力はオブジェクトの動きに影響し、重さや外力が現実の物体に与える影響を模倣します。",[85,9609,9610,9613],{},[261,9611,9612],{},"物理シミュレーション（Physics Simulations）"," - 高度なソフトウェアでは、質量、重力、摩擦などの要因を考慮した物理シミュレーションを提供しています。こうしたシミュレーションは非常にリアルな動きを作れますが、セットアップに注意が必要で、計算コストも高くなりがちです。",[39,9615,9616],{},"さまざまな重さのオブジェクトがどう振る舞うかに、注意深く目を向けてください。アニメーションを物理的な現実感に基づけることは大切ですが、実際には少しの誇張が役立つことがよくあります。",[66,9618,9620],{"id":9619},"_4-inertia-momentum-and-force",[261,9621,9622],{},"4. 慣性・運動量・力",[39,9624,9625],{},"慣性、運動量、力は、物体が現実世界でどう動くかを形作る土台です。",[39,9627,9628],{},"ボウリングのボールがレーンを転がっていくところを想像してください。それは、ボウラーの手から離れた後でも動き続けます。これは慣性が働いている例です。慣性とは、物体が自身の運動状態の変化に抵抗する性質のことです。静止している物体は静止したままで、運動している物体は運動し続けます（一定の速度で、まっすぐな方向に進んでいる状態）。ただし、釣り合っていない力が加わらない限りは変わりません。慣性は、重さや徐々に止まるような挙動を描くのに役立ちます。走っているキャラクターが、瞬時に止まることはありません。彼らは少しスリップ（滑り）し、足が止まったとしても、体は前に動き続けるように見えます。",[43,9630,9632],{"className":9631},[20,46],[48,9633],{"src":9634,"className":9635,"alt":53,"loading":54,"width":9636,"height":9637},"https://lh7-us.googleusercontent.com/docsz/AD_4nXfUzHbz1NDC8yZNwvtoFPfEzr5rGEcOP9vXKTUtLyR873-Nrgpr_iqAEyTQDGiPt6xiRDadHhVZ_V2-qSPVa_7KwxoAWWkHgDvFOE9SXNAcKIJm9jC43ZjobIvZrI2wa-aykFiXSAG6xizii_4ZMjpH_qan?key=wGN05F489POzdh7HFSn1cg",[52],768,774,[39,9639,9640],{},[802,9641,9642],{},"出典：Dreamstime.com",[39,9644,9645],{},"運動量は「物体の質量 × 速度」です。言い換えると、移動する物体がどれだけの“推進力”を持っているかを示す指標です。重い物体、またはより速く動いている物体ほど、運動量は大きくなります。キャラクターがパンチを投げると、運動量が身体から拳へと移され、その結果として強い衝撃が生まれます。同様に、運動量の大きい車は自転車よりも止まるまでに時間がかかります。",[39,9647,9648],{},"力とは、物体を加速させるもののことです。これは、物体の慣性を乱して運動状態を変える押す力、または引く力です。たとえば、靴と地面の間に生じる摩擦は、走っているキャラクターを減速させる力です。キャラクターに強い力が加われば、より速く、またはより劇的な動きの変化が起こります。一方で弱い力では、わずかな揺れやぐらつき程度になるかもしれません。",[39,9650,9651],{},"あらゆる作用には、必ず同じ大きさで反対向きの反作用があります。これはニュートンの第3法則です。キャラクターがパンチを繰り出すと、腕は前方に向かって力を及ぼします（作用）。反作用として、キャラクターの身体は逆向きの力を受けて、少し後ろへ押し返されるようになります。キャラクターが剣を振るうなら、刃が物体に当たった瞬間に、わずかな反動（リコイル）を受けるはずです。",[66,9653,9655],{"id":9654},"_5-center-of-gravity",[261,9656,9657],{},"5. 重心",[39,9659,9660],{},"キャラクターを地に足のついた状態に保ち（そしてバランスを崩したときに倒れさせる）のが重力です。重心（CoG）は、物体の重さが完全に釣り合う、その特別な一点のことです。アニメーターとして私たちは、キャラクターが現実的に動き、適切なバランスを保てるように、常に重心を意識します。",[39,9662,9663],{},"重心（CoG）の位置は、アニメーションしたキャラクターが重力とどう相互作用するかに大きく影響します。",[39,9665,9666],{},"重心が支持基底の中に直接落ちている場合（キャラクターの足が地面に触れている範囲だと思ってください）、キャラクターはしっかりと釣り合った状態で立てます。これを安定平衡と呼びます。これは、静止しているキャラクターの典型的なポーズです。",[39,9668,9669],{},"もし重心が支持基底の外へ移動すると、キャラクターは不安定になり、傾いて倒れ始めます。これは、ターンに体を預けるような動きや、転倒といったダイナミックなアクションに活用できます。重心がさまざまなポーズでどう移動するかを理解すれば、自然に見える重さの移動や転びを作れます。",[66,9671,9673],{"id":9672},"_6-squash-and-stretch",[261,9674,9675],{},"6. スカッシュ＆ストレッチ",[39,9677,9678],{},"スカッシュ＆ストレッチは、動きの中でオブジェクトが変形する様子を誇張し、重さ、柔軟性、そしてユーモアの感覚を生み出す表現です。",[39,9680,9681],{},"跳ねるボールが地面に当たると、一瞬下にスカッシュし、その後に伸びて元に戻ります。私たちのアニメーションでは、このスカッシュ＆ストレッチを増幅します。たとえば、キャラクターがジャンプした瞬間に下へスカッシュし、そのまま空中ではミッドエアで伸ばす、といった具合です。全体のボリュームは保ちながら誇張を加えます。こうした誇張が、動きに命を吹き込みます。",[66,9683,9685],{"id":9684},"_7-green-screen-chroma-key",[261,9686,9687],{},"7. グリーンスクリーン / クロマキー",[39,9689,9690],{},"キャラクターがサンゴ礁の中を泳ぐアニメーションを作るとしましょう。小さなサンゴ礁のセットを作る代わりに、グリーンスクリーンを使えば、キャラクターを緑の背景の前で撮影できます。編集の段階で、この緑の背景は、思い描いていた鮮やかな水中シーンに置き換えられます。",[43,9692,9694],{"className":9693},[20,46],[48,9695],{"src":9696,"className":9697,"alt":53,"loading":54,"width":9698,"height":9699},"https://lh7-us.googleusercontent.com/docsz/AD_4nXdp_3vZIuY5XbYM97M1JQDVswcx3G7pivCPDnLpfqkd1hC1bDVWyiUcYDQbI8q-xAreAvQBVU6DRpG9CJo__fIxWNZQqy_1gOeG99wJG10POKAHgRwGWZ7H4gZphhQFi94CS7TbQS4XYZDRGGRsnn33Wq_v?key=wGN05F489POzdh7HFSn1cg",[52],664,840,[39,9701,9702],{},[802,9703,9704],{},"画像：Wikipedia",[39,9706,9707],{},"でも、なぜ緑なのでしょう？その“魔法”は色の区別にあります。緑は、通常キャラクターや物体に使われる色の範囲とぶつかりにくいのです。これにより、デジタル制作ソフトが撮影した要素（あなたのキャラクター）を緑の背景から簡単に分離できます。アニメーションシーケンスを読み込み、クロマキーで緑の背景色を特定し、緑の背景を別のものに置き換えるだけです。",[66,9709,9710],{"id":4755},[261,9711,4756],{},[39,9713,9714],{},"物理・メカニクスの原理を理解することは、信じられる、そして魅力的なアニメーションを作るために欠かせません。これらは、リアルな動き、重さの分配、そして環境との相互作用の土台を提供します。これらの概念をマスターすることで、アニメーターはキャラクターに命を吹き込み、心を惹きつけるストーリーを語ることができます。",[39,9716,9717],{},"しかしアニメーションは、冷たく硬い物理の原理に従うだけのものではありません。創造性と表現が息づくアートフォームです。アニメーターはしばしば、動きを（あるいはかなりはっきりと）わずかに誇張したり、オブジェクトをスカッシュ＆ストレッチさせたりして、キャラクターの特性を強調したり、感情を呼び起こしたり、ユーモアを注入したりします。こうした“ひねり”は、物理をしっかり理解したうえで行うからこそ、ロボット的な模倣と、本当に魅力的なアニメ表現を分ける要素になります。",[39,9719,9720,9723,9731,9737],{},[802,9721,9722],{},"ぜひ ",[231,9724,9726],{"href":9725},"https://discord.com/invite/VbCxtKN?ref=blog.cg-wire.com",[802,9727,7018,9728],{},[6214,9729,9730],{},"1000人以上の ",[802,9732,9733,9736],{},[6214,9734,9735],{},"アニメーションのプロ","が集まるDiscordコミュニティ",[802,9738,9739],{},"で挨拶に来てください！",{"title":53,"searchDepth":336,"depth":336,"links":9741},[9742,9743,9744,9745,9746,9747,9748,9749],{"id":9525,"depth":336,"text":9528},{"id":9557,"depth":336,"text":9560},{"id":9578,"depth":336,"text":9581},{"id":9619,"depth":336,"text":9622},{"id":9654,"depth":336,"text":9657},{"id":9672,"depth":336,"text":9675},{"id":9684,"depth":336,"text":9687},{"id":4755,"depth":336,"text":4756},"https://images.unsplash.com/photo-1718536669027-4ebd2b932ece?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDR8fHx8fHwyfHwxNzE4NzQ2MDE1fA&ixlib=rb-4.0.3&q=80&w=2000",{"updated_at":9752,"featured_at":350,"visibility":351},"2026-02-20T06:04:47.000+01:00","/blog-i18n/ja/physics-and-mechanics-principles-in-animation","2024-06-19T10:39:57.000+02:00",{"title":9512,"description":9519},"アニメーションにおける物理・力学の原則","blog-i18n/ja/physics-and-mechanics-principles-in-animation/index",[9759,9760],{"id":6909,"name":6910,"slug":6911,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":6912},{"id":9761,"name":9762,"slug":9763,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":9764},"64875aac7093d20001dbafe6","Animation Glossary","glossary","https://blog.cg-wire.com/tag/glossary/","9ObLgf7sgpgWzBW3T3FqzHBrFvy-7GEp5DsFZ3TrMGU",{"id":9767,"title":9768,"authors":9769,"body":9771,"description":9775,"extension":346,"feature_image":10019,"html":11,"meta":10020,"navigation":352,"path":10023,"published_at":10024,"seo":10025,"slug":10026,"stem":10027,"tags":10028,"__hash__":10030,"updated_at":10021,"では、いったいプロセスの中で何が起きているのでしょうか？この記事では、それを明らかにしていきます。\n\nコンセプトアーティストとは\nコンセプトアーティストは、アニメーションのキャラクターや環境に\u003Cstrong>ビジュアルの方向性を与えるためのデザインとイラストを制作します\u003C/strong>。\nたとえば『Avatar":10022,"featured_at":350,"visibility":351},"blog/blog-i18n/ja/concept-in-animation-definition-process-and-challenges/index.md","アニメーションにおけるコンセプト（2026）：定義、プロセス、課題",[9770],{"id":2889,"name":2678,"slug":2890,"profile_image":2891,"cover_image":11,"bio":2892,"website":11,"location":2030,"facebook":11,"twitter":2031,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":2893},{"type":14,"value":9772,"toc":10006},[9773,9776,9779,9783,9789,9792,9801,9805,9812,9826,9833,9837,9840,9850,9857,9861,9865,9868,9888,9891,9895,9898,9917,9920,9924,9935,9938,9942,9948,9959,9963,9966,9986,9989,9991,9994,9997],[39,9774,9775],{},"すべてのアニメーション制作は「アイデア」から始まります。次にアニメーション制作プロセスが、これらのアイデアを統合して、まとまりのある物語へと仕上げていきます。しかし、アイデアとストーリーテリングの間にあるギャップを埋めるのは簡単ではありません。そこで活躍するのがコンセプトアーティストです。アイデアや脚本を、魅力的なビジュアルへと変換してくれます。",[39,9777,9778],{},"では、いったいプロセスの中で何が起きているのでしょうか？この記事では、それを明らかにしていきます。",[66,9780,9782],{"id":9781},"what%E2%80%99s-a-concept-artist","コンセプトアーティストとは",[39,9784,9785,9786,5576],{},"コンセプトアーティストは、アニメーションのキャラクターや環境に",[261,9787,9788],{},"ビジュアルの方向性を与えるためのデザインとイラストを制作します",[39,9790,9791],{},"たとえば『Avatar: The Last Airbender（アバター 伝説の少年アン）』というシリーズを考えてみましょう。コンセプトアーティストは、シリーズの見た目や雰囲気を伝えるために、細かなスケッチ、ペインティング、デジタルイラストを制作します。主要キャラクターはどんな見た目か？各国はどのように表現されているのか？動植物はどうなっているのか？などです。右側に、コンセプト段階でのアパ（空飛ぶバイソン）の姿と、後の制作段階で左に見える姿を比較できるので、確かめてみてください：",[43,9793,9795],{"className":9794},[20,46],[48,9796],{"src":9797,"className":9798,"alt":53,"loading":54,"width":9799,"height":9800},"https://lh6.googleusercontent.com/MC4c-q1S2jHEsjpcKSoU2P0sns4iIYffR5e6oXmZFSBhxsGJ81qn9lT3wNq0IWCOD_cUt2QWy6FCULcC2cT3QDQ8p_XUEOYZRPDc2SfBqXw3CMaUTHsxc9Wwjqule2lswIVnj30TXSzHXmbEVfncEh4",[52],624,312,[66,9802,9804],{"id":9803},"why-is-it-important-in-animation","アニメーションにおいて重要なのはなぜですか",[39,9806,9807,9808,9811],{},"プリプロダクションの段階で、",[261,9809,9810],{},"コンセプトアートはプロジェクトの可能性を提示します","。ビジュアルを通じて投資家やその他の関係者へ創造的な方向性を伝え、プロジェクトへの確信を高めることで、より良い資金支援と、スムーズな制作プロセスにつながります。",[39,9813,9814,9817,9818,9821,9822,9825],{},[261,9815,9816],{},"コンセプトアーティストは、アイデアをビジュアルコンセプトに翻訳することで、アニメーションプロジェクトの視覚的な方向性を確立します","。それにより、制作チームは",[261,9819,9820],{},"プロジェクト全体をより効果的に可視化し計画できます","。潜在的なデザイン上の問題、不整合、課題などを早期に特定できるため、高コストな制作フェーズに入る前に、それらを対応して解決することが可能です。複数回の試作とフィードバックループを通じて、コンセプトアーティストはデザインを微調整し、制作にリソースを投じる前に必要な修正を行えます。これは",[261,9823,9824],{},"後から高額な変更や手戻りを避けるのに役立ちます","。たとえば、キャラクターデザインが十分に練られていない場合、リギングやアニメーションの段階で難しさが生じ、遅延や追加コストにつながることがあります。",[39,9827,9828,9829,9832],{},"さらに後の段階では、",[261,9830,9831],{},"詳細なコンセプトアートが、アセット作成のパイプライン全体にわたる参照情報になります","。モデル担当者やアニメーターに対して明確なビジュアルガイドラインを提供し、プリプロダクションおよび制作中に起こりがちな当て推量や潜在的なミスを減らします。",[66,9834,9836],{"id":9835},"who-is-involved","誰が関わるのか",[39,9838,9839],{},"コンセプトアーティストはアイデアをビジュアルに翻訳する責任を負っていますが、ひとりで活動しているわけではありません。",[39,9841,9842,9845,9846,9849],{},[261,9843,9844],{},"アートディレクター","がプロセス全体を監督し、制作物がプロジェクト全体のビジョンと一致しているかを確認します。",[261,9847,9848],{},"プロダクションデザイナー","は、カラーパレット、ライティング、構図に関する判断を行うことで、全体的な美的方向性を定義するのを手助けします。",[39,9851,9852,9853,9856],{},"プリプロダクションの終盤では、",[261,9854,9855],{},"ストーリーボードアーティスト","がコンセプトアーティストとともに物語とその展開を可視化します。主要な場面、カメラアングル、ショット構図を描くための連続したパネルを作成します。これらのストーリーボードによって、制作チームとディレクターは、制作フェーズに向けてナラティブの流れ、テンポ、プロジェクト全体の構造を可視化し、計画することができます。",[66,9858,9860],{"id":9859},"the-concept-artist%E2%80%99s-process","コンセプトアーティストのプロセス",[933,9862,9864],{"id":9863},"research","リサーチ",[39,9866,9867],{},"まず、コンセプトアーティストは、プロジェクトのニーズと目的を理解し、リサーチとデザインの着想を集める必要があります。",[82,9869,9870,9876,9882],{},[85,9871,9872,9875],{},[261,9873,9874],{},"プロジェクトブリーフ"," - プロジェクトブリーフはコンセプトアーティストにとっての道しるべとして機能し、デザインがプロジェクトのビジョンと要件に沿っていることを保証します。全体のビジョンに関する目標の概要、要件、その他の重要情報が含まれています。",[85,9877,9878,9881],{},[261,9879,9880],{},"脚本"," - プロジェクトブリーフから全体像を把握した後、コンセプトアーティストは脚本から主要な要素―ストーリー、キャラクター、環境、ムード、ビジュアルスタイル―を抽出できます。",[85,9883,9884,9887],{},[261,9885,9886],{},"リサーチを行う"," - リサーチ段階では、プロジェクトのテーマ、舞台設定、アート上の参照に関連する着想を集めます。これは、本、映画、アート作品、そして現実世界の参照など、さまざまなソースを探ることで行います。",[39,9889,9890],{},"リサーチ段階は、コンセプトアートのデザインを支えるビジュアルライブラリを育てるための機会です。",[933,9892,9894],{"id":9893},"thumbnail-sketches","サムネイルスケッチ",[39,9896,9897],{},"アイデア出しのプロセスは、素早い小規模のドローイングによって、アイデアの迅速な探索と試行を可能にするサムネイルスケッチを作ることから始まります：",[82,9899,9900,9905,9911],{},[85,9901,9902,5576],{},[261,9903,9904],{},"キャラクター、環境、プロップのさまざまな構図、ポーズ、バリエーションを探る",[85,9906,9907,9908,5576],{},"小さなドローイングを",[261,9909,9910],{},"素早くフィードバック収集のために使う",[85,9912,9913,9916],{},[261,9914,9915],{},"デザインの本質","と基本要素を捉える。",[39,9918,9919],{},"想像力は無限なので、サムネイルスケッチはコンセプトアーティストが、さらに開発する前にコンセプトを素早く絞り込み、検証するのに役立ちます。これは特に、エピソード内でアニメーションするキャラクターや環境が多数あり、それぞれに独自のデザインが必要になる場合に重要です。",[933,9921,9923],{"id":9922},"rough-sketches","ラフスケッチ",[39,9925,9926,9927,9930,9931,9934],{},"ラフスケッチは、キャラクター、環境、その他のアニメーション対象について、",[261,9928,9929],{},"主要なデザイン要素、プロポーション、ディテールを捉える","ことで、初期のアイデアを洗練させます。また、",[261,9932,9933],{},"ビジュアルの一貫性を追加することで","、初期コンセプトを固めていきます。",[39,9936,9937],{},"ラフは、残りのコンセプト作成フェーズの強固な土台になるため正しく仕上げることが重要ですが、ディテールにあまり時間をかけすぎるわけにもいきません―結局のところ制作フェーズではないのです。",[933,9939,9941],{"id":9940},"detailed-concept-art","詳細なコンセプトアート",[39,9943,9944,9945,5576],{},"洗練された線描き、シェーディング、カラーなどを含む詳細なコンセプトアート―キャラクターの見た目、表情、衣装、その他の重要なディテールを示すもの―は、",[261,9946,9947],{},"制作フェーズのガイドとして依頼でき、当て推量を避けられます",[39,9949,9950,9951,9954,9955,9958],{},"詳細なコンセプトアートは、プリプロダクションの別の重要要素である",[261,9952,9953],{},"ストーリーボードと混同しないようにすべきです","。ストーリーボードは、キャラクターの動きやシーンの流れに焦点を当てます。そのため、詳細なコンセプトアートはたとえば",[261,9956,9957],{},"環境のムード、ライティング、主要な特徴を描くのに重要です","。しかしキャラクターについては、表情やポーズを伝えるために、ストーリーボードもまた欠かせません。",[933,9960,9962],{"id":9961},"collaboration-with-the-production-team","制作チームとの連携",[39,9964,9965],{},"承認後、コンセプトアーティストは場合によってはストーリーボードアーティスト、モデラー、アニメーターと協力し、ビジュアルデザインをアニメーションへと翻訳するのを支援できます。具体的には：",[82,9967,9968,9973,9980],{},[85,9969,9970,5576],{},[261,9971,9972],{},"デザイン要素や意図について追加のサポートと明確化を行う",[85,9974,9975,9976,9979],{},"実装フェーズで生じうる",[261,9977,9978],{},"技術的または創造的な課題に対応するため","に、制作チームと密に連携する。",[85,9981,9982,9983,5576],{},"制作プロセス全体を通してアートスタイルの一貫性を保つために、",[261,9984,9985],{},"効果的なコミュニケーションと連携を維持する",[39,9987,9988],{},"コンセプト開発はプリプロダクションの一部ですが、それは要件が変わらないという意味でもなく、ビジュアルデザインがモデリングに十分に明確という意味でもありません。コンセプトアーティストとの良好なコミュニケーションが、プロジェクトを軌道に乗せる鍵です！",[66,9990,4756],{"id":4755},[39,9992,9993],{},"コンセプトアーティストは、キャラクター、環境、そしてナラティブに命を吹き込むための最初の一歩を担い、アニメーションプロジェクトを特徴づける魅力的な体験を形作ります。リサーチ、スケッチ、そして洗練のための緻密なプロセスを通じて、コンセプトアーティストは制作チームに対して明確なビジュアルの道しるべを提供します。",[39,9995,9996],{},"連携はコンセプトアーティストの仕事の大きな部分を占めます。さまざまな専門家と協力し、フィードバックをやり取りし、その結果として生まれた変更を反映する必要があります。Kitsuのようなツールは、タスクとアセット管理を効率化することで、かなりの時間を節約できます。",[39,9998,9999],{},[802,10000,10001,10002,10005],{},"あなたがコンセプトアーティスト、アニメーションの学生、あるいは単にアニメーション業界とそのワークフローについて学ぶのが好きな方なら、",[231,10003,10004],{"href":9725},"私たちのDiscordコミュニティに参加しませんか","。ここでは、同じ志を持つアーティストとつながり、自分の作品を共有し、業界の他の人から学ぶことができます。",{"title":53,"searchDepth":336,"depth":336,"links":10007},[10008,10009,10010,10011,10018],{"id":9781,"depth":336,"text":9782},{"id":9803,"depth":336,"text":9804},{"id":9835,"depth":336,"text":9836},{"id":9859,"depth":336,"text":9860,"children":10012},[10013,10014,10015,10016,10017],{"id":9863,"depth":1088,"text":9864},{"id":9893,"depth":1088,"text":9894},{"id":9922,"depth":1088,"text":9923},{"id":9940,"depth":1088,"text":9941},{"id":9961,"depth":1088,"text":9962},{"id":4755,"depth":336,"text":4756},"https://images.unsplash.com/photo-1456086272160-b28b0645b729?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8c2VhcmNofDN8fHBhaW50aW5nfGVufDB8fHx8MTY4OTU5OTE1OHww&ixlib=rb-4.0.3&q=80&w=2000",{"updated_at":10021,"では、いったいプロセスの中で何が起きているのでしょうか？この記事では、それを明らかにしていきます。\n\nコンセプトアーティストとは\nコンセプトアーティストは、アニメーションのキャラクターや環境に\u003Cstrong>ビジュアルの方向性を与えるためのデザインとイラストを制作します\u003C/strong>。\nたとえば『Avatar":10022,"featured_at":350,"visibility":351},"2026-03-26T10:31:51.000+01:00","The Last Airbender（アバター 伝説の少年アン）』というシリーズを考えてみましょう。コンセプトアーティストは、シリーズの見た目や雰囲気を伝えるために、細かなスケッチ、ペインティング、デジタルイラストを制作します。主要キャラクターはどんな見た目か？各国はどのように表現されているのか？動植物はどうなっているのか？などです。右側に、コンセプト段階でのアパ（空飛ぶバイソン）の姿と、後の制作段階で左に見える姿を比較できるので、確かめてみてください：\u003C/p>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https://lh6.googleusercontent.com/MC4c-q1S2jHEsjpcKSoU2P0sns4iIYffR5e6oXmZFSBhxsGJ81qn9lT3wNq0IWCOD_cUt2QWy6FCULcC2cT3QDQ8p_XUEOYZRPDc2SfBqXw3CMaUTHsxc9Wwjqule2lswIVnj30TXSzHXmbEVfncEh4\" class=\"kg-image\" alt loading=\"lazy\" width=\"624\" height=\"312\">\u003C/figure>\u003Ch2 id=\"why-is-it-important-in-animation\">アニメーションにおいて重要なのはなぜですか\u003C/h2>\u003Cp>プリプロダクションの段階で、\u003Cstrong>コンセプトアートはプロジェクトの可能性を提示します\u003C/strong>。ビジュアルを通じて投資家やその他の関係者へ創造的な方向性を伝え、プロジェクトへの確信を高めることで、より良い資金支援と、スムーズな制作プロセスにつながります。\u003C/p>\u003Cp>\u003Cstrong>コンセプトアーティストは、アイデアをビジュアルコンセプトに翻訳することで、アニメーションプロジェクトの視覚的な方向性を確立します\u003C/strong>。それにより、制作チームは\u003Cstrong>プロジェクト全体をより効果的に可視化し計画できます\u003C/strong>。潜在的なデザイン上の問題、不整合、課題などを早期に特定できるため、高コストな制作フェーズに入る前に、それらを対応して解決することが可能です。複数回の試作とフィードバックループを通じて、コンセプトアーティストはデザインを微調整し、制作にリソースを投じる前に必要な修正を行えます。これは\u003Cstrong>後から高額な変更や手戻りを避けるのに役立ちます\u003C/strong>。たとえば、キャラクターデザインが十分に練られていない場合、リギングやアニメーションの段階で難しさが生じ、遅延や追加コストにつながることがあります。\u003C/p>\u003Cp>さらに後の段階では、\u003Cstrong>詳細なコンセプトアートが、アセット作成のパイプライン全体にわたる参照情報になります\u003C/strong>。モデル担当者やアニメーターに対して明確なビジュアルガイドラインを提供し、プリプロダクションおよび制作中に起こりがちな当て推量や潜在的なミスを減らします。\u003C/p>\u003Ch2 id=\"who-is-involved\">誰が関わるのか\u003C/h2>\u003Cp>コンセプトアーティストはアイデアをビジュアルに翻訳する責任を負っていますが、ひとりで活動しているわけではありません。\u003C/p>\u003Cp>\u003Cstrong>アートディレクター\u003C/strong>がプロセス全体を監督し、制作物がプロジェクト全体のビジョンと一致しているかを確認します。\u003Cstrong>プロダクションデザイナー\u003C/strong>は、カラーパレット、ライティング、構図に関する判断を行うことで、全体的な美的方向性を定義するのを手助けします。\u003C/p>\u003Cp>プリプロダクションの終盤では、\u003Cstrong>ストーリーボードアーティスト\u003C/strong>がコンセプトアーティストとともに物語とその展開を可視化します。主要な場面、カメラアングル、ショット構図を描くための連続したパネルを作成します。これらのストーリーボードによって、制作チームとディレクターは、制作フェーズに向けてナラティブの流れ、テンポ、プロジェクト全体の構造を可視化し、計画することができます。\u003C/p>\u003Ch2 id=\"the-concept-artist%E2%80%99s-process\">コンセプトアーティストのプロセス\u003C/h2>\u003Ch3 id=\"research\">リサーチ\u003C/h3>\u003Cp>まず、コンセプトアーティストは、プロジェクトのニーズと目的を理解し、リサーチとデザインの着想を集める必要があります。\u003C/p>\u003Cul>\u003Cli>\u003Cstrong>プロジェクトブリーフ\u003C/strong> - プロジェクトブリーフはコンセプトアーティストにとっての道しるべとして機能し、デザインがプロジェクトのビジョンと要件に沿っていることを保証します。全体のビジョンに関する目標の概要、要件、その他の重要情報が含まれています。\u003C/li>\u003Cli>\u003Cstrong>脚本\u003C/strong> - プロジェクトブリーフから全体像を把握した後、コンセプトアーティストは脚本から主要な要素―ストーリー、キャラクター、環境、ムード、ビジュアルスタイル―を抽出できます。\u003C/li>\u003Cli>\u003Cstrong>リサーチを行う\u003C/strong> - リサーチ段階では、プロジェクトのテーマ、舞台設定、アート上の参照に関連する着想を集めます。これは、本、映画、アート作品、そして現実世界の参照など、さまざまなソースを探ることで行います。\u003C/li>\u003C/ul>\u003Cp>リサーチ段階は、コンセプトアートのデザインを支えるビジュアルライブラリを育てるための機会です。\u003C/p>\u003Ch3 id=\"thumbnail-sketches\">サムネイルスケッチ\u003C/h3>\u003Cp>アイデア出しのプロセスは、素早い小規模のドローイングによって、アイデアの迅速な探索と試行を可能にするサムネイルスケッチを作ることから始まります：\u003C/p>\u003Cul>\u003Cli>\u003Cstrong>キャラクター、環境、プロップのさまざまな構図、ポーズ、バリエーションを探る\u003C/strong>。\u003C/li>\u003Cli>小さなドローイングを\u003Cstrong>素早くフィードバック収集のために使う\u003C/strong>。\u003C/li>\u003Cli>\u003Cstrong>デザインの本質\u003C/strong>と基本要素を捉える。\u003C/li>\u003C/ul>\u003Cp>想像力は無限なので、サムネイルスケッチはコンセプトアーティストが、さらに開発する前にコンセプトを素早く絞り込み、検証するのに役立ちます。これは特に、エピソード内でアニメーションするキャラクターや環境が多数あり、それぞれに独自のデザインが必要になる場合に重要です。\u003C/p>\u003Ch3 id=\"rough-sketches\">ラフスケッチ\u003C/h3>\u003Cp>ラフスケッチは、キャラクター、環境、その他のアニメーション対象について、\u003Cstrong>主要なデザイン要素、プロポーション、ディテールを捉える\u003C/strong>ことで、初期のアイデアを洗練させます。また、\u003Cstrong>ビジュアルの一貫性を追加することで\u003C/strong>、初期コンセプトを固めていきます。\u003C/p>\u003Cp>ラフは、残りのコンセプト作成フェーズの強固な土台になるため正しく仕上げることが重要ですが、ディテールにあまり時間をかけすぎるわけにもいきません―結局のところ制作フェーズではないのです。\u003C/p>\u003Ch3 id=\"detailed-concept-art\">詳細なコンセプトアート\u003C/h3>\u003Cp>洗練された線描き、シェーディング、カラーなどを含む詳細なコンセプトアート―キャラクターの見た目、表情、衣装、その他の重要なディテールを示すもの―は、\u003Cstrong>制作フェーズのガイドとして依頼でき、当て推量を避けられます\u003C/strong>。\u003C/p>\u003Cp>詳細なコンセプトアートは、プリプロダクションの別の重要要素である\u003Cstrong>ストーリーボードと混同しないようにすべきです\u003C/strong>。ストーリーボードは、キャラクターの動きやシーンの流れに焦点を当てます。そのため、詳細なコンセプトアートはたとえば\u003Cstrong>環境のムード、ライティング、主要な特徴を描くのに重要です\u003C/strong>。しかしキャラクターについては、表情やポーズを伝えるために、ストーリーボードも欠かせません。\u003C/p>\u003Ch3 id=\"collaboration-with-the-production-team\">制作チームとの連携\u003C/h3>\u003Cp>承認後、コンセプトアーティストは場合によってはストーリーボードアーティスト、モデラー、アニメーターと協力し、ビジュアルデザインをアニメーションへと翻訳するのを支援できます。たとえば：\u003C/p>\u003Cul>\u003Cli>\u003Cstrong>デザイン要素や意図について追加のサポートと明確化を行う\u003C/strong>。\u003C/li>\u003Cli>実装フェーズで生じうる\u003Cstrong>技術的または創造的な課題に対応するため\u003C/strong>に、制作チームと密に連携する。\u003C/li>\u003Cli>制作プロセス全体を通してアートスタイルの一貫性を保つために、\u003Cstrong>効果的なコミュニケーションと連携を維持する\u003C/strong>。\u003C/li>\u003C/ul>\u003Cp>コンセプト開発はプリプロダクションの一部ですが、それは要件が変わらないという意味でもなく、ビジュアルデザインがモデリングに十分に明確という意味でもありません。コンセプトアーティストとの良好なコミュニケーションが、プロジェクトを軌道に乗せる鍵です！\u003C/p>\u003Ch2 id=\"conclusion\">結論\u003C/h2>\u003Cp>コンセプトアーティストは、キャラクター、環境、そしてナラティブに命を吹き込むための最初の一歩を担い、アニメーションプロジェクトを特徴づける魅力的な体験を形作ります。リサーチ、スケッチ、そして洗練のための緻密なプロセスを通じて、コンセプトアーティストは制作チームに対して明確なビジュアルの道しるべを提供します。\u003C/p>\u003Cp>連携はコンセプトアーティストの仕事の大きな部分を占めます。さまざまな専門家と協力し、フィードバックをやり取りし、その結果として生まれた変更を反映する必要があります。Kitsuのようなツールは、タスクとアセット管理を効率化することで、かなりの時間を節約できます。\u003C/p>\u003Cp>\u003Cem>あなたがコンセプトアーティスト、アニメーションの学生、あるいは単にアニメーション業界とそのワークフローについて学ぶのが好きな方なら、\u003Ca href=\"https://discord.com/invite/VbCxtKN?ref=blog.cg-wire.com\">私たちのDiscordコミュニティに参加しませんか\u003C/a>。ここでは、同じ志を持つアーティストとつながり、自分の作品を共有し、業界の他の人から学ぶことができます。\u003C/em>\u003C/p>","/blog-i18n/ja/concept-in-animation-definition-process-and-challenges","2023-07-24T15:07:16.000+02:00",{"title":9768,"description":9775},"アニメーションのコンセプト：定義・プロセス・課題","blog-i18n/ja/concept-in-animation-definition-process-and-challenges/index",[10029],{"id":9761,"name":9762,"slug":9763,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":9764},"50vExUqmE_4y29zIH-ZTrLcc3NWFoNK5bAAVKTcwvf4",{"id":10032,"title":10033,"authors":10034,"body":10036,"description":10321,"extension":346,"feature_image":10322,"html":11,"meta":10323,"navigation":352,"path":10325,"published_at":10326,"seo":10327,"slug":10328,"stem":10329,"tags":10330,"__hash__":10332,"updated_at":10324,"featured_at":350,"visibility":351},"blog/blog-i18n/ja/environment-animation/index.md","アニメーションにおける環境 (2026)：定義、プロセス、課題",[10035],{"id":2889,"name":2678,"slug":2890,"profile_image":2891,"cover_image":11,"bio":2892,"website":11,"location":2030,"facebook":11,"twitter":2031,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":2893},{"type":14,"value":10037,"toc":10307},[10038,10045,10048,10052,10058,10061,10064,10071,10078,10085,10087,10090,10099,10118,10121,10125,10129,10132,10152,10160,10164,10167,10187,10195,10203,10207,10218,10226,10229,10233,10236,10243,10247,10250,10254,10257,10282,10290,10292,10295,10298],[39,10039,10040,10041,10044],{},"没入感のある物語を作るには、アニメーション制作スタジオには優れたキャラクターが必要なだけでなく、しっかりしたワールド構築も欠かせません。そして、質の高いワールド構築には細部への強いこだわりが必要なため、リアリティを目指すのかファンタジーを目指すのかに関わらず、正しく仕上げるにはかなりの時間を要します。だからこそ",[261,10042,10043],{},"アニメーション環境を作ることは、しばしばチーム全体の仕事になります","。 ",[39,10046,10047],{},"この記事では、環境アーティストの役割について解説します。アニメーションのパイプラインの中でどのように位置づくのか、なぜ重要なのか、そして創造プロセスの背後にあるものは何なのかを掘り下げます。",[66,10049,10051],{"id":10050},"what%E2%80%99s-an-environment-artist","環境アーティストとは",[39,10053,10054,10057],{},[261,10055,10056],{},"環境アーティストは、キャラクターが相互作用するシーンの環境を構成するデジタル小道具や背景を設計します","。彼らは環境に特化した3Dモデラーです。",[39,10059,10060],{},"たとえばファンタジーの世界を舞台にしたアニメーションでは、環境アーティストが3D環境上で城、魔法の森、洞窟などを作ることを担当します。",[66,10062,10063],{"id":9803},"アニメーションにおいてなぜ重要なのか",[39,10065,10066,10067,10070],{},"環境は",[261,10068,10069],{},"物語とキャラクターを支えます","。それは人物像、旅路、対立を際立たせる鏡のような役割を果たします。",[39,10072,10073,10074,10077],{},"それがなければ、アニメーションの世界は味気なく、没入感のないものに見えてしまいます。",[261,10075,10076],{},"異国情緒あふれる植物であれ、美しい建築であれ","、環境における小さなディテールこそが、物語をより説得力のあるものにします。",[39,10079,10080,10081,10084],{},"また、環境が生み出す雰囲気は",[261,10082,10083],{},"プロジェクトのトーンとビジュアルアイデンティティ","を決定づけます。",[66,10086,9836],{"id":9835},[39,10088,10089],{},"膨大な作業量のため、環境アーティストはひとりで仕事をしません。",[39,10091,10092,10095,10096,10098],{},[261,10093,10094],{},"コンセプトアーティスト","は、環境のための初期デザインを作ることを担当します。彼らは",[261,10097,9844],{},"やアーティストと密に連携し、3D化される前の段階で、環境のアート面での方向性、ムード、全体的な見た目を確立します。",[39,10100,10101,10102,10105,10106,10109,10110,10113,10114,10117],{},"その後、",[261,10103,10104],{},"モデリングチーム","（環境アーティストを含む）が、コンセプトアートを受け取り、専用ソフトウェアを使って3Dモデルへと落とし込みます。建物や木・岩などの自然要素から、家具や小道具のような小さなディテールまで、必要な要素はすべてここに含まれます。",[261,10107,10108],{},"テクスチャアーティスト","は、モデラーが作成した3Dモデルに色、質感、サーフェスの詳細を追加し、",[261,10111,10112],{},"ライティングアーティスト","は光源を配置し、その強度を調整し、希望する雰囲気を作るために光の色や方向を選びます。最後に",[261,10115,10116],{},"エフェクトアーティスト","が、環境に命を吹き込むためのビジュアルエフェクトを制作します――天候要素（雨、雪、霧など）、空気感のあるエフェクト（太陽光の筋、ボリューメトリックライト）、パーティクルエフェクト（火、煙、ほこり）などです。",[39,10119,10120],{},"アートディレクターは環境アートチームに対して全体の方向性を提示し、制作のあらゆる場面で連携しながら、アーティスティックなビジョンとスタイルを維持するためのフィードバックを行い、最終判断を下します。",[66,10122,10124],{"id":10123},"the-environment-artist%E2%80%99s-process","環境アーティストのプロセス",[933,10126,10128],{"id":10127},"concept-design","コンセプトデザイン",[39,10130,10131],{},"コンセプトデザインは、環境のビジュアル方向性の土台を築きます。",[82,10133,10134,10140,10146],{},[85,10135,10136,10139],{},[261,10137,10138],{},"初期ブリーフ"," - 環境アーティストはアートディレクターや関係者と協力し、プロジェクトのビジョン、スタイル、物語上の要件を理解します。",[85,10141,10142,10145],{},[261,10143,10144],{},"リサーチ ","- デザインプロセスを記録するためにリファレンスやインスピレーションを集めます。これらのリファレンスが、環境の見た目や雰囲気を定義します。",[85,10147,10148,10151],{},[261,10149,10150],{},"コンセプトアート"," - 環境チームはコンセプトアーティストと密に連携し、初期のスケッチ、ムードボード、その他のコンセプトアート制作物を開発します。",[39,10153,10154,10155,10159],{},"環境制作はアニメーションの制作パイプライン全体にまたがる非常に協業的なプロセスであるため、私たちは、コンセプト開発の段階からすぐに資産の共有、フィードバックの受け取り、1か所でのデザイン反復を行い、全員の認識を揃えることを目的にするために、",[231,10156,10158],{"href":10157},"https://www.cg-wire.com/kitsu?ref=blog.cg-wire.com","私たちのソフトウェアKitsu","を使用する数え切れないほどのアニメーションスタジオと協業してきました。",[933,10161,10163],{"id":10162},"layout-breakdown","レイアウト＆ブレイクダウン",[39,10165,10166],{},"環境アーティストは、主要な要素で構造と構図を確立することで、モデリング作業を開始します。",[82,10168,10169,10175,10181],{},[85,10170,10171,10174],{},[261,10172,10173],{},"ブロックアウト"," - 基本的な幾何学形状を使って全体のレイアウトの土台を作る、環境のラフな3D表現。",[85,10176,10177,10180],{},[261,10178,10179],{},"主要要素の配置計画"," - 建物、地形、環境内の重要な特徴など。",[85,10182,10183,10186],{},[261,10184,10185],{},"ブレイクダウン"," - ブレイクダウンは、後続の工程を導くためのモデリング対象アセットの詳細なリストです。",[39,10188,10189,10190,10194],{},"Kitsu には、環境アセットのためのブレイクダウンやキャスティング情報を管理する機能も",[231,10191,10193],{"href":10192},"https://www.cg-wire.com/casting-management?ref=blog.cg-wire.com","用意されています","。タイプ別にキャストされたアセットを整理してセットを作成したり、小道具をキャラクターに紐づけたり、シーン構築のプロセスをより効率化するために必要に応じてワークフローをカスタマイズしたりできます。",[43,10196,10198],{"className":10197},[20,46],[48,10199],{"src":10200,"className":10201,"alt":53,"loading":54,"width":9799,"height":10202},"https://lh4.googleusercontent.com/2lZvs2WPFoT-fyEJHsQBBb4WgXZL7vQ9grAzXPG5eOVNEfyAgw697JcGNXAOPiWn7dqDvyGCgMa7vhCCzsaui1imH8kcxre1i8ZNN0bfiieSa5tEALyrsRzVxremMeqxDSsG6q3yzMutV2GwXR9MBFA",[52],351,[933,10204,10206],{"id":10205},"modeling","モデリング",[39,10208,10209,10212,10213,10217],{},[261,10210,10211],{},"モデリングは、詳細な3Dモデルで環境に命を吹き込みます。"," Blender のようなデジタルコンテンツ制作ツールを使って、環境を構成するジオメトリや構造を構築します。その後、必要とされる各建築要素、自然の特徴、小道具、その他のオブジェクトを彫刻したり生成したりするために、さまざまな手法が用いられます。",[231,10214,10216],{"href":10215},"https://blog.cg-wire.com/3d-modeling-animation/","3Dモデリングに関する専用記事","で、プロセスや手法について詳しく学べます。",[39,10219,10220,10221,10225],{},"モデリングが表す作業量は膨大なため、環境アーティストは Kitsu の",[231,10222,10224],{"href":10223},"https://www.cg-wire.com/production-tracker?ref=blog.cg-wire.com","タスク管理機能","を活用して、自分の作業を効果的に整理し、優先順位を付けています。割り当てられたタスク、締め切り、プロジェクトのマイルストーンを確認できるため、納品物の進行状況を常に把握できます。Webプラットフォームにより、自分の進捗を追跡したり、タスクのステータスを更新したり、割り当てられたタスクに関連する変更や更新に関する通知を受け取ったりできます。",[39,10227,10228],{},"Kitsu はまた、バージョン管理によって環境アセットをチームが簡単に整理し、時間の経過とともにアクセスし追跡しやすくすることも可能です。3Dモデル、テクスチャ、変更内容を保存してカテゴリ分けできます。",[933,10230,10232],{"id":10231},"texturing-lighting-and-shading","テクスチャリング、ライティング、シェーディング",[39,10234,10235],{},"3Dモデルが完成した後、テクスチャアーティストはマテリアルに合う高解像度テクスチャを探し、視覚的な魅力とリアリティを追加します。同時並行で、ライティングおよびシェーディングアーティストが光源の配置を行い、3Dモデルがそれに応じた挙動をするよう調整します。",[39,10237,10238,10239,9409],{},"テクスチャリングおよびシェーディングのプロセス、手法、ベストプラクティスについての深掘りガイドは、",[231,10240,10242],{"href":10241},"https://blog.cg-wire.com/texturing-shading-animation/","こちらの記事",[933,10244,10246],{"id":10245},"special-effects","特殊効果",[39,10248,10249],{},"特殊効果（VFX）は、環境にさらなるリアリティの層を加えます。天候効果（雨、雪、霧、太陽光の筋など）であれ、パーティクル（火、煙、ほこり）であれ、風や流れる水といった他の物理要素であれ、現実の世界に静止した環境はありません。",[933,10251,10253],{"id":10252},"delivery","デリバリー",[39,10255,10256],{},"デリバリーは、環境アーティストが環境をアニメーションプロジェクトへ統合できるように準備する最終段階です：",[82,10258,10259,10264,10270,10276],{},[85,10260,10261,10263],{},[261,10262,3523],{}," - メモリの効率的な使用、テクスチャ圧縮、LOD（Level of Detail）システムなどの技術的な考慮。予算を超えずにレンダリングできなければ3Dモデルは役に立たないため、各アセットは最終的な用途先に合わせて最適化する必要があります。",[85,10265,10266,10269],{},[261,10267,10268],{},"アセットをパッケージ化し、ファイルを整理する"," - 統合のために、見つけやすく構造化された状態にします。",[85,10271,10272,10275],{},[261,10273,10274],{},"必要なドキュメント、ガイドライン、または指示を提供する"," - 環境をアニメーション制作パイプラインへ統合しやすくするためです。",[85,10277,10278,10281],{},[261,10279,10280],{},"最終品質チェック"," - 環境が望まれる品質基準を満たしていることを確認します。",[39,10283,10284,10285,10289],{},"その後、アセットのパッケージはレンダリングのために",[231,10286,10288],{"href":10287},"https://blog.cg-wire.com/compositing-in-animation-definition-process-challenges/","コンポジットチーム","へ納品されます。ポストプロダクションの途中で何か問題が起きた場合、環境アーティストは必要に応じてモデルを作り直すために待機します。",[66,10291,4756],{"id":4755},[39,10293,10294],{},"制作のプリプロダクションからポストプロダクションまで、アニメーション全体のパイプラインを通した多段階のプロセスを経て、環境アーティストはシーンの空気感とリアリティを形作る中心的な役割を担います。",[39,10296,10297],{},"コラボレーションは環境アーティストの仕事の大きな部分です。さまざまな専門家と連携し、フィードバックを交換し、そこで生まれた変更を反映する必要があります。Kitsu のようなツールは、タスクとアセット管理を効率化することで、かなりの時間を節約します。 ",[39,10299,10300],{},[802,10301,10302,10303,10306],{},"もしあなたが環境アーティスト、アニメーションの学生、あるいはアニメーション業界について学ぶことを単純に楽しんでいるなら、",[231,10304,10305],{"href":9725},"私たちのDiscordコミュニティに参加してください","。ここでは、同じ志を持つアーティストとつながり、あなたの作品を共有し、業界の他の人から学ぶことができます。",{"title":53,"searchDepth":336,"depth":336,"links":10308},[10309,10310,10311,10312,10320],{"id":10050,"depth":336,"text":10051},{"id":9803,"depth":336,"text":10063},{"id":9835,"depth":336,"text":9836},{"id":10123,"depth":336,"text":10124,"children":10313},[10314,10315,10316,10317,10318,10319],{"id":10127,"depth":1088,"text":10128},{"id":10162,"depth":1088,"text":10163},{"id":10205,"depth":1088,"text":10206},{"id":10231,"depth":1088,"text":10232},{"id":10245,"depth":1088,"text":10246},{"id":10252,"depth":1088,"text":10253},{"id":4755,"depth":336,"text":4756},"没入感のある物語を作るには、アニメーション制作スタジオには優れたキャラクターが必要なだけでなく、しっかりしたワールド構築も欠かせません。そして、質の高いワールド構築には細部への強いこだわりが必要なため、リアリティを目指すのかファンタジーを目指すのかに関わらず、正しく仕上げるにはかなりの時間を要します。だからこそアニメーション環境を作ることは、しばしばチーム全体の仕事になります。 ","https://images.unsplash.com/photo-1506744038136-46273834b3fb?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8c2VhcmNofDJ8fGxhbmRzY2FwZXxlbnwwfHx8fDE2ODk1ODk1MTR8MA&ixlib=rb-4.0.3&q=80&w=2000",{"updated_at":10324,"featured_at":350,"visibility":351},"2026-03-26T10:33:03.000+01:00","/blog-i18n/ja/environment-animation","2023-07-17T12:38:32.000+02:00",{"title":10033,"description":10321},"環境アニメーション","blog-i18n/ja/environment-animation/index",[10331],{"id":9761,"name":9762,"slug":9763,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":9764},"JOdaw7SBJkZCwGvh0WSUfE9JhfKlSNMzQv78cxvzE-E",{"id":10334,"title":10335,"authors":10336,"body":10338,"description":10342,"extension":346,"feature_image":10703,"html":11,"meta":10704,"navigation":352,"path":10710,"published_at":10711,"seo":10712,"slug":10713,"stem":10714,"tags":10715,"__hash__":10717,"updated_at":10705,"CGWireでは、世界中のアニメーションスタジオが3Dアニメーションのアセットを管理できるよう支援しています。そのため、リギングのプロセスがどれほど重要かを私たちはよく理解しています。ですが、裏側で一体何が起きていて、どのように機能しているのかを正確にご存じでしょうか？この記事ではそれを解説するとともに、あなた自身のアニメーションをどのように作ればよいかのヒントもお届けします。\n以下のセクションでは、リギングに関するすべてを扱います。リギングがアニメーションの制作フローの中でどのように位置づけられているか、そしてそこに含まれる手順や役割までを紹介します。経験豊富なアニメーター、またはこれから目指す方がより実践につなげられるよう、よくあるベストプラクティスやコツに加えて、リグをより効率的かつ共同作業しやすくするために\u003Ca href=\\\"https://www":10718,"visibility":351},"blog/blog-i18n/ja/rigging-in-animation/index.md","アニメーションにおけるリギング（2026年）：定義、プロセス、課題",[10337],{"id":2889,"name":2678,"slug":2890,"profile_image":2891,"cover_image":11,"bio":2892,"website":11,"location":2030,"facebook":11,"twitter":2031,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":2893},{"type":14,"value":10339,"toc":10687},[10340,10343,10351,10358,10362,10373,10380,10383,10390,10394,10401,10408,10414,10418,10425,10432,10439,10446,10450,10454,10461,10464,10478,10486,10490,10497,10500,10503,10506,10510,10521,10528,10532,10542,10549,10559,10563,10570,10581,10588,10592,10598,10604,10610,10613,10617,10624,10631,10634,10638,10644,10654,10661,10667,10669,10672,10675],[39,10341,10342],{},"リギングは3Dモデルに「動く」ための能力を与えます。リグを使うことで、リアルなアニメーションが可能になります。",[39,10344,10345,10346,10350],{},"CGWireでは、",[231,10347,10349],{"href":10348},"https://www.cg-wire.com/?ref=blog.cg-wire.com","世界中のアニメーションスタジオの3Dアニメーションアセット管理を支援しています","。そのため、リギングプロセスがどれほど重要かを私たちは理解しています。ですが、裏側で一体何が起きていて、どのように機能しているのかを正確にご存じでしょうか？私たちはこの記事でそれを説明し、さらに、あなた自身のアニメーションをどのように作れるのかイメージを持ってもらえればと思っています。",[39,10352,10353,10354,10357],{},"以下のセクションでは、リギングに関するすべてを扱います。リギングがアニメーションの制作パイプラインの中でどのように位置づけられているか、またそれに伴う手順や役割は何か、という点です。経験豊富なアニメーター、またはこれから目指す方がより実践につなげられるよう、よくあるベストプラクティスやヒントに加えて、",[231,10355,10356],{"href":10157},"制作トラッカーのKitsu","を使ってリギングプロセスを効率化し、より協力しやすくする方法についても紹介します。さっそく始めましょう！",[66,10359,10361],{"id":10360},"what%E2%80%99s-rigging","リギングとは",[39,10363,10364,10365,10368,10369,10372],{},"リギングとは、",[261,10366,10367],{},"アニメーターがキャラクター、クリーチャー、その他の3Dオブジェクトの動きと変形をコントロールできるようにする「デジタルな骨格」","を作るプロセスです。このデジタルな骨格は、",[261,10370,10371],{},"リグ","と呼ばれる、相互に接続された関節の階層構造です。各関節には、それぞれ位置・回転・スケールの値があり、接続されたパーツの向きや動きを決定します。これは、精密さ、創造性、そして解剖学と物理の理解に裏打ちされた技術職です。",[39,10374,10375,10376,10379],{},"骨格に加えて、",[261,10377,10378],{},"リグにはコントローラー（制御）","が含まれます。これにより、アニメーターは画面上のハンドル、スライダー、ボタン、あるいはカスタムのインターフェースを使って、各関節を手作業で動かすのではなく、簡単に3Dモデルを操作できるようになります。",[39,10381,10382],{},"たとえば、キャラクターが腕を上げる、脚を曲げる、さらには精密な表情を作るといった場面を想像してみてください。リグは、必要に応じてその腕をアニメーションできる「腕」そのものになり得ます。",[39,10384,10385,10386,10389],{},"リギングの成果物は、",[261,10387,10388],{},"アニメーション可能な状態の「リギング済み3Dオブジェクト」","です。",[66,10391,10393],{"id":10392},"why-rigging","なぜリギングが必要か",[39,10395,10396,10397,10400],{},"リギングは、",[261,10398,10399],{},"初期のモデリング段階と、その後のアニメーション制作プロセスをつなぐ「架け橋」","です。アニメーターが3Dの動きや表現を正確に操作できるようにすることで、キャラクターやオブジェクトに命を吹き込みます。リギングによって、キャラクターは現実世界の物理に沿って曲がる、ひねる、伸びるため、リアリティが加わります。",[39,10402,10403,10404,10407],{},"表情、ボディランゲージ、ジェスチャーを操作することで、",[261,10405,10406],{},"アニメーターは複雑な感情を表現できます","。これにより、アニメーションのキャラクターにより深みと個性が生まれ、結果的に視聴者の関心をより引きつけることにつながります。",[39,10409,10410,10411,5576],{},"純粋に技術的な観点から見ると、リギングは、あらゆる動きのために毎回コントロールを手動でセットアップする必要をなくすことで、時間と労力を節約します。",[261,10412,10413],{},"その分、アーティストは制作の創造的な側面に集中できるようになります",[66,10415,10417],{"id":10416},"who-does-rigging","誰がリギングを行うのか",[39,10419,10420,10421,10424],{},"リギングは、いくつかの重要な役割の協力によって成り立ちます。",[261,10422,10423],{},"リガーは、リグを作ることに責任を持つ主要な専門家","です。彼らは解剖学、物理、そしてアニメーションの原理に深い理解を持っています。リガーは、骨格構造を構築し、関節の階層（ヒエラルキー）を定義し、コントロールをセットアップし、アニメーターがリグを効果的に操作できるようにパラメータと制約を整えます。",[39,10426,10427,10428,10431],{},"リギングの前に、",[261,10429,10430],{},"モデラーが3Dアセットを作成","します。キャラクター、クリーチャー、オブジェクトなどが対象です。彼らはリガーと密に連携し、モデルがリギングに適しているようにします。滑らかな変形とアニメーション制御のために必要なトポロジーやジオメトリを提供するのです。",[39,10433,10434,10435,10438],{},"リギングの後は、",[261,10436,10437],{},"アニメーターがリギング済みキャラクターに命を吹き込みます","。リグを使ってポーズを作り、アニメーションを行い、パフォーマンスを作成します。アニメーターはリガーと協力し、リグの機能についてフィードバックを提供し、必要に応じて追加コントロールや調整の要望を出します。",[39,10440,10441,10442,10445],{},"また、",[261,10443,10444],{},"テクニカル・ディレクター","がリガーと一緒に、リギング制作のワークフローを強化したり、プロセスを合理化したり、技術的な課題を解決したりするために、カスタムツール、スクリプト、プラグインの開発に携わることもあります。",[66,10447,10449],{"id":10448},"the-rigging-process","リギングプロセス",[933,10451,10453],{"id":10452},"before-modeling-planning","開始前：モデリング＆計画",[39,10455,10456,10457,10460],{},"リギングは",[231,10458,10459],{"href":10215},"最初の3Dモデリング段階","の後に行われます。モデルは準備できており、リガーは外見、プロポーション、全体の動きの美学など、キャラクターデザインに関する情報にアクセスできます。",[39,10462,10463],{},"計画段階では、3Dモデルを分析し、リギングチームとともに、想定している動きの範囲、表現、そして必要な要件について話し合います：",[82,10465,10466,10472],{},[85,10467,10468,10471],{},[261,10469,10470],{},"機能分析"," - 3Dオブジェクトの意図されたアクション、ポーズ、表現。リギング中に起こり得る特定の課題や制約（複雑な動きや変形など）も含まれます。",[85,10473,10474,10477],{},[261,10475,10476],{},"リグの複雑さ"," - 機能分析に基づき、リギングチームは、ジョイント数、コントローラー、デフォーマ（変形用要素）、必要な専門的な機能も含めて、対象リグに求められる複雑さのレベルを判断します。",[39,10479,10480,10481,10485],{},"異なるオブジェクトや身体部位には、それぞれ計画すべき異なるリギング手法が必要です。たとえば、",[231,10482,10484],{"href":10483},"https://blog.cg-wire.com/grooming-animation/","キャラクターのヘアのためのヘア","は、物理エンジンを用いたシミュレーションのように動かすための専門的な手法を必要とします。",[933,10487,10489],{"id":10488},"joint-placement","関節の配置",[39,10491,10492,10493,10496],{},"リギングプロセスを開始する前に、",[261,10494,10495],{},"関節の配置によって、モデル内での関節の位置と階層が決まります","。これにより、キャラクター構造の自然な動きと関節の働きを導きます。",[39,10498,10499],{},"関節の配置は、アニメーション中にキャラクターがどのように動き、どのように変形するかに直結します。そのため、関節が現実世界の関節の動きに似せるように配置されるよう、解剖学とキネマティクス（運動学）を深く理解している必要があります。",[39,10501,10502],{},"リアルな動きを実現するために、リガーは肘、膝、背骨などの「自然に曲がる／回転する場所」に関節を戦略的に配置します。また、関節の正しい階層構造も重要です。これは、キャラクターの身体の異なる部位同士の関係性を決めるからです。",[39,10504,10505],{},"関節の配置フェーズでは、リガーはキャラクターの骨格構造、想定する可動範囲、モデル全体の美的要素といった要因を考慮します。",[933,10507,10509],{"id":10508},"proxy-geometry","プロキシジオメトリ",[39,10511,10512,10513,10516,10517,10520],{},"プロキシジオメトリとは、",[261,10514,10515],{},"リギング中に使用するキャラクターのモデルを簡略化したもの","です。モデルの複雑さを下げることで、リギングプロセス中の",[261,10518,10519],{},"パフォーマンスと速度を向上","させます。高解像度のジオメトリを持つ複雑なモデルは、計算負荷が大きくなり、リギングのワークフローを遅くしてしまうことがあります。ポリゴン数を抑えた簡略化プロキシジオメトリに置き換えることで、リガーはよりスムーズかつ効率的に作業できます。",[39,10522,10523,10524,10527],{},"プロキシジオメトリはまた、リガーが",[261,10525,10526],{},"最終モデルの細かなディテールに気を取られずに、リギング関連の作業に集中","できるようにします。リギングはコントロール、関節、デフォーマをセットアップする作業であるため、複雑なジオメトリ計算を必要とせずに、簡略化されたジオメトリを使ってリグの機能を素早く操作・テストできます。",[933,10529,10531],{"id":10530},"rig-creation","リグ作成",[39,10533,10534,10535,2169,10538,10541],{},"リガーは、",[261,10536,10537],{},"骨格構造を作成し",[261,10539,10540],{},"関節間の制約と接続を定義","することで、現実的な動きを可能にするリグを構築します。",[39,10543,10544,10545,10548],{},"リギングをより効率的にするために、",[261,10546,10547],{},"リガーはモジュール化のアプローチを採用","します。再利用可能なコンポーネントやテンプレートをあらかじめ作っておくのです。こうすることで、似たキャラクターやオブジェクトに対して素早くリグ付けでき、標準化されたワークフローと共通のアセットライブラリにより、プロジェクト全体での一貫性を保ちながら時間を節約できます。さらに、整理されたリグにするためには、クリーンで論理的な階層構造が不可欠です。そうすることで、リグが理解しやすく操作しやすくなります。",[39,10550,10551,10554,10555,10558],{},[261,10552,10553],{},"インバース・キinematicsやフォワード・キinematics","のような",[261,10556,10557],{},"制約","を使うと、アニメーションの作業が大きく簡略化され、ワークフローも改善されます。インバース・キinematics（IK）では、アニメーターがキャラクターのエンドエフェクタ（例：手や足）を操作すると、残りの四肢がそれに自動的に追従します。一方、フォワード・キinematics（FK）は、個々の関節を直接コントロールできるため、より正確なポージングやアニメーションが可能です。ただし、制約は適切に使い、使いすぎないことが重要です。制約と手動操作のバランスを見つけることこそが、柔軟で効率的なリグを実現する鍵になります。",[933,10560,10562],{"id":10561},"skinning","スキニング",[39,10564,10565,10566,10569],{},"スキニングでは、",[261,10567,10568],{},"キャラクターのメッシュにウェイトを割り当て","ます。リグが操作されたときに、どのように変形するかを決めることで、キャラクターの皮膚（スキン）がリアルに動くようにします。",[39,10571,10572,10573,10576,10577,10580],{},"スキニング工程を最適化する代表的な手法として、",[261,10574,10575],{},"スキンウェイトをペイントする","方法があります。リガーがメッシュの特定領域に対して手作業でウェイトを割り当て、下にあるリグの影響の度合いを制御します。もう一つの有用なテクニックが",[261,10578,10579],{},"インフルエンスのフェード（影響の減衰）","です。これは、関節やコントロールの影響が距離に応じてどのように弱まるかを定義でき、急な変形を避けることで、キャラクターのメッシュの異なる領域同士の間でよりスムーズな遷移が得られます。",[39,10582,10583,10584,10587],{},"またリガーは、",[261,10585,10586],{},"スキニング用のツールやスクリプトを活用してウェイト割り当てを自動化","し、影響の管理や変形の調整を行います。これにより貴重な時間を節約しつつ、一貫性も向上します。スキニングでは効率が重要な観点です。リガーは、ウェイト割り当てを最適化し、各頂点に影響する関節数を最小限にし、計算負荷を減らす工夫を取り入れることで、正確な変形を維持しながら、できるだけ素早くスキニングできるよう目指します。",[933,10589,10591],{"id":10590},"control-setup","コントロールセットアップ",[39,10593,10594,10597],{},[261,10595,10596],{},"コントロールは、アニメーターがリグを効果的に操作できるようにします。"," 画面上のウィジェット、ハンドル、あるいはカスタムUI要素など、さまざまな形を取り得ます。",[39,10599,10600,10603],{},[261,10601,10602],{},"主要コントロール（プライマリコントロール）は、キャラクターの体や四肢をポーズするために必要な主要機能をアニメーターに提供します","。これらのコントロールは戦略的に配置され、論理的に整理されます。直感的な操作を可能にするためです。説明的な名前や分かりやすいラベル付けは、リグの使いやすさと効率性に貢献し、アニメーターが望むコントロールをすぐに見つけ、使えるようにします。",[39,10605,10606,10609],{},[261,10607,10608],{},"副次コントロール（セカンダリコントロール）も作成されます","。これは、複雑な変形、表情、あるいは細かな指の動きなど、キャラクターの特定領域を微調整するためのものです。より複雑なアニメーションでは、アニメーターがキャラクターのパフォーマンスをどの程度コントロールできるかを高めることになります。",[39,10611,10612],{},"ユーザーフレンドリーなコントロールシステムを作ることは、スムーズで効率的なアニメーション制作ワークフローを確保するうえで不可欠です。そのためリガーは、リギングプロセスに直接関わらないアニメーターであっても、複雑なリグセットアップに苦戦するのではなく、アニメーションの創造的な側面に集中できるよう、直感的で理解しやすいコントロールを設計しようとします。",[933,10614,10616],{"id":10615},"final-delivery","最終納品",[39,10618,10619,10620,10623],{},"リギングプロセスが最終段階に到達し、完了と判断されると、",[261,10621,10622],{},"リギング済みの3Dモデルは制作フェーズのためにアニメーターへ納品されます","。これには、必要なファイルやアセットを提供することが含まれます。骨格構造、コントロール、デフォーマ、そしてリグ固有の追加コンポーネントなどです。キャラクターモデルとともに、アニメーションチームは、特定のアニメーション作業を自動化したり、リグに合わせて追加機能を提供したりするために開発されたツールやスクリプトを受け取ることもあります。",[39,10625,10626,10627,10630],{},"引き渡しの際に生じる可能性のある疑問や懸念に対して、リギングチームがアニメーターと密に連携することが重要です。通常、アニメーターを支援するために、",[261,10628,10629],{},"リグに関する明確なドキュメントと指示","が提供されます。",[39,10632,10633],{},"リグの最終納品は、制作パイプラインにおける重要な節目です。これは、キャラクターがアニメーションに使用可能な状態になったことを意味します。なお、リギングチームは制作フェーズを通して必要に応じてサポートやアップデートを継続します。バグ修正や、新たな要件を満たすための新機能の追加なども含まれます。",[933,10635,10637],{"id":10636},"iterative-loop","反復ループ",[39,10639,10640,10641,5576],{},"リギングプロセスの間ずっと、リガー、モデラー、アニメーター、そしてその他の関係者間のコミュニケーションと協働は、プロジェクトの創造的・技術的要件を満たす、機能するリグを作るために重要な役割を果たします：",[261,10642,10643],{},"この協働を支える適切な手法とツールを持つことは、生産性を高めるうえで重要です",[39,10645,10646,10647,5576,10650,10653],{},"そのため、",[231,10648,10649],{"href":10157},"Kitsuはリギングにとって欠かせないツールです",[261,10651,10652],{},"3Dモデルを同僚やクライアントと共有する","ことも、スムーズになります。作業をアップロードし、ユーザーインターフェースから建設的なフィードバックを集めるだけです：",[39,10655,10656,10657,10660],{},"中央集約されたプラットフォームを提供することで、Kitsuはアニメーション制作パイプラインに関わる",[261,10658,10659],{},"チームメンバー間のオープンなコミュニケーションと連携","を可能にします。デザイナーは、デザイン段階から制作段階への移行を、納品のトラッキングとともにスムーズにするために、モデラー、リガー、アニメーターとシームレスにつながれます。",[39,10662,5410,10663,10666],{},[261,10664,10665],{},"Kitsuはバージョン管理を提供","し、リギングプロセスの包括的な履歴を追跡できるようにします。デザイナーは過去の反復に簡単に戻り、変更点を追跡し、デザインの進化の記録を明確に維持できます。すべてのデザインアセットが1か所にあることで、デザイナーはプロジェクトを効率よく管理でき、必要に応じてリギング用モデルをアクセスして更新しやすくなります。",[66,10668,4756],{"id":4755},[39,10670,10671],{},"リギングはキャラクターやオブジェクトに命を吹き込み、アニメーターが魅力的でリアルな動きを作れるようにします。これは非常に技術的な仕事であり、物理、解剖学、3Dモデリングツールを細かく理解する必要がありますが、制作のアートビジョンを実現するための創造性も求められます。リギングプロセスは7つの主要ステップに分解できますが、正しく仕上げるには複数回の反復が必要な、共同作業の要素が強い仕事でもあります。これがないと、アニメーションは雑に見えたり魅力に欠けたりして、アニメーターの仕事がより大変で費用が高くなる可能性があります。",[39,10673,10674],{},"CGWireのKitsuプラットフォームは、アニメーション制作パイプラインを通じてリギングアセットを管理するための最適解を提供します。Kitsuを使えば、チームはシームレスに共同作業でき、リグのバージョンを追跡し、リギングの成果物を効率よく管理できます。直感的なインターフェースと強力な機能によってリギングのプロセスが合理化され、アーティストは創造的なビジョンに集中し、高品質なアニメーションを届けられます。",[39,10676,10677,10684],{},[231,10678,10681],{"href":10679,"rel":10680},"https://account.cg-wire.com/signup/?ref=blog.cg-wire.com",[321],[802,10682,10683],{},"Kitsuを今すぐ購読",[802,10685,10686],{},"、無料でお試しでき、Blender、Unreal Engine、Harmonyなど、お気に入りのデジタルコンテンツ制作ツールとも簡単に連携できます。",{"title":53,"searchDepth":336,"depth":336,"links":10688},[10689,10690,10691,10692,10702],{"id":10360,"depth":336,"text":10361},{"id":10392,"depth":336,"text":10393},{"id":10416,"depth":336,"text":10417},{"id":10448,"depth":336,"text":10449,"children":10693},[10694,10695,10696,10697,10698,10699,10700,10701],{"id":10452,"depth":1088,"text":10453},{"id":10488,"depth":1088,"text":10489},{"id":10508,"depth":1088,"text":10509},{"id":10530,"depth":1088,"text":10531},{"id":10561,"depth":1088,"text":10562},{"id":10590,"depth":1088,"text":10591},{"id":10615,"depth":1088,"text":10616},{"id":10636,"depth":1088,"text":10637},{"id":4755,"depth":336,"text":4756},"https://images.unsplash.com/photo-1620712943543-bcc4688e7485?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8c2VhcmNofDMxfHxyb2JvdHxlbnwwfHx8fDE2ODc4NzYzNjJ8MA&ixlib=rb-4.0.3&q=80&w=2000",{"updated_at":10705,"CGWireでは、世界中のアニメーションスタジオが3Dアニメーションのアセットを管理できるよう支援しています。そのため、リギングのプロセスがどれほど重要かを私たちはよく理解しています。ですが、裏側で一体何が起きていて、どのように機能しているのかを正確にご存じでしょうか？この記事ではそれを解説するとともに、あなた自身のアニメーションをどのように作ればよいかのヒントもお届けします。\n以下のセクションでは、リギングに関するすべてを扱います。リギングがアニメーションの制作フローの中でどのように位置づけられているか、そしてそこに含まれる手順や役割までを紹介します。経験豊富なアニメーター、またはこれから目指す方がより実践につなげられるよう、よくあるベストプラクティスやコツに加えて、リグをより効率的かつ共同作業しやすくするために\u003Ca href=\\\"https://www":10706,"visibility":351},"2026-03-26T09:24:07.000+01:00",{"cg-wire":10707},{"com/kitsu?ref=blog":10708},{"cg-wire":10709},{"com\\\">私たちの制作トラッカーKitsu\u003C/a>を使う方法のスナップショットも掲載します。さっそく始めましょう！\" featured_at":350},"/blog-i18n/ja/rigging-in-animation","2023-06-27T16:33:31.000+02:00",{"title":10335,"description":10342},"アニメーションのリギング","blog-i18n/ja/rigging-in-animation/index",[10716],{"id":9761,"name":9762,"slug":9763,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":9764},"4CP45Bqq3xnPpuLDXou84PmaAKao_yBwsfgIiY0XhX8",{"cg-wire":10719},{"com/kitsu?ref=blog":10720},{"cg-wire":10721},{"com\\\">私たちの制作トラッカーKitsu\u003C/a>を使う方法のスナップショットも掲載します。さっそく始めましょう！\" featured_at":350},{"id":10723,"title":10724,"authors":10725,"body":10727,"description":11095,"extension":346,"feature_image":11096,"html":11,"meta":11097,"navigation":352,"path":11099,"published_at":11100,"seo":11101,"slug":11102,"stem":11103,"tags":11104,"__hash__":11106,"updated_at":11098,"この記事では裏側に潜り込み、アニメーションにおけるサウンドデザインの魅力的な世界――サウンドデザイナーがアニメーションを「命を吹き込む」ために用いる技術、ツール、プロセス――を探っていきます\" featured_at":350,"visibility":351},"blog/blog-i18n/ja/sound-design-in-animation-definition-process-challenges/index.md","アニメーションにおけるサウンドデザイン（2026）：定義、プロセスと課題",[10726],{"id":2889,"name":2678,"slug":2890,"profile_image":2891,"cover_image":11,"bio":2892,"website":11,"location":2030,"facebook":11,"twitter":2031,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":2893},{"type":14,"value":10728,"toc":11081},[10729,10735,10742,10746,10753,10756,10762,10766,10773,10780,10786,10792,10796,10799,10805,10819,10826,10832,10838,10842,10844,10847,10877,10884,10888,10891,10917,10924,10928,10931,10938,10945,10952,10956,10971,10978,10982,10985,11011,11014,11018,11021,11053,11056,11058,11061,11064],[39,10730,10731,10732,5576],{},"アニメーションは映像、言葉、そして音に依存しています。音楽、効果音、セリフがなければ、物語は中途半端なままになります。登場人物には魂が宿りません。感情を呼び起こす微細なハーモニーから、鳥肌を立てるほどの轟く拍手まで、",[261,10733,10734],{},"サウンドデザインは制作において重要な要素です",[39,10736,10737,10738,10741],{},"この記事では裏側に潜り込み、アニメーションにおけるサウンドデザインの魅力的な世界――",[261,10739,10740],{},"サウンドデザイナーがアニメーションに命を吹き込むために用いる技術、ツール、プロセス","――を探っていきます。 ",[66,10743,10745],{"id":10744},"what%E2%80%99s-sound-design","サウンドデザインとは",[39,10747,10748,10749,10752],{},"サウンドデザインとは、",[261,10750,10751],{},"音声要素を創り出し、それらを統合していくこと","であり、音楽、セリフ、効果音などを含めて、映像によるストーリーテリングの体験をより引き立てます。",[39,10754,10755],{},"たとえばサウンドデザインには、キャラクターの動きに合わせて個別の効果音を録音すること、特定の雰囲気を作るための環境音を作曲すること、そして幻想的な世界のための独自のサウンドスケープを設計することなどが含まれます。",[39,10757,10758,10759,6020],{},"サウンドデザインの制作物には、",[261,10760,10761],{},"映像と同期した最終ミックスであり、さまざまな再生環境に最適化されていること",[66,10763,10765],{"id":10764},"why-sound-design","なぜサウンドデザインが重要なのか",[39,10767,10768,10769,10772],{},"サウンドデザインは、シーンの聴覚的な環境を作り出すことで、",[261,10770,10771],{},"視聴者の没入感と、物語への感情的な関与を高める","うえで重要な役割を果たします。キャラクターや環境に命を吹き込み、より現実味があり信じられるものに感じさせます。葉のざわめきから賑わう街の通りまで、丁寧に作り込まれた音声要素が、観客をアニメーションの世界そのものへと連れていきます！",[39,10774,10775,10776,10779],{},"よく設計されたサウンドデザインは、",[261,10777,10778],{},"視聴者を惹きつけ、アニメーションへの興味を維持するための鍵","です。多感覚的な体験は、物語へのつながりを深め、感情を呼び起こします。アクションシーンのスリルでも、心のこもった瞬間のやさしさでも、ハラハラする追跡の緊迫感でも――サウンドデザインは、意図された感情の反応を増幅します。",[39,10781,10782,10785],{},[261,10783,10784],{},"それは、アニメーションのキャラクターにも大きな恩恵があります","。独自の効果音、声の特徴、スタイライズされたセリフが、個性を補強し、ユーモアを際立たせ、印象に残る癖を生み出します。サウンドデザインの選択は、それぞれのキャラクターの特性や微妙なニュアンスを強調し、より親しみやすくします。",[39,10787,10788,10789,5576],{},"音の合図によって、視聴者は画面外の行動を特定でき、空間関係を理解し、出来事の流れを追えるようになります。",[261,10790,10791],{},"サウンドデザインは情報を伝えます",[66,10793,10795],{"id":10794},"who-does-sound-design","誰がサウンドデザインを担当するのか",[39,10797,10798],{},"サウンドデザインは、さまざまな専門家の協力によって成り立ち、各自の強みを持ち寄って、まとまりのある没入感のある音響体験を作り上げます。",[39,10800,10801,10804],{},[261,10802,10803],{},"サウンドデザイナー","は、アニメーションの全体的なサウンドの構想を練り、制作する責任を負います。監督やクリエイティブチームと密に連携し、物語のナラティブを理解して、ストーリーとキャラクターを引き立てるサウンドデザイン計画を作り上げます。",[39,10806,10807,10810,10811,10814,10815,10818],{},[261,10808,10809],{},"作曲家（コンポーザー）","はサウンドデザイナーと連携して、アニメーションのオリジナル楽曲を作ります。",[261,10812,10813],{},"フォリーアーティスト","は、映像に同期させてさまざまな小道具を使い、生の音を録音してリアリティを追加します。また、キャラクターの動き、物体同士のやり取り、環境音といった微細なディテールを収録します。",[261,10816,10817],{},"声優","は、豊かな抑揚と演技で多様な感情を伝えながら、アニメーションのキャラクターの声とパフォーマンスを提供します。",[39,10820,10821,10822,10825],{},"効果音とセリフの ",[261,10823,10824],{},"エディター","は、録音のクリーニング、編集、強化を担当します。音声が明瞭で聞き取りやすく、アニメーションと適切に同期していることを保証します。",[39,10827,5410,10828,10831],{},[261,10829,10830],{},"ミキサー","は、セリフ、音楽、効果音といったあらゆる音声要素をまとめ、最終的なミックスを作るためにそれらのバランスを取ります。レベル、空間上の位置、そして全体的な音質を調整し、まとまりのある没入感のある音響体験になるようにします。",[39,10833,10834,10837],{},[261,10835,10836],{},"監督やプロデューサー","は、制作の各プロセスでサウンドチームと協力し、指示やフィードバックを提供します。",[66,10839,10841],{"id":10840},"the-sound-design-process-in-6-steps","6つのステップで学ぶサウンドデザインのプロセス",[933,10843,9864],{"id":9863},[39,10845,10846],{},"リサーチ段階では、サウンドデザインチームが監督と打ち合わせを行い、アニメーションのビジョン、トーン、物語を深く理解します。この段階は、後工程のための確かな土台を築くうえで重要です。",[1053,10848,10849,10865,10871],{},[85,10850,10851,10854,10855,10860,10861,10864],{},[261,10852,10853],{},"映像素材と台本を分析する"," - サウンドデザインチームは ",[231,10856,10859],{"href":10857,"rel":10858},"https://blog.cg-wire.com/storyboard-animation/",[321],"ストーリーボードやアニメティック","、コンセプトアート、",[231,10862,6041],{"href":6040,"rel":10863},[321],"を調べ、アニメーションの視覚的なスタイル、テンポ、そして特定のサウンド処理が必要になる重要な場面を理解します。脚本やキャラクターの説明を掘り下げることで、キャラクターの個性、動機、関係性をより深く把握し、それぞれの特性を反映する音の要素を統合するための理解を深めます。",[85,10866,10867,10870],{},[261,10868,10869],{},"音の美学（オーディオの世界観）を確立する"," - ストーリーテリングや視覚的なスタイルに合う全体のサウンドパレット、空気感、ジャンルの影響を定めます。たとえば『カウボーイビバップ』は、ジャジーなサウンドトラックがなければ同じものにはなりませんし、いくつかの制作スタジオにはそれぞれの独自の音のアイデンティティがあります。",[85,10872,10873,10876],{},[261,10874,10875],{},"サウンドの参考をリスト化する"," - チームは映画、ドキュメンタリー、音楽、そして実生活での録音から着想を得られます。これにより、アイデアを集め、創造的な可能性を探り、共通の語彙を育てることができます。",[39,10878,10879,10880,10883],{},"これらの要素が最終的に",[261,10881,10882],{},"プロジェクトのサウンド要件を定義していく","ことにつながります。ライセンスや音声フォーマットなどの技術的な考慮事項も含まれます。",[933,10885,10887],{"id":10886},"foley-recording","フォリー録音",[39,10889,10890],{},"フォリー録音は、シーンに同期した効果音を作り、録音することです。アニメーションに奥行きとリアリティを加え、視聴者が画面の世界とよりつながっていると感じられるようにします。専門性、細部への注意、そして完璧な効果音を捉えるための創造的な問題解決を要する、手間のかかる工程です。",[1053,10892,10893,10899,10905,10911],{},[85,10894,10895,10898],{},[261,10896,10897],{},"シーンの分析"," - サウンドデザインチームは各シーンを注意深く分析し、録音が必要な具体的な効果音を特定します。足音、衣服の動き、物体同士のやり取り、そしてアニメーションのリアリティと没入感を高めるために欠かせないその他の音などです。",[85,10900,10901,10904],{},[261,10902,10903],{},"フォリーアーティストの計画"," - フォリーアーティストはシーンの要件を学び、必要な小道具や素材を集め、希望する音を再現するためのアプローチを計画します。",[85,10906,10907,10910],{},[261,10908,10909],{},"フォリーステージのセッティング"," - 専用の録音スペースには音響処理が施され、さまざまな素材や小道具が用意されて、異なる音の質感を作り出せるようになっています。",[85,10912,10913,10916],{},[261,10914,10915],{},"録音"," - フォリーアーティストはアニメーションに合わせて動作や動きを行い、小道具や素材を使って狙った音を再現します。必要に応じて、歩く、走る、物を扱う、ドアを開ける、あるいはクリーチャーの動きを模倣することもあります。サウンドデザインチームは編集段階で選択肢を持てるように、各アクションについて複数テイクを録音します。可能な限り、きれいで本物に近い音を慎重に収録します。録音後は、必要に応じて編集・加工し、アニメーションに自然に馴染むようにします。",[39,10918,10919,10920,10923],{},"予算の制約次第では、フォリーアーティストがすべてを自分で録音するのではなく、オープンソースの音声ライブラリから入手した効果音を活用することもできます。どちらの場合でも、アニメーション制作で数百の音声アセットを効率よく管理し統合できるように、",[261,10921,10922],{},"包括的なサウンドライブラリを構築し維持する","ことが重要です。",[933,10925,10927],{"id":10926},"music-composition","音楽の作曲",[39,10929,10930],{},"オリジナルの音楽が必要な場合、作曲家はアニメーションに合うスコアを作ります。",[39,10932,10933,10934,10937],{},"リサーチ段階をもとに、",[261,10935,10936],{},"作曲家は音楽スコアを作り上げるプロセスを開始します","。望まれる感情、キャラクターの動機、そして物語の進行に沿うように、メロディ、ハーモニー、アレンジを作り込みます。作曲には、アニメーションの要件に応じてさまざまな楽器、スタイル、ジャンルが関わることがあります。",[39,10939,10940,10941,10944],{},"そして、",[261,10942,10943],{},"作曲家またはミュージシャンのチームが、高品質な音声機材で音楽を録音します","。ライブでの楽器録音、MIDIベースのオーケストレーション、またはその両方が行われることがあります。",[39,10946,10947,10948,10951],{},"オリジナルのサウンドトラックを作るには膨大なリソースが必要なため、アニメーションスタジオが",[261,10949,10950],{},"音楽ライセンスを購入する","ことも珍しくありません。",[933,10953,10955],{"id":10954},"voice-acting","声の演技（ボイスアクティング）",[39,10957,10958,10959,10962,10963,10966,10967,10970],{},"声の演技は ",[261,10960,10961],{},"キャラクターのセリフや言葉による表現を録音するプロセス","です。通常の俳優と同じように、声優は喜びや興奮から悲しみや怒りまで、",[261,10964,10965],{},"幅広い感情を表現することに卓越している必要があります","。また声優は、",[261,10968,10969],{},"セリフやナレーションに命を吹き込み","、自然で説得力のある響きにします。タイミング、リズム、抑揚のニュアンスを理解し、演技にダイナミクスを生み出して、伝わり方を強化します。",[39,10972,10973,10974,10977],{},"日本では必要とされるスキルと才能が高いため、最も優れた声優はスーパースター的な存在であり、声優専門の学校が130校もあります！",[261,10975,10976],{},"声の演技は制作を大きく左右します","ので、キャスティング段階での注意が必要です。",[933,10979,10981],{"id":10980},"mixing-editing","ミキシング＆編集",[39,10983,10984],{},"さまざまな音声要素を組み合わせ、バランスを取り、磨き上げて、アニメーションのための一体感のある没入的な聴覚体験を作り出します。",[1053,10986,10987,10993,10999,11005],{},[85,10988,10989,10992],{},[261,10990,10991],{},"音声のクリーンアップ"," - 録音の過程で取り込まれてしまった不要なノイズ、クリック音、ポップ音、その他の欠陥を取り除きます。",[85,10994,10995,10998],{},[261,10996,10997],{},"セリフの編集"," - サウンドデザイナーは録音したセリフのトラックを丁寧に編集し、背景ノイズや不整合を取り除き、音量レベルを調整し、セリフが明瞭で聞き取りやすい状態になるようにします。",[85,11000,11001,11004],{},[261,11002,11003],{},"効果音の統合"," - 効果音を画面上の動きと同期させます。",[85,11006,11007,11010],{},[261,11008,11009],{},"音楽のミキシング"," - サウンドデザインチームはレベル、パン、周波数帯域の調整を行い、音楽を他の音声要素と丁寧にミックスして、バランスの取れた一体感のある音の体験を作ります。",[39,11012,11013],{},"この段階で、音声は納品に向けて準備完了です！",[933,11015,11017],{"id":11016},"final-mix","最終ミックス",[39,11019,11020],{},"最終ミックスでは、セリフ、音楽、効果音など、編集済みのすべての音声トラックを組み合わせます：",[1053,11022,11023,11029,11035,11041,11047],{},[85,11024,11025,11028],{},[261,11026,11027],{},"レベルのバランス調整"," - サウンドデザインチームは各音声要素の音量を慎重に調整し、セリフが聞き取れる状態を保ちながら、効果音や音楽のインパクトも維持します。",[85,11030,11031,11034],{},[261,11032,11033],{},"ダイナミックレンジの制御"," - ダイナミックレンジとは、音声の中で最も静かな部分と最も大きい部分の差のことです。最終ミックスでは、サウンドデザインチームがコンプレッションやリミッティングのような手法を適用してダイナミックレンジを制御し、音声が一貫性を保ち、視聴者の注意をそらしたり圧倒したりし得る急激な音量変化を避けられるようにします。",[85,11036,11037,11040],{},[261,11038,11039],{},"空間設計"," - もしアニメーションがサラウンドサウンドや3Dオーディオのような空間オーディオ体験を必要とする場合、サウンドデザインチームはパンニング、空間系エフェクト、バイノーラル処理などの手法を使って、音声要素を音の場（オーディオフィールド）内で空間的に配置し、移動感を作り出します。",[85,11042,11043,11046],{},[261,11044,11045],{},"イコライゼーション（EQ）"," - イコライゼーション（EQ）は、さまざまな音声要素の周波数特性を調整するために使われます。最終ミックスでは、サウンドデザインチームがEQを適用し、それぞれの音声要素が意図した周波数帯域に収まり、他の要素と干渉しないようにします。これにより、明瞭さ、分離、そして音声トラック全体のトーンバランスが生まれます。",[85,11048,11049,11052],{},[261,11050,11051],{},"品質保証（QA）"," - サウンドデザインチームは高品質のスピーカーまたはヘッドホンを使って音声をモニタし、モバイル端末から映画館用のスピーカーまで、さまざまな再生システムや環境で音が適切に伝わることを確認します。",[39,11054,11055],{},"必要な音声ファイルを含む最終的なオーディオパッケージは、その後、エピソードまたは映画に統合するためにアニメーション編集者へ送られます。",[66,11057,4756],{"id":4755},[39,11059,11060],{},"サウンドデザインはアニメーション制作の重要な一部です。ムードや空気感を作り出す役割から、音楽や声の演技まで――サウンドデザイナーは映像をまったく新しい次元へ引き上げます。アニメーション愛好家としては、サウンドデザインに注がれる計り知れない努力を理解することが欠かせません。 ",[39,11062,11063],{},"サウンドデザインの各段階では、サウンドデザインチーム、監督、プロデューサーの間でコラボレーション、フィードバック、リビジョンが行われ、あらゆる音声要素が磨かれていきます。あなたの制作を完璧なものにするための大きなステップです。",[39,11065,11066,11072,11078],{},[802,11067,11068,11069,11071],{},"CGWireが開発したKitsuは、アニメーションスタジオ専用に設計された包括的な制作トラッカーです。アセット管理、コラボレーションの促進、そしてサウンドデザインを含む制作パイプライン全体の効率化のための堅牢なプラットフォームを提供します。 ",[2122,11070],{},"Kitsuの力で、アニメーションプロジェクトをさらにレベルアップするチャンスを逃さないでください。 ",[231,11073,11075],{"href":10679,"rel":11074},[321],[802,11076,11077],{},"今すぐ無料で登録",[802,11079,11080],{},"し、サウンドデザインや全体の制作効率に与えられる影響を体験してください。",{"title":53,"searchDepth":336,"depth":336,"links":11082},[11083,11084,11085,11086,11094],{"id":10744,"depth":336,"text":10745},{"id":10764,"depth":336,"text":10765},{"id":10794,"depth":336,"text":10795},{"id":10840,"depth":336,"text":10841,"children":11087},[11088,11089,11090,11091,11092,11093],{"id":9863,"depth":1088,"text":9864},{"id":10886,"depth":1088,"text":10887},{"id":10926,"depth":1088,"text":10927},{"id":10954,"depth":1088,"text":10955},{"id":10980,"depth":1088,"text":10981},{"id":11016,"depth":1088,"text":11017},{"id":4755,"depth":336,"text":4756},"アニメーションは映像、言葉、そして音に依存しています。音楽、効果音、セリフがなければ、物語は中途半端なままになります。登場人物には魂が宿りません。感情を呼び起こす微細なハーモニーから、鳥肌を立てるほどの轟く拍手まで、サウンドデザインは制作において重要な要素です。","https://images.unsplash.com/photo-1593697821178-c4c24e92d4ba?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8c2VhcmNofDE2fHxzb3VuZCUyMHJlY29yZGluZ3xlbnwwfHx8fDE2ODY1OTIzODR8MA&ixlib=rb-4.0.3&q=80&w=2000",{"updated_at":11098,"この記事では裏側に潜り込み、アニメーションにおけるサウンドデザインの魅力的な世界――サウンドデザイナーがアニメーションを「命を吹き込む」ために用いる技術、ツール、プロセス――を探っていきます\" featured_at":350,"visibility":351},"2026-03-26T09:40:04.000+01:00","/blog-i18n/ja/sound-design-in-animation-definition-process-challenges","2023-06-20T12:01:59.000+02:00",{"title":10724,"description":11095},"アニメーションのサウンドデザイン：定義・プロセス・課題","blog-i18n/ja/sound-design-in-animation-definition-process-challenges/index",[11105],{"id":9761,"name":9762,"slug":9763,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":9764},"VPsHrcgaifOTdcJ_Z6no2XlhB9uif8XSS1nkeT95OKU",[11108,11381,12398,12960,13514],{"id":11109,"title":11110,"authors":11111,"body":11113,"description":11117,"extension":346,"feature_image":11369,"html":11,"meta":11370,"navigation":352,"path":11372,"published_at":11373,"seo":11374,"slug":11375,"stem":11376,"tags":11377,"__hash__":11380,"updated_at":11371,"コンポジターはショットのレンダリングが完了したタイミングを把握しなければなりません。下流のすべてのプロセスは、アセットが承認されたら即座に反応すべきです。監督側が、3時間後になって「フレーム847でレンダリングが失敗した」と知る必要があってはなりません。\nそれでも多くのスタジオでは、更新をタイマーで確認するような仕組みや、ダッシュボードを手作業で更新する運用、タスクが完了したことをアーティストに同僚へ知らせてもらう運用に頼っており、人為的なミスが、作業を自動化すべき場所に入り込んでしまっています。\nこの記事では、5つのリアルタイム・コミュニケーションのパターン（ポーリング、Webhook、WebSockets、Server-Sent Events（SSE）、WebRTC）を扱います。それぞれについて、何であるか、CGパイプラインの文脈でどのように適用できるか、そしてどこで役に立ち、どこで問題が起きるのかを学びます。最後には、適切な技術を適切な課題に選び取るための明確な判断マトリクスが得られるでしょう。\" featured_at":350,"visibility":351},"blog/blog-i18n/ja/webhooks-vs-polling-sse-websockets-webrtc-cg-pipelines/index.md","CGパイプライン向けのリアルタイム・コミュニケーション技術5選を比較：ポーリング、Webhook、WebSockets、Server-Sent Events、WebRTC",[11112],{"id":8,"name":9,"slug":10,"profile_image":11,"cover_image":11,"bio":11,"website":11,"location":11,"facebook":11,"twitter":11,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":12},{"type":14,"value":11114,"toc":11345},[11115,11118,11121,11124,11127,11131,11134,11137,11140,11143,11147,11150,11153,11156,11159,11163,11171,11175,11183,11187,11190,11193,11196,11204,11207,11215,11219,11222,11225,11228,11231,11239,11242,11250,11254,11257,11260,11263,11271,11274,11285,11289,11292,11295,11298,11306,11309,11317,11319,11322,11339,11342],[39,11116,11117],{},"モダンなCGパイプラインは分散されています。アーティストは別々のマシンで作業し、レンダーファームは何千ものフレームを並列に処理し、パイプラインのツールは同時に多数の要素を連携させる必要があります。",[39,11119,11120],{},"コンポジターはショットのレンダリングが完了したタイミングを把握しなければなりません。下流のすべてのプロセスは、アセットが承認されたら即座に反応すべきです。監督側が、3時間後になって「フレーム847でレンダリングが失敗した」と知る必要があってはなりません。",[39,11122,11123],{},"それでも多くのスタジオでは、更新をタイマーで確認するような仕組みや、ダッシュボードを手作業で更新する運用、タスクが完了したことをアーティストに同僚へ知らせてもらう運用に頼っており、人為的なミスが、作業を自動化すべき場所に入り込んでしまっています。",[39,11125,11126],{},"この記事では、5つのリアルタイム・コミュニケーションのパターン（ポーリング、Webhook、WebSockets、Server-Sent Events（SSE）、WebRTC）を扱います。それぞれについて、何であるか、CGパイプラインの文脈でどのように適用できるか、そしてどこで役に立ち、どこで問題が起きるのかを学びます。最後には、適切な技術を適切な課題に選び取るための明確な判断マトリクスが得られるでしょう。",[66,11128,11130],{"id":11129},"why-real-time-matters-for-cg-pipelines","CGパイプラインにおけるリアルタイム性が重要な理由",[39,11132,11133],{},"リアルタイム・コミュニケーションは、生産パイプラインにおける贅沢ではありません。",[39,11135,11136],{},"ハードウェアの稼働率は、素早いフィードバック・ループに依存します。下流のジョブが、まだ届いていないステータス更新を待っていてレンダーファームがアイドル状態になっているのは、直接的なコストです。コンポジットのジョブが、レンダーレイヤーがすべて完了したことを把握し、それが通知として届くまで開始できず、ポーリングの遅延で通知が5分後に到着するとしたら、各ショットあたり5分分のスループットの可能性を失うことになります。数百のショットと複数のファームにまたがると、ムダになったキャパシティが数日分に膨らむこともすぐに起こり得ます。",[39,11138,11139],{},"また、アーティストの反復速度も、ツールの応答性によって制約されます。アーティストがキャッシュのジョブを投入したあと、進捗を確認するためにパネルを手作業で更新しないといけない場合、作業の流れや文脈が途切れてしまいます。即時に更新をプッシュしてくれるツールなら、アーティストは文脈の中にとどまり、失敗を早期に察知し、精神的なスイッチを切り替えずにフォローアップ作業をキューに積めます。",[39,11141,11142],{},"最後に、自動化されたパイプラインは、信頼できるイベント伝播がなければ成り立ちません。手順Aが完了したあとに手順Bが自動でトリガーされるはずのパイプラインは、それらをつなぐものの信頼性に左右されます。その接続が脆弱だったり、遅かったり、取りこぼしたりすると、自動化は破綻し、人間がその穴埋めをしなければなりません。リアルタイム・コミュニケーション技術は、自動化パイプラインの「つなぎ目（コネクティブ・ティッシュ）」です。間違ったものを選ぶと、修正に費用のかかる見えにくいバグが混入します。だからこそ、私たちはこの記事を書きました。",[66,11144,11146],{"id":11145},"_1-polling","1. ポーリング",[39,11148,11149],{},"ポーリングは、リアルタイム・システムを実装する最もシンプルな方法です。クライアントがサーバーに対して、「今あなたが持っている新しい情報はありますか？」と、一定の間隔で繰り返し問いかけます。",[39,11151,11152],{},"クライアントがリクエストを送信し、サーバーが現在の状態、または更新内容を返します。そしてクライアントは、次の間隔まで待ってから再び問い合わせます。",[39,11154,11155],{},"CGパイプラインでは、典型的な例として、レンダーマネジメントAPIに対して30秒ごとに問い合わせ、ジョブのステータスが変わったかどうかを確認するレンダーワッチャースクリプトがあります。",[39,11157,11158],{},"このスクリプトは、ファームからの呼び出しを待ちません。自ら能動的に問い合わせ、レスポンスを解析し、ローカルのダッシュボードを更新するか、下流アクションをトリガーします。",[933,11160,11162],{"id":11161},"pros-for-cg-pipelines","CGパイプラインにおける利点",[82,11164,11165,11168],{},[85,11166,11167],{},"ポーリングは実装が簡単です。HTTPリクエストを作れる任意のツールならポーリングできます。つまり、特別なインフラが不要で、ほぼすべてのパイプライン言語やフレームワークと連携可能です。イベント駆動型インフラを立ち上げるコストが正当化できない、小規模スタジオや手早い社内ツールでは現実的な選択肢です。",[85,11169,11170],{},"ポーリングはサーバー側でステートレスです。サーバーは、永続的な接続を維持したり、誰がリスンしているかを追跡したりする必要がありません。すでにRESTサービスとして構築されているレンダーマネジメントAPIであれば、ポーリングにはサーバー側の変更は一切不要です。",[933,11172,11174],{"id":11173},"cons-for-cg-pipelines","CGパイプラインにおける欠点",[82,11176,11177,11180],{},[85,11178,11179],{},"ポーリングは非効率です。クライアントは変更があるかどうかに関係なくスケジュールどおりに確認するため、問い合わせの大半は新しい情報を返しません。たとえば静かな夜で、2時間のあいだジョブが完了しないような状況では、ワッチャースクリプトは不要なリクエストを何百回も送ります。スケールすると、負荷がすでに高いAPIに対して、余計な負荷を追加してしまいます。",[85,11181,11182],{},"ポーリングは、間隔に比例したレイテンシーも生みます。30秒のポーリング間隔では、ジョブ完了のアクションが最大30秒遅れる可能性があります。上流が完了した直後に下流ジョブがキューに積まれるようなパイプラインでは、この遅延は各受け渡しに織り込まれてしまいます。間隔を短くすればこの遅れは減りますが、リクエスト数が増えるため、スケール時のトレードオフ調整が難しくなります。",[66,11184,11186],{"id":11185},"_2-webhooks","2. Webhook",[39,11188,11189],{},"Webhookは、機械同士の通信におけるポーリングのモデルを反転させます。あるWebサーバーが別のサーバーに対して繰り返し問い合わせるのではなく、何かが起きたときにサーバーがクライアントを呼び出します。クライアントはURLエンドポイント（Webhookエンドポイント）を登録し、サーバーは関連するイベントが発生した瞬間、そのURLへ通知をPOSTします。",[39,11191,11192],{},"CGパイプラインでは、実用的な例として、アセットが正しいステータスに到達した瞬間にWebhookを発火させるパブリッシュシステムが挙げられます。たとえばSlackボットやパイプラインのオーケストレーターへ通知します。軽量側がlookdevアセットを承認し、アセット管理システムがその承認を記録すると、アセット管理システムは直ちにオーケストレーターのWebhookエンドポイントへ、アセットIDと新しいステータスを含むHTTP POSTを送ります。するとオーケストレーターは、ループ内にポーリングを入れることなく下流のライティングビルドをトリガーします。",[933,11194,11162],{"id":11195},"pros-for-cg-pipelines-1",[82,11197,11198,11201],{},[85,11199,11200],{},"Webhookはイベント駆動です。つまり、無駄なトラフィックがありません。サーバーは何かが起きたときにだけデータを送信し、クライアントは呼び出しを受け取ったときにだけ処理を実行します。イベント頻度が比較的低い一方で、すぐに対応する必要があるパイプラインでは、ポーリングよりも大きな効率向上が得られます。",[85,11202,11203],{},"Webhookはサービスを適切に疎結合にもします。アセット管理システムは、通知を受け取ったあとオーケストレーターが何をするかを知る必要はありません。発火して忘れるだけです。これにより、元のシステムを変更せずにパイプラインイベントの新しい消費者を追加しやすくなります。これは、異なるツールが異なるチームに所有されているスタジオにおいて重要です。",[933,11205,11174],{"id":11206},"cons-for-cg-pipelines-1",[82,11208,11209,11212],{},[85,11210,11211],{},"Webhookは、受信側サービスが送信側から公開可能、もしくは少なくともネットワークアクセス可能であることを必要とします。複雑なネットワーク構成、VPN、ファイアウォールが絡むスタジオ環境では、必ずしも簡単ではありません。たとえばプライベートサブネット上で動いているレンダーファームは、テスト中に開発者のローカルマシンへWebHookを容易に発火できません。",[85,11213,11214],{},"Webhookはデフォルトで「送って終わり」です。イベントが発火したときに受信エンドポイントがダウンしている場合、通知は送信システムが指数バックオフ付きのリトライ処理やデッドレターキューを実装していない限り、失われます。この信頼性レイヤーを構築するには複雑さが増します。ジョブ完了イベントを取りこぼせないパイプラインでは、その背後にインフラが必要です。単なるWebhook連携だけでは足りません。",[66,11216,11218],{"id":11217},"_3-websockets","3. WebSockets",[39,11220,11221],{},"WebSocketsは、クライアントとサーバーの間に永続的な双方向接続を確立します。通常のHTTPとは異なり、HTTPはリクエストとレスポンスのサイクルが終わると接続が閉じられますが、WebSocket接続は開いたまま維持されます。どちらの側も、相手が開始するのを待たずに任意のタイミングでメッセージを送れます。",[39,11223,11224],{},"CGパイプラインでは、WebSocketsはライブレンダーモニタリングのダッシュボードに自然に適合します。アーティストや監督がショットの進捗ページを開くと、ブラウザがレンダーマネジメントのバックエンドに対してWebSocket接続を確立します。フレームの完了、エラー、ジョブ状態の変更がファームで発生すると、サーバーがそれらの更新を開いている接続へ直接プッシュします。ブラウザは新たなリクエストを行うことなく、ダッシュボードはリアルタイムに更新されます。",[39,11226,11227],{},"これが、Kitsuでイベントを扱うために私たちが使っている方法です。",[933,11229,11162],{"id":11230},"pros-for-cg-pipelines-2",[82,11232,11233,11236],{},[85,11234,11235],{},"WebSocketsは、インタラクティブなツールに対してWebhookより低レイテンシーを提供しつつ、ポーリングのオーバーヘッドをなくします。接続が永続的なので、更新のたびにTCPのハンドシェイク費用は発生しません。複数の同時ジョブを表示し、状態変化をミリ秒単位で反映する必要があるダッシュボードでは、WebSocketsはポーリングにはない応答性を提供します。",[85,11237,11238],{},"WebSocketsの双方向性は、インタラクティブなパイプラインツールも可能にします。アーティストがレンダージョブを設定し、送信し、同じ画面でライブな進捗フィードバックを即座に見られるような提出UIは、WebSocketsと相性が良いです。クライアントは、プロトコルを切り替えることなく同じ接続上でジョブパラメータを送信し、ステータス更新のストリームを受け取れます。",[933,11240,11174],{"id":11241},"cons-for-cg-pipelines-2",[82,11243,11244,11247],{},[85,11245,11246],{},"WebSocketsは状態を持つ接続であり、サーバーが管理する必要があります。レンダーマネジメントサーバーが、ファームノードやモニタリング用ダッシュボードからの大量の同時WebSocket接続（数千）をさばく場合、メモリやファイルディスクリプタのオーバーヘッドが現実的なエンジニアリング上の懸念になります。WebSocketサーバーを水平スケールするには、RedisやKafkaのような共有メッセージブローカーを用いて、インスタンス間でメッセージをファンアウトする必要があり、インフラの複雑さが増します。",[85,11248,11249],{},"WebSocketsは、攻撃的なプロキシやロードバランサが絡む環境ではHTTPよりも脆弱です。古いスタジオ向けネットワーク基盤の中には、WebSocketのアップグレードを正しく処理できず、接続がサイレントに切断されたり、まったく接続できなかったりするものがあります。クライアント側の再接続ロジックは必須ですが、標準ライブラリでは実装が不十分なことがしばしばあります。",[66,11251,11253],{"id":11252},"_4-server-sent-events-sse","4. Server-Sent Events（SSE）",[39,11255,11256],{},"Server-Sent Events（SSE）は、通信が片方向で済むケースにおいてWebSocketsのより単純な代替となります。つまり、サーバーがクライアントへ更新をプッシュする一方で、クライアントは返信のメッセージを送る必要がありません。SSEは標準的なHTTP接続を使い、サーバーがそれを開いたまま維持し、シンプルなテキストベースの形式でイベントをストリーミングします。",[39,11258,11259],{},"CGパイプラインでは、SSEはログストリーミングに適しています。アーティストがシミュレーションを開始し、ソルバーの出力をリアルタイムで見たい場合、パイプラインサーバー側のSSEエンドポイントが、書き込まれるたびに各ログ行をストリーミングできます。ブラウザは1つのHTTP接続を開き、ポーリングもWebSocketの複雑さも、特別なクライアントライブラリもなく、継続的なテキストのストリームを受け取ります。",[933,11261,11162],{"id":11262},"pros-for-cg-pipelines-3",[82,11264,11265,11268],{},[85,11266,11267],{},"SSEは、サーバーからクライアントへの利用ケースにおいてWebSocketsよりも大幅に実装が簡単です。プレーンHTTP上で動作するため、設定変更なしに多くのプロキシやロードバランサを通過できます。標準的なWebスタック上で社内ツールを構築しているスタジオでは、既存のAPIサービスにSSEエンドポイントを追加するのは簡単です。",[85,11269,11270],{},"SSEは再接続も自動で処理します。ブラウザのネイティブEventSource APIは、接続が切れても再接続し、サーバーが対応していれば直近に受信したイベントIDから再開します。ログストリーミングのツールで、短時間のネットワークの不調で出力を失わずに動き続ける必要がある場合、このビルトインの信頼性は、カスタムコードなしで価値があります。",[933,11272,11174],{"id":11273},"cons-for-cg-pipelines-3",[82,11275,11276,11279,11282],{},[85,11277,11278],{},"SSEは片方向です。ストリーム中にクライアントがサーバーへデータを送る必要がある場合、別のチャネルで別途HTTPリクエストを行う必要があります。シンプルなログビューアなら問題ありませんが、インタラクティブなツールではSSEが遅れてしまい、WebSocket接続のほうが適しています。",[85,11280,11281],{},"SSEはまた、環境によってはブラウザの接続プールにも制限されます。古いブラウザでは、同一オリジンに対する同時SSE接続数が6に上限されており、パイプラインのダッシュボードが同時に複数の独立したSSEストリームを開く場合に問題になり得ます。実際には社内ツールでブロッキングになることは稀ですが、1つのページから多数の同時ストリームに依存する設計をする前に知っておくとよいでしょう。",[85,11283,11284],{},"SSEはバイナリメッセージをネイティブに扱えません。もちろんバイナリファイルをテキストとしてエンコードすることはできますが、WebSocket相当の方式と比べるとサイズのオーバーヘッドが大きくなります。",[66,11286,11288],{"id":11287},"_5-webrtc","5. WebRTC",[39,11290,11291],{},"WebRTC（Web Real-Time Communication）は、低レイテンシーかつ高スループットなデータ転送のために設計されたピアツーピアの通信プロトコルです。データチャネル自体はサーバーを経由せず、クライアント間で直接転送されます。ブラウザアプリケーションにおける動画・音声ストリーミングでよく知られていますが、データチャネルを通じて任意のバイナリデータ転送もサポートします。",[39,11293,11294],{},"CGパイプラインでは、WebRTCはライブプレビューのストリーミング、チャット、あるいはP2P転送のようなニッチですが強力な用途に向いています。たとえば、アーティストがリモートのGPUワークステーションでシェーディングやライティングを反復していて、サーバーを経由せずにローカルのブラウザでビューポートのレンダリング出力を見たい場合、WebRTCのデータチャネルが、ピクセルバッファをGPUマシンからブラウザへ単桁ミリ秒のレイテンシーでストリームできます。これは、ほとんどのWeb会議ソリューションが使っている方式です。",[933,11296,11162],{"id":11297},"pros-for-cg-pipelines-4",[82,11299,11300,11303],{},[85,11301,11302],{},"WebRTCは、データが中継サーバーではなくピアツーピアで転送されるため、ブラウザベースのストリーミングで到達できる最小レイテンシーを提供します。ユーザーがマウス移動に応じて、認識できる遅延なしに画像が更新されることを期待するインタラクティブなビューポート・ストリーミングでは、WebRTCはその条件を満たす唯一のブラウザネイティブ選択肢です。",[85,11304,11305],{},"WebRTCは効率的なバイナリエンコードと、内蔵の輻輳制御も利用します。そのため、ネットワーク条件が変動する状況下で大きな画像データをストリーミングするのに適しています。プロトコルはビットレートを動的に適応するため、利用可能帯域に関係なくフル解像度のフレームを送るような素朴なWebSocket実装よりも有利です。",[933,11307,11174],{"id":11308},"cons-for-cg-pipelines-4",[82,11310,11311,11314],{},[85,11312,11313],{},"WebRTCは、このリストの中ではおそらく最も実装・運用が複雑なパターンです。ピアツーピアの接続を確立するには、セッション記述とネットワーク候補を交換するためのシグナリングサーバーが必要であり、NATやファイアウォールのルールによって直接のピア接続が妨げられる環境では、多くの場合TURNリレイサーバーも必要になります。VPN、プロキシ、セグメント化されたサブネットを備えるスタジオネットワークは、まさに直接のピア接続が失敗しがちで、TURNサーバーが必須になるような環境です。",[85,11315,11316],{},"WebRTCは主にブラウザ環境向けに設計されていますが、サーバープログラミング言語でもクライアントライブラリは利用可能です。ただし、データストリームの消費先が別のサーバープロセスやネイティブアプリであり、ブラウザではない場合、WebRTCはピアツーピア効率という本来の強みを活かしにくい一方で複雑さだけが増えます。そうしたケースでは、よりシンプルなバイナリのWebSocketストリームのほうが適していることが多いです。",[66,11318,7608],{"id":4755},[39,11320,11321],{},"この記事で扱った5つの技術は、スペクトラム上の異なる地点に位置します。",[82,11323,11324,11327,11330,11333,11336],{},[85,11325,11326],{},"ポーリングは出発点です。実装が簡単で、互換性も高い一方で、無駄が多く遅いです。リアルタイムの精度が不要で低頻度の確認で足りる場合、たとえば「すべてのデイリーズがレンダリングされたか」を夜間レポートジェネレーターで確認するような用途に適しています。",[85,11328,11329],{},"Webhookは、サーバーが永続的な接続を維持することなく、離散的なイベントについて1つ以上の外部サービスに通知する必要があるときに適した手段です。アセット承認のワークフロー、パブリッシュのトリガー、システム横断の連携は自然な適用先です。",[85,11331,11332],{},"WebSocketsは、インタラクティブなツールで低レイテンシーかつ双方向の通信が必要な場合に有効です。たとえば、ジョブの一時停止や優先度変更のためのユーザーコマンドも受け付けられるライブなレンダーダッシュボードのようなケースです。",[85,11334,11335],{},"SSEは、サーバーがクライアントへ継続的なデータストリームをプッシュし、クライアントが応答を返す必要がないときのよりシンプルな代替です。ログテールのビューアや、長時間実行されるパイプライン処理の進捗フィードのような用途に向きます。",[85,11337,11338],{},"WebRTCは、到達可能な限り最小のレイテンシーでピアツーピアのデータ転送が必要なときの解決策です。特にブラウザ向けのインタラクティブなビューポートやプレビューのストリーミングに適しています。",[39,11340,11341],{},"どれも万能に優れているわけではありません。最も応答性が高く信頼できるパイプラインを構築できるスタジオは、目の前の課題に対して各ツールを「ちょうど適切に」当てはめられるだけの理解を持っているところです。",[39,11343,11344],{},"まずは、今のパイプラインの中でアーティストが情報を待っている場面を1か所監査してください。状況に合うパターンを選び、実装して、その差を測定しましょう。",{"title":53,"searchDepth":336,"depth":336,"links":11346},[11347,11348,11352,11356,11360,11364,11368],{"id":11129,"depth":336,"text":11130},{"id":11145,"depth":336,"text":11146,"children":11349},[11350,11351],{"id":11161,"depth":1088,"text":11162},{"id":11173,"depth":1088,"text":11174},{"id":11185,"depth":336,"text":11186,"children":11353},[11354,11355],{"id":11195,"depth":1088,"text":11162},{"id":11206,"depth":1088,"text":11174},{"id":11217,"depth":336,"text":11218,"children":11357},[11358,11359],{"id":11230,"depth":1088,"text":11162},{"id":11241,"depth":1088,"text":11174},{"id":11252,"depth":336,"text":11253,"children":11361},[11362,11363],{"id":11262,"depth":1088,"text":11162},{"id":11273,"depth":1088,"text":11174},{"id":11287,"depth":336,"text":11288,"children":11365},[11366,11367],{"id":11297,"depth":1088,"text":11162},{"id":11308,"depth":1088,"text":11174},{"id":4755,"depth":336,"text":7608},"https://images.unsplash.com/photo-1621294465978-6b4198a5f2f7?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8c2VhcmNofDZ8fG1lc3N5JTIwZWxlY3RyaWMlMjBjYWJsZXN8ZW58MHx8fHwxNzc5NDQ1Mjg4fDA&ixlib=rb-4.1.0&q=80&w=2000",{"updated_at":11371,"コンポジターはショットのレンダリングが完了したタイミングを把握しなければなりません。下流のすべてのプロセスは、アセットが承認されたら即座に反応すべきです。監督側が、3時間後になって「フレーム847でレンダリングが失敗した」と知る必要があってはなりません。\nそれでも多くのスタジオでは、更新をタイマーで確認するような仕組みや、ダッシュボードを手作業で更新する運用、タスクが完了したことをアーティストに同僚へ知らせてもらう運用に頼っており、人為的なミスが、作業を自動化すべき場所に入り込んでしまっています。\nこの記事では、5つのリアルタイム・コミュニケーションのパターン（ポーリング、Webhook、WebSockets、Server-Sent Events（SSE）、WebRTC）を扱います。それぞれについて、何であるか、CGパイプラインの文脈でどのように適用できるか、そしてどこで役に立ち、どこで問題が起きるのかを学びます。最後には、適切な技術を適切な課題に選び取るための明確な判断マトリクスが得られるでしょう。\" featured_at":350,"visibility":351},"2026-05-22T12:23:51.000+02:00","/blog-i18n/ja/webhooks-vs-polling-sse-websockets-webrtc-cg-pipelines","2026-05-19T12:17:00.000+02:00",{"title":11110,"description":11117},"webhooks-vs-polling-sse-websockets-webrtc-cg-pipelines","blog-i18n/ja/webhooks-vs-polling-sse-websockets-webrtc-cg-pipelines/index",[11378],{"id":6909,"name":6910,"slug":6911,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":11379},"https://cgwire.ghost.io/tag/pipeline/","pXjOSZuLBo2Q-l7NNT4isBpHwT2nSmFw4f8QoS6CUeg",{"id":11382,"title":11383,"authors":11384,"body":11386,"description":53,"extension":346,"feature_image":12387,"html":11,"meta":12388,"navigation":352,"path":12390,"published_at":12391,"seo":12392,"slug":12393,"stem":12394,"tags":12395,"__hash__":12397,"updated_at":12389,"featured_at":350,"visibility":351},"blog/blog-i18n/ja/blender-scripting-camera-paths/index.md","Blenderスクリプトでカメラアニメーション（2026）：コード例付きの完全ガイド",[11385],{"id":8,"name":9,"slug":10,"profile_image":11,"cover_image":11,"bio":11,"website":11,"location":11,"facebook":11,"twitter":11,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":4860},{"type":14,"value":11387,"toc":12379},[11388,11399,11402,11405,11408,11411,11415,11418,11421,11424,11427,11430,11434,11440,11561,11583,11596,11606,11612,11615,11621,11625,11628,11791,11801,11807,11815,11821,11824,11827,11833,11839,11842,11847,11862,11866,11869,12084,12094,12097,12104,12111,12118,12124,12127,12133,12146,12160,12164,12171,12298,12304,12310,12316,12319,12325,12328,12334,12343,12346,12348,12351,12354,12369,12375],[17,11389,11391,11395],{"className":11390},[20,21,22],[17,11392,11394],{"className":11393},[26],"🎥",[17,11396,11398],{"className":11397},[31],"If you are keyframing camera movements by hand, you are probably doing more work than you need to.",[39,11400,11401],{},"Blenderでカメラを手作業でアニメーションさせるのは、なかなか大変です。きれいなドリーショットを頭に描いて、キーフレームを1つずつ置いていっても、なぜか最終的にガタついた動きや散らかったタイムラインになってしまうことがあります。この種のドリフトは、他に使えるはずの時間をすぐに食ってしまいます。",[39,11403,11404],{},"そこで登場するのがスクリプトです。",[39,11406,11407],{},"BlenderのPython APIは、カメラ位置、回転、視野角、パス移動を直接制御できます。そしてそれがコードである以上、キー フレームをスクラブして「ほんの少しズレているもの」を探し回る代わりに、数秒で微調整して再実行できます。",[39,11409,11410],{},"このガイドでは、その実践的な部分を扱います：カメラを追加する方法、移動タイプを定義する方法、スプラインに沿ってアニメーションする方法、そして動く被写体を追跡する方法。読み終わる頃には、今後のプロジェクトにそのまま持ち込める小さなツールキットが手に入るはずです。",[66,11412,11414],{"id":11413},"なぜスクリプトでカメラ移動なのか","なぜスクリプトでカメラ移動なのか？",[39,11416,11417],{},"建築パースのウォークスルー、プロダクトショーケース、あるいは何十もの似たショットを含むカットシーンのようなものを制作している場合、各ショットを手で個別にキーフレーム設定するのは退屈で面倒です。スクリプトなら、オブジェクトの周りの完全なオービット、ラッ クフォーカスの一連、またはなめらかなクレーン移動を数秒で生成でき、しかも必要に応じてそのまま再現できます。",[39,11419,11420],{},"人間の手でキーフレームを打つと、微妙な不一致も入りがちです。例えば、テイク2ではパンの加速が少しだけ違っていたり、ズームが数フレーム分オーバーしていたり。スクリプトは数学的な精度を強制します。各ショットは、指定したイージングカーブと速度に対してまったく同じ動作になります。",[39,11422,11423],{},"スタジオでもフリーランサーでも、時間はお金です。スクリプト化されたカメラは、手作業の微調整に伴う往復を大幅に減らします。ディレクターが「カメラを10%速くして」「5度高くして」と言っても、全面的な作り直しの再キー フレームは不要で、変数の変更だけで済みます。",[39,11425,11426],{},"スクリプトは生きたドキュメントです：カメラのロジックをパラメータ化された関数で包むことで、タイミング、距離、イージングを非破壊的に調整でき、過去の作業を壊すことなく改善できます。",[39,11428,11429],{},"ここで挙げた理由すべてを考慮すれば、将来のあなたは確実に何時間も得をするでしょう！",[66,11431,11433],{"id":11432},"_1-カメラを追加する","1. カメラを追加する",[39,11435,11436,11437,11439],{},"まず最初に、Blenderの ",[5648,11438,7725],{}," モジュールを使ってプログラム的にカメラを作成・管理する方法を理解しておくのが重要です：",[5701,11441,11445],{"className":11442,"code":11443,"language":11444,"meta":53,"style":53},"language-python shiki shiki-themes github-light github-dark","import bpy\n\ndef add_camera(name=\"ScriptedCamera\", location=(0, -10, 5)):\n    bpy.ops.object.camera_add(location=location)\n    camera = bpy.context.active_object\n    camera.name = name\n    return camera\n\ndef remove_camera(name):\n    obj = bpy.data.objects.get(name)\n    if obj and obj.type == 'CAMERA':\n        bpy.data.objects.remove(obj, do_unlink=True)\n\ndef list_cameras():\n    return [obj for obj in bpy.data.objects if obj.type == 'CAMERA']\n\ncam = add_camera(name=\"MainCam\", location=(0, -10, 2))\nbpy.context.scene.camera = cam \n\nprint(\"Cameras in scene:\", [c.name for c in list_cameras()])\n","python",[5648,11446,11447,11453,11458,11463,11469,11475,11481,11487,11492,11498,11504,11510,11516,11521,11527,11533,11538,11544,11550,11555],{"__ignoreMap":53},[1671,11448,11451],{"class":11449,"line":11450},"line",1,[1671,11452,7869],{},[1671,11454,11455],{"class":11449,"line":336},[1671,11456,11457],{"emptyLinePlaceholder":352},"\n",[1671,11459,11460],{"class":11449,"line":1088},[1671,11461,11462],{},"def add_camera(name=\"ScriptedCamera\", location=(0, -10, 5)):\n",[1671,11464,11466],{"class":11449,"line":11465},4,[1671,11467,11468],{},"    bpy.ops.object.camera_add(location=location)\n",[1671,11470,11472],{"class":11449,"line":11471},5,[1671,11473,11474],{},"    camera = bpy.context.active_object\n",[1671,11476,11478],{"class":11449,"line":11477},6,[1671,11479,11480],{},"    camera.name = name\n",[1671,11482,11484],{"class":11449,"line":11483},7,[1671,11485,11486],{},"    return camera\n",[1671,11488,11490],{"class":11449,"line":11489},8,[1671,11491,11457],{"emptyLinePlaceholder":352},[1671,11493,11495],{"class":11449,"line":11494},9,[1671,11496,11497],{},"def remove_camera(name):\n",[1671,11499,11501],{"class":11449,"line":11500},10,[1671,11502,11503],{},"    obj = bpy.data.objects.get(name)\n",[1671,11505,11507],{"class":11449,"line":11506},11,[1671,11508,11509],{},"    if obj and obj.type == 'CAMERA':\n",[1671,11511,11513],{"class":11449,"line":11512},12,[1671,11514,11515],{},"        bpy.data.objects.remove(obj, do_unlink=True)\n",[1671,11517,11519],{"class":11449,"line":11518},13,[1671,11520,11457],{"emptyLinePlaceholder":352},[1671,11522,11524],{"class":11449,"line":11523},14,[1671,11525,11526],{},"def list_cameras():\n",[1671,11528,11530],{"class":11449,"line":11529},15,[1671,11531,11532],{},"    return [obj for obj in bpy.data.objects if obj.type == 'CAMERA']\n",[1671,11534,11536],{"class":11449,"line":11535},16,[1671,11537,11457],{"emptyLinePlaceholder":352},[1671,11539,11541],{"class":11449,"line":11540},17,[1671,11542,11543],{},"cam = add_camera(name=\"MainCam\", location=(0, -10, 2))\n",[1671,11545,11547],{"class":11449,"line":11546},18,[1671,11548,11549],{},"bpy.context.scene.camera = cam \n",[1671,11551,11553],{"class":11449,"line":11552},19,[1671,11554,11457],{"emptyLinePlaceholder":352},[1671,11556,11558],{"class":11449,"line":11557},20,[1671,11559,11560],{},"print(\"Cameras in scene:\", [c.name for c in list_cameras()])\n",[39,11562,11563,11566,11567,11570,11571,11574,11575,11578,11579,11582],{},[5648,11564,11565],{},"add_camera()"," は Blender の ",[5648,11568,11569],{},"bpy.ops.object.camera_add()"," オペレーターを使って、新しいカメラを3Dシーンに指定した ",[5648,11572,11573],{},"(X, Y, Z)"," の位置に挿入します。この例ではデフォルトが ",[5648,11576,11577],{},"(0, -10, 5)"," です。作成後に、追加されたばかりのオブジェクトを ",[5648,11580,11581],{},"bpy.context.active_object"," で取得し、カスタム名を割り当て、呼び出し側が後で参照できるように返します。",[39,11584,11585,11588,11589,11592,11593,11595],{},[5648,11586,11587],{},"remove_camera()"," は ",[5648,11590,11591],{},"bpy.data.objects"," 内で名前を使ってオブジェクトを探し、削除前にそれが実際にカメラであることを確認します。",[5648,11594,7885],{}," を指定することで、そのオブジェクトがシーンから完全に削除され、単に非表示にするだけではなく、所属するコレクションからも確実に外されます。",[39,11597,11598,11601,11602,11605],{},[5648,11599,11600],{},"list_cameras()"," は、現在の Blender のシーン内のすべてのオブジェクトを反復処理し、型が ",[5648,11603,11604],{},"'CAMERA'"," のものだけを含むフィルタ済みリストを返します。これは、ある時点で存在するカメラをまとめて把握するためのシンプルなユーティリティです。",[39,11607,11608,11611],{},[5648,11609,11610],{},"bpy.context.scene.camera"," を設定することで、Blenderがレンダリングに使うカメラを指定できます。シーン内には複数のカメラを用意でき、マーカーを使って特定のフレームで切り替えることも可能です。マルチアングルのシーケンスでは非常に役に立ちます。",[39,11613,11614],{},"スクリプトタブでこのスクリプトを実行すると、ビューポートに2つ目のカメラが追加されるのが確認できます：",[39,11616,11617],{},[48,11618],{"alt":11619,"src":11620},"Two cameras in a Blender scene","./images/0.jpg",[66,11622,11624],{"id":11623},"_2-カメラ移動タイプ","2. カメラ移動タイプ",[39,11626,11627],{},"シーンにカメラがあるなら、次はそれを動かす番です。ほとんどのシネマティックなカメラ移動は、カメラオブジェクトへの単純な変換（トランスフォーム）に対応します：",[5701,11629,11631],{"className":11442,"code":11630,"language":11444,"meta":53,"style":53},"import bpy\nimport math\n\ndef zoom(camera, start_fov=50, end_fov=20, start_frame=1, end_frame=60):\n    cam_data = camera.data\n    cam_data.lens = start_fov\n    cam_data.keyframe_insert(data_path=\"lens\", frame=start_frame)\n    cam_data.lens = end_fov\n    cam_data.keyframe_insert(data_path=\"lens\", frame=end_frame)\n\ndef pan(camera, start_angle=0, end_angle=45, start_frame=1, end_frame=60):\n    camera.rotation_euler.z = math.radians(start_angle)\n    camera.keyframe_insert(data_path=\"rotation_euler\", frame=start_frame)\n    camera.rotation_euler.z = math.radians(end_angle)\n    camera.keyframe_insert(data_path=\"rotation_euler\", frame=end_frame)\n\ndef tilt(camera, start_angle=0, end_angle=20, start_frame=1, end_frame=60):\n    camera.rotation_euler.x = math.radians(90 + start_angle)\n    camera.keyframe_insert(data_path=\"rotation_euler\", frame=start_frame)\n    camera.rotation_euler.x = math.radians(90 + end_angle)\n    camera.keyframe_insert(data_path=\"rotation_euler\", frame=end_frame)\n\ndef truck(camera, start_x=0, end_x=5, start_frame=1, end_frame=60):\n    camera.location.x = start_x\n    camera.keyframe_insert(data_path=\"location\", frame=start_frame)\n    camera.location.x = end_x\n    camera.keyframe_insert(data_path=\"location\", frame=end_frame)\n\ncam = bpy.context.scene.camera\nzoom(cam, start_fov=50, end_fov=25, start_frame=1, end_frame=90)\npan(cam, start_angle=0, end_angle=30, start_frame=90, end_frame=150)\n",[5648,11632,11633,11637,11642,11646,11651,11656,11661,11666,11671,11676,11680,11685,11690,11695,11700,11705,11709,11714,11719,11723,11728,11733,11738,11744,11750,11756,11762,11768,11773,11779,11785],{"__ignoreMap":53},[1671,11634,11635],{"class":11449,"line":11450},[1671,11636,7869],{},[1671,11638,11639],{"class":11449,"line":336},[1671,11640,11641],{},"import math\n",[1671,11643,11644],{"class":11449,"line":1088},[1671,11645,11457],{"emptyLinePlaceholder":352},[1671,11647,11648],{"class":11449,"line":11465},[1671,11649,11650],{},"def zoom(camera, start_fov=50, end_fov=20, start_frame=1, end_frame=60):\n",[1671,11652,11653],{"class":11449,"line":11471},[1671,11654,11655],{},"    cam_data = camera.data\n",[1671,11657,11658],{"class":11449,"line":11477},[1671,11659,11660],{},"    cam_data.lens = start_fov\n",[1671,11662,11663],{"class":11449,"line":11483},[1671,11664,11665],{},"    cam_data.keyframe_insert(data_path=\"lens\", frame=start_frame)\n",[1671,11667,11668],{"class":11449,"line":11489},[1671,11669,11670],{},"    cam_data.lens = end_fov\n",[1671,11672,11673],{"class":11449,"line":11494},[1671,11674,11675],{},"    cam_data.keyframe_insert(data_path=\"lens\", frame=end_frame)\n",[1671,11677,11678],{"class":11449,"line":11500},[1671,11679,11457],{"emptyLinePlaceholder":352},[1671,11681,11682],{"class":11449,"line":11506},[1671,11683,11684],{},"def pan(camera, start_angle=0, end_angle=45, start_frame=1, end_frame=60):\n",[1671,11686,11687],{"class":11449,"line":11512},[1671,11688,11689],{},"    camera.rotation_euler.z = math.radians(start_angle)\n",[1671,11691,11692],{"class":11449,"line":11518},[1671,11693,11694],{},"    camera.keyframe_insert(data_path=\"rotation_euler\", frame=start_frame)\n",[1671,11696,11697],{"class":11449,"line":11523},[1671,11698,11699],{},"    camera.rotation_euler.z = math.radians(end_angle)\n",[1671,11701,11702],{"class":11449,"line":11529},[1671,11703,11704],{},"    camera.keyframe_insert(data_path=\"rotation_euler\", frame=end_frame)\n",[1671,11706,11707],{"class":11449,"line":11535},[1671,11708,11457],{"emptyLinePlaceholder":352},[1671,11710,11711],{"class":11449,"line":11540},[1671,11712,11713],{},"def tilt(camera, start_angle=0, end_angle=20, start_frame=1, end_frame=60):\n",[1671,11715,11716],{"class":11449,"line":11546},[1671,11717,11718],{},"    camera.rotation_euler.x = math.radians(90 + start_angle)\n",[1671,11720,11721],{"class":11449,"line":11552},[1671,11722,11694],{},[1671,11724,11725],{"class":11449,"line":11557},[1671,11726,11727],{},"    camera.rotation_euler.x = math.radians(90 + end_angle)\n",[1671,11729,11731],{"class":11449,"line":11730},21,[1671,11732,11704],{},[1671,11734,11736],{"class":11449,"line":11735},22,[1671,11737,11457],{"emptyLinePlaceholder":352},[1671,11739,11741],{"class":11449,"line":11740},23,[1671,11742,11743],{},"def truck(camera, start_x=0, end_x=5, start_frame=1, end_frame=60):\n",[1671,11745,11747],{"class":11449,"line":11746},24,[1671,11748,11749],{},"    camera.location.x = start_x\n",[1671,11751,11753],{"class":11449,"line":11752},25,[1671,11754,11755],{},"    camera.keyframe_insert(data_path=\"location\", frame=start_frame)\n",[1671,11757,11759],{"class":11449,"line":11758},26,[1671,11760,11761],{},"    camera.location.x = end_x\n",[1671,11763,11765],{"class":11449,"line":11764},27,[1671,11766,11767],{},"    camera.keyframe_insert(data_path=\"location\", frame=end_frame)\n",[1671,11769,11771],{"class":11449,"line":11770},28,[1671,11772,11457],{"emptyLinePlaceholder":352},[1671,11774,11776],{"class":11449,"line":11775},29,[1671,11777,11778],{},"cam = bpy.context.scene.camera\n",[1671,11780,11782],{"class":11449,"line":11781},30,[1671,11783,11784],{},"zoom(cam, start_fov=50, end_fov=25, start_frame=1, end_frame=90)\n",[1671,11786,11788],{"class":11449,"line":11787},31,[1671,11789,11790],{},"pan(cam, start_angle=0, end_angle=30, start_frame=90, end_frame=150)\n",[39,11792,11793,11796,11797,11800],{},[5648,11794,11795],{},"zoom"," 関数は、Blender上でフレームの範囲にわたってカメラの焦点距離をアニメーションし、光学ズームのような効果をシミュレートします。開始時の視野角（field of view）を ",[5648,11798,11799],{},"cam_data.lens"," に設定して開始フレームでキーフレームを挿入し、その後終了時の視野角に設定して終了フレームでもう1つキーフレームを挿入します。",[39,11802,11803,11806],{},[5648,11804,11805],{},"pan"," は、2つの角度の間でカメラを水平方向にZ軸回りに回転させます。Blenderが必要とするため、両方の角度を度からラジアンに変換し、開始フレームでZ回転を設定して、終了フレームで終了角度を設定します。これにより、左右にスイープする動きが生成されます。",[39,11808,11809,11588,11812,11814],{},[5648,11810,11811],{},"tilt",[5648,11813,11805],{}," と同じように動作しますが、作用するのはX軸です。垂直方向（上下）のカメラ移動を作るためです。変換の前に角度に90度のオフセットが入るのは、Blenderのデフォルトのカメラ向きがX軸方向に下を向いているためです。したがって90°は「まっすぐ前を見る」ことを意味し、それに対するチルトが適用されます。",[39,11816,11817,11820],{},[5648,11818,11819],{},"truck"," は、回転ではなく物理的にカメラをX軸方向に左または右へ移動します。開始フレームと終了フレームでカメラのX位置にキーフレームを設定することで、シーン上を横方向にスライドさせます。",[39,11822,11823],{},"他にもカメラ移動のタイプはいろいろありますが、ここまででイメージは掴めたはずです。",[39,11825,11826],{},"例として、Blenderの現在のコンテキストからアクティブなシーンカメラを取得し、そこに2つのカメラ移動を順番に連結します。まず、スクリプトがフレーム1〜90の間でレンズを50mmから25mmへズームインします。",[39,11828,11829],{},[48,11830],{"alt":11831,"src":11832},"zoom start","./images/1.jpg",[39,11834,11835],{},[48,11836],{"alt":11837,"src":11838},"zoom end","./images/1-2.jpg",[39,11840,11841],{},"次に、ズームが完了したら、フレーム90〜150の間でカメラを右に30度パンします。2つのアニメーションはフレーム90を共通の遷移点として共有するため、ある動きが次の動きへきれいに引き継がれます。",[39,11843,11844],{},[48,11845],{"alt":11805,"src":11846},"./images/2.jpg",[39,11848,11849,11850,11853,11854,11857,11858,11861],{},"各関数は、該当するデータパスにキーフレームを挿入し、Blenderがそれらの間を自動的に補間します。アニメーションをよりシネマティックにするには、キーフレーム後にグラフエディターで結果のFカーブの補間モードを ",[5648,11851,11852],{},"BEZIER"," や ",[5648,11855,11856],{},"EASE_IN_OUT"," に設定するか、",[5648,11859,11860],{},"fcurve.keyframe_points[i].interpolation"," を使ってプログラム的に変更できます。",[66,11863,11865],{"id":11864},"_3-スプラインパスを定義する","3. スプラインパスを定義する",[39,11867,11868],{},"直線的な移動では、シネマティックさがあまり出ません。クレーンアークやフライスルーのような滑らかなカメラモーションでは、カメラをBézierまたはNURBSスプラインパスに沿って動かしたくなることがあります。ここでも、スクリプトが大いに役立ちます：",[5701,11870,11872],{"className":11442,"code":11871,"language":11444,"meta":53,"style":53},"import bpy\n\ndef create_camera_path(points, camera):\n    curve_data = bpy.data.curves.new(name=\"CameraPath\", type='CURVE')\n    curve_data.dimensions = '3D'\n    curve_data.use_path = True\n    curve_data.path_duration = bpy.context.scene.frame_end\n\n    spline = curve_data.splines.new('BEZIER')\n    spline.bezier_points.add(len(points) - 1)\n\n    for i, pt in enumerate(points):\n        bp = spline.bezier_points[i]\n        bp.co = pt\n        bp.handle_left_type = 'AUTO'\n        bp.handle_right_type = 'AUTO'\n\n    path_obj = bpy.data.objects.new(\"CameraPath\", curve_data)\n    bpy.context.scene.collection.objects.link(path_obj)\n\n    constraint = camera.constraints.new(type='FOLLOW_PATH')\n    constraint.target = path_obj\n    constraint.use_curve_follow = True\n\n    constraint.offset = 0\n    constraint.keyframe_insert(data_path=\"offset\", frame=1)\n    constraint.offset = -100\n    constraint.keyframe_insert(data_path=\"offset\",\n                               frame=bpy.context.scene.frame_end)\n\n    return path_obj\n\npath_points = [\n    (0, -8, 3),\n    (-5, -5, 4),\n    (-7, 0, 3),\n    (-4, 5, 2),\n    (0, 7, 2),\n]\n\ncam = bpy.context.scene.camera\ncreate_camera_path(path_points, cam)\n",[5648,11873,11874,11878,11882,11887,11892,11897,11902,11907,11911,11916,11921,11925,11930,11935,11940,11945,11950,11954,11959,11964,11968,11973,11978,11983,11987,11992,11997,12002,12007,12012,12016,12021,12026,12032,12038,12044,12050,12056,12062,12068,12073,12078],{"__ignoreMap":53},[1671,11875,11876],{"class":11449,"line":11450},[1671,11877,7869],{},[1671,11879,11880],{"class":11449,"line":336},[1671,11881,11457],{"emptyLinePlaceholder":352},[1671,11883,11884],{"class":11449,"line":1088},[1671,11885,11886],{},"def create_camera_path(points, camera):\n",[1671,11888,11889],{"class":11449,"line":11465},[1671,11890,11891],{},"    curve_data = bpy.data.curves.new(name=\"CameraPath\", type='CURVE')\n",[1671,11893,11894],{"class":11449,"line":11471},[1671,11895,11896],{},"    curve_data.dimensions = '3D'\n",[1671,11898,11899],{"class":11449,"line":11477},[1671,11900,11901],{},"    curve_data.use_path = True\n",[1671,11903,11904],{"class":11449,"line":11483},[1671,11905,11906],{},"    curve_data.path_duration = bpy.context.scene.frame_end\n",[1671,11908,11909],{"class":11449,"line":11489},[1671,11910,11457],{"emptyLinePlaceholder":352},[1671,11912,11913],{"class":11449,"line":11494},[1671,11914,11915],{},"    spline = curve_data.splines.new('BEZIER')\n",[1671,11917,11918],{"class":11449,"line":11500},[1671,11919,11920],{},"    spline.bezier_points.add(len(points) - 1)\n",[1671,11922,11923],{"class":11449,"line":11506},[1671,11924,11457],{"emptyLinePlaceholder":352},[1671,11926,11927],{"class":11449,"line":11512},[1671,11928,11929],{},"    for i, pt in enumerate(points):\n",[1671,11931,11932],{"class":11449,"line":11518},[1671,11933,11934],{},"        bp = spline.bezier_points[i]\n",[1671,11936,11937],{"class":11449,"line":11523},[1671,11938,11939],{},"        bp.co = pt\n",[1671,11941,11942],{"class":11449,"line":11529},[1671,11943,11944],{},"        bp.handle_left_type = 'AUTO'\n",[1671,11946,11947],{"class":11449,"line":11535},[1671,11948,11949],{},"        bp.handle_right_type = 'AUTO'\n",[1671,11951,11952],{"class":11449,"line":11540},[1671,11953,11457],{"emptyLinePlaceholder":352},[1671,11955,11956],{"class":11449,"line":11546},[1671,11957,11958],{},"    path_obj = bpy.data.objects.new(\"CameraPath\", curve_data)\n",[1671,11960,11961],{"class":11449,"line":11552},[1671,11962,11963],{},"    bpy.context.scene.collection.objects.link(path_obj)\n",[1671,11965,11966],{"class":11449,"line":11557},[1671,11967,11457],{"emptyLinePlaceholder":352},[1671,11969,11970],{"class":11449,"line":11730},[1671,11971,11972],{},"    constraint = camera.constraints.new(type='FOLLOW_PATH')\n",[1671,11974,11975],{"class":11449,"line":11735},[1671,11976,11977],{},"    constraint.target = path_obj\n",[1671,11979,11980],{"class":11449,"line":11740},[1671,11981,11982],{},"    constraint.use_curve_follow = True\n",[1671,11984,11985],{"class":11449,"line":11746},[1671,11986,11457],{"emptyLinePlaceholder":352},[1671,11988,11989],{"class":11449,"line":11752},[1671,11990,11991],{},"    constraint.offset = 0\n",[1671,11993,11994],{"class":11449,"line":11758},[1671,11995,11996],{},"    constraint.keyframe_insert(data_path=\"offset\", frame=1)\n",[1671,11998,11999],{"class":11449,"line":11764},[1671,12000,12001],{},"    constraint.offset = -100\n",[1671,12003,12004],{"class":11449,"line":11770},[1671,12005,12006],{},"    constraint.keyframe_insert(data_path=\"offset\",\n",[1671,12008,12009],{"class":11449,"line":11775},[1671,12010,12011],{},"                               frame=bpy.context.scene.frame_end)\n",[1671,12013,12014],{"class":11449,"line":11781},[1671,12015,11457],{"emptyLinePlaceholder":352},[1671,12017,12018],{"class":11449,"line":11787},[1671,12019,12020],{},"    return path_obj\n",[1671,12022,12024],{"class":11449,"line":12023},32,[1671,12025,11457],{"emptyLinePlaceholder":352},[1671,12027,12029],{"class":11449,"line":12028},33,[1671,12030,12031],{},"path_points = [\n",[1671,12033,12035],{"class":11449,"line":12034},34,[1671,12036,12037],{},"    (0, -8, 3),\n",[1671,12039,12041],{"class":11449,"line":12040},35,[1671,12042,12043],{},"    (-5, -5, 4),\n",[1671,12045,12047],{"class":11449,"line":12046},36,[1671,12048,12049],{},"    (-7, 0, 3),\n",[1671,12051,12053],{"class":11449,"line":12052},37,[1671,12054,12055],{},"    (-4, 5, 2),\n",[1671,12057,12059],{"class":11449,"line":12058},38,[1671,12060,12061],{},"    (0, 7, 2),\n",[1671,12063,12065],{"class":11449,"line":12064},39,[1671,12066,12067],{},"]\n",[1671,12069,12071],{"class":11449,"line":12070},40,[1671,12072,11457],{"emptyLinePlaceholder":352},[1671,12074,12076],{"class":11449,"line":12075},41,[1671,12077,11778],{},[1671,12079,12081],{"class":11449,"line":12080},42,[1671,12082,12083],{},"create_camera_path(path_points, cam)\n",[39,12085,12086,12087,12090,12091,12093],{},"このコードスニペットでは、背後から右方向へ伸び、左へ回り込みながら前へスイープし、その後原点より少し手前かつ上に落ち着くカーブしたアークを描くための5つの3D座標を定義します。シーンのアクティブカメラを取得し、ポイントのリストとカメラの両方を ",[5648,12088,12089],{},"create_camera_path"," に渡すことで、完全なセットアップをトリガーし、このアークに沿ってシーン全体を通してカメラが滑らかに飛ぶようになります。",[5648,12092,12089],{}," は、Blender上で滑らかな3Dカメラアニメーションパスを作成します。",[39,12095,12096],{},"スクリプトはまず、「CameraPath」という名前の新しいカーブオブジェクトを作成し、3D Bezierスプラインとして設定します。さらに、その総デュレーションをシーンの終了フレームに合わせます。",[39,12098,12099,12100,12103],{},"次に、提供されたポイントでスプラインを埋めます。各制御点のハンドルタイプを ",[5648,12101,12102],{},"AUTO"," に設定することで、Blenderがそれらの間の滑らかなカーブを自動的に計算します。生成されたカーブはBlenderのオブジェクトに包まれ、アクティブシーンのコレクションにリンクされるため、表示されるようになります。",[39,12105,12106,12107,12110],{},"続いて、カメラに ",[5648,12108,12109],{},"FOLLOW_PATH"," 制約を追加し、新しいカーブをターゲットとして指定します。これにより、カメラがそのカーブに沿って移動せざるを得なくなります。",[39,12112,12113,12114,12117],{},"最後に、スクリプトは制約の ",[5648,12115,12116],{},"offset"," プロパティを2つのキーフレームでアニメーションします。フレーム1でオフセット0（パスの開始）：",[39,12119,12120],{},[48,12121],{"alt":12122,"src":12123},"path start","./images/3.jpg",[39,12125,12126],{},"そしてシーン最後のフレームでオフセット-100（パスの終了）：",[39,12128,12129],{},[48,12130],{"alt":12131,"src":12132},"path end","./images/4.jpg",[39,12134,12135,12137,12138,12141,12142,12145],{},[5648,12136,12109],{}," 制約が、位置に関するすべての計算を処理します。",[5648,12139,12140],{},"use_curve_follow"," を ",[5648,12143,12144],{},"True"," に設定すると、カメラの前方軸がカーブの接線と一致するため、自然に進行方向を向きます。",[39,12147,12148,12149,12151,12152,12155,12156,12159],{},"また、ハンドルタイプを ",[5648,12150,12102],{}," から ",[5648,12153,12154],{},"VECTOR"," に変えてシャープなコーナーを作ったり、",[5648,12157,12158],{},"FREE"," にしてBézierハンドルを完全に手動で制御することもできます。",[66,12161,12163],{"id":12162},"_4-被写体を追跡する","4. 被写体を追跡する",[39,12165,12166,12167,12170],{},"動くキャラクターやオブジェクトを追いかけるカメラは、アクションショットや会話シーンでも欠かせません。Blenderの ",[5648,12168,12169],{},"TRACK_TO"," 制約を使えば、コードでの設定がとても簡単です：",[5701,12172,12174],{"className":11442,"code":12173,"language":11444,"meta":53,"style":53},"import bpy\n\ndef track_camera_to_subject(camera, subject_name, track_axis='TRACK_NEGATIVE_Z', up_axis='UP_Y'):\n\n    subject = bpy.data.objects.get(subject_name)\n    if subject is None:\n        print(f\"Subject '{subject_name}' not found.\")\n        return\n\n    constraint = camera.constraints.new(type='TRACK_TO')\n    constraint.target = subject\n    constraint.track_axis = track_axis\n    constraint.up_axis = up_axis\n    return constraint\n\ndef add_damped_track(camera, subject_name):\n    subject = bpy.data.objects.get(subject_name)\n    if subject is None:\n        return\n\n    constraint = camera.constraints.new(type='DAMPED_TRACK')\n    constraint.target = subject\n    constraint.track_axis = 'TRACK_NEGATIVE_Z'\n    return constraint\n\ncam = bpy.context.scene.camera\ntrack_camera_to_subject(cam, \"Cube\")\n",[5648,12175,12176,12180,12184,12189,12193,12198,12203,12208,12213,12217,12222,12227,12232,12237,12242,12246,12251,12255,12259,12263,12267,12272,12276,12281,12285,12289,12293],{"__ignoreMap":53},[1671,12177,12178],{"class":11449,"line":11450},[1671,12179,7869],{},[1671,12181,12182],{"class":11449,"line":336},[1671,12183,11457],{"emptyLinePlaceholder":352},[1671,12185,12186],{"class":11449,"line":1088},[1671,12187,12188],{},"def track_camera_to_subject(camera, subject_name, track_axis='TRACK_NEGATIVE_Z', up_axis='UP_Y'):\n",[1671,12190,12191],{"class":11449,"line":11465},[1671,12192,11457],{"emptyLinePlaceholder":352},[1671,12194,12195],{"class":11449,"line":11471},[1671,12196,12197],{},"    subject = bpy.data.objects.get(subject_name)\n",[1671,12199,12200],{"class":11449,"line":11477},[1671,12201,12202],{},"    if subject is None:\n",[1671,12204,12205],{"class":11449,"line":11483},[1671,12206,12207],{},"        print(f\"Subject '{subject_name}' not found.\")\n",[1671,12209,12210],{"class":11449,"line":11489},[1671,12211,12212],{},"        return\n",[1671,12214,12215],{"class":11449,"line":11494},[1671,12216,11457],{"emptyLinePlaceholder":352},[1671,12218,12219],{"class":11449,"line":11500},[1671,12220,12221],{},"    constraint = camera.constraints.new(type='TRACK_TO')\n",[1671,12223,12224],{"class":11449,"line":11506},[1671,12225,12226],{},"    constraint.target = subject\n",[1671,12228,12229],{"class":11449,"line":11512},[1671,12230,12231],{},"    constraint.track_axis = track_axis\n",[1671,12233,12234],{"class":11449,"line":11518},[1671,12235,12236],{},"    constraint.up_axis = up_axis\n",[1671,12238,12239],{"class":11449,"line":11523},[1671,12240,12241],{},"    return constraint\n",[1671,12243,12244],{"class":11449,"line":11529},[1671,12245,11457],{"emptyLinePlaceholder":352},[1671,12247,12248],{"class":11449,"line":11535},[1671,12249,12250],{},"def add_damped_track(camera, subject_name):\n",[1671,12252,12253],{"class":11449,"line":11540},[1671,12254,12197],{},[1671,12256,12257],{"class":11449,"line":11546},[1671,12258,12202],{},[1671,12260,12261],{"class":11449,"line":11552},[1671,12262,12212],{},[1671,12264,12265],{"class":11449,"line":11557},[1671,12266,11457],{"emptyLinePlaceholder":352},[1671,12268,12269],{"class":11449,"line":11730},[1671,12270,12271],{},"    constraint = camera.constraints.new(type='DAMPED_TRACK')\n",[1671,12273,12274],{"class":11449,"line":11735},[1671,12275,12226],{},[1671,12277,12278],{"class":11449,"line":11740},[1671,12279,12280],{},"    constraint.track_axis = 'TRACK_NEGATIVE_Z'\n",[1671,12282,12283],{"class":11449,"line":11746},[1671,12284,12241],{},[1671,12286,12287],{"class":11449,"line":11752},[1671,12288,11457],{"emptyLinePlaceholder":352},[1671,12290,12291],{"class":11449,"line":11758},[1671,12292,11778],{},[1671,12294,12295],{"class":11449,"line":11764},[1671,12296,12297],{},"track_camera_to_subject(cam, \"Cube\")\n",[39,12299,12300,12303],{},[5648,12301,12302],{},"track_camera_to_subject"," は、名前でBlenderオブジェクトを検索し、指定したカメラに「Track To（追跡）」制約を追加して、その被写体を剛体のように指す状態にします。カメラがどの軸に沿って向くか、そしてどの軸を上方向として保つかを指定でき、デフォルトは追跡が負のZ軸、上方向がY軸です。指定された被写体がシーンに存在しない場合は警告を出して早期に終了し、存在する場合は新しい制約を設定して返します。",[39,12305,12306,12309],{},[5648,12307,12308],{},"add_damped_track"," は同様のことを行いますが、「Damped Track（減衰トラック）」制約を使う点が異なります。これは、厳密に軸を固定した狙いよりも、より柔らかく自然な回転を生みます。成功時には制約を返しますが、追跡に使う軸は常に負のZ軸を使います。",[39,12311,12312,12313,12315],{},"このプログラムは、開いているBlenderシーンで現在アクティブになっているカメラを取得し、デフォルトの軸を使って ",[5648,12314,12302],{}," を呼び出し、デフォルトのCubeオブジェクトを指すようにします。",[39,12317,12318],{},"見ての通り、カメラを動かしても、視界はCubeオブジェクト中心のままです。移動前：",[39,12320,12321],{},[48,12322],{"alt":12323,"src":12324},"follow start","./images/5.jpg",[39,12326,12327],{},"そしてカメラやCubeを移動した後：",[39,12329,12330],{},[48,12331],{"alt":12332,"src":12333},"follow end","./images/6.jpg",[39,12335,12336,12338,12339,12342],{},[5648,12337,12169],{}," は剛性のロックを提供します。被写体がどこへ動いても、カメラは即座にその方向へ向き直ります。より有機的で、少し遅れて追従するような（ショルダーカムやハンディカム風シミュレーションでよくある）感触にしたい場合は、代わりに ",[5648,12340,12341],{},"DAMPED_TRACK"," を使ってください。",[39,12344,12345],{},"もちろん、制約を重ねることもできます。例えば、スプラインパスに沿って移動しながら同時に被写体を追跡すれば、キャラクターの周りを回りつつ常にフレーミングを維持するような複雑なショットを作れます。",[66,12347,4756],{"id":4756},[39,12349,12350],{},"BlenderのPython APIを使うことで、カメラアニメーションはエラーが起きやすい手作業のプロセスから、精密なシステムへと変わります。カメラをプログラム的に追加・管理する方法、ズーム、パン、チルト、トラックといった基本的な動きをキーフレーム化する方法、滑らかなスプラインパスに沿ってカメラを誘導する方法、そして追跡制約で動く被写体へロックする方法を見てきました。",[39,12352,12353],{},"本当の創造性の力が発揮されるのは、これらの技術をオブジェクトアニメーションと組み合わせたときです。Follow Path制約のカメラを、自身でもアニメーションしている被写体と組にすれば、前景と背景のズレを異なる速度で動かして奥行きを作るパララックスショットをスクリプトで生成できます。ドリー移動とは反対方向にズームのオフセットを取れば、コードだけでヒッチコック・ドリーズーム効果が得られます。さらに、軌道に対してTrack To制約をレイヤーすることで、複雑な「被写体追従」のクレーンショットまで自動的にアニメーションされます。",[17,12355,12357,12360],{"className":12356},[20,21,22],[17,12358,312],{"className":12359},[26],[17,12361,12363,12364,12368],{"className":12362},[31],"To learn more about the animation process ",[231,12365,12367],{"href":3404,"rel":12366},[321],"consider joining our Discord community","! We connect with over a thousand experts who share best practices and occasionally organize in-person events. We’d be happy to welcome you! 😊",[17,12370,12372],{"className":12371},[20,327,328],[231,12373,1990],{"href":3404,"className":12374},[332,333],[12376,12377,12378],"style",{},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":53,"searchDepth":336,"depth":336,"links":12380},[12381,12382,12383,12384,12385,12386],{"id":11413,"depth":336,"text":11414},{"id":11432,"depth":336,"text":11433},{"id":11623,"depth":336,"text":11624},{"id":11864,"depth":336,"text":11865},{"id":12162,"depth":336,"text":12163},{"id":4756,"depth":336,"text":4756},"https://images.unsplash.com/photo-1609621336909-e79b48d75de4?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8c2VhcmNofDI0fHxjYW1lcmElMjBtb3ZlbWVudHxlbnwwfHx8fDE3NzY3NTczMDJ8MA&ixlib=rb-4.1.0&q=80&w=2000",{"updated_at":12389,"featured_at":350,"visibility":351},"2026-04-21T09:56:35.000+02:00","/blog-i18n/ja/blender-scripting-camera-paths","2026-04-21T09:47:57.000+02:00",{"title":11383,"description":53},"blender-スクリプト-カメラパス","blog-i18n/ja/blender-scripting-camera-paths/index",[12396],{"id":6909,"name":6910,"slug":6911,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":6912},"qo3ZowMdShEYmqcz5NC4csGVDcEPqwGXJ72jBrSUomY",{"id":12399,"title":12400,"authors":12401,"body":12403,"description":12407,"extension":346,"feature_image":12949,"html":11,"meta":12950,"navigation":352,"path":12952,"published_at":12953,"seo":12954,"slug":12955,"stem":12956,"tags":12957,"__hash__":12959,"updated_at":12951,"featured_at":350,"visibility":351},"blog/blog-i18n/ja/blender-programmatic-animation/index.md","PythonとCSVデータでBlenderアニメーションを自動化する",[12402],{"id":8,"name":9,"slug":10,"profile_image":11,"cover_image":11,"bio":11,"website":11,"location":11,"facebook":11,"twitter":11,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":4860},{"type":14,"value":12404,"toc":12942},[12405,12408,12411,12414,12418,12421,12424,12435,12454,12457,12461,12464,12475,12512,12518,12525,12528,12537,12542,12546,12549,12552,12604,12648,12651,12680,12683,12689,12701,12704,12726,12730,12733,12748,12754,12757,12900,12921,12929,12931,12934,12937,12940],[39,12406,12407],{},"手動のキーフレーム付けは、少数のショットなら問題ありませんが、同じアニメーションを何度も行う必要があると、すぐに作業が反復的になります。グラフエディターでハンドルをドラッグしている時間は、もっと面白いことに使えるはずです。",[39,12409,12410],{},"Blender での Python スクリプトは、特定の問題を解決します。反復的で、データに基づいて動き、かつ複数のオブジェクトやショットにわたって確実に再現する必要があるアニメーションは、手作業で作成すべきではありません。このチュートリアルでは、その正確なやり方をお見せします。",[39,12412,12413],{},"この記事の最後には、CSV ファイルからカメラ位置データを読み取り、Blender 上で手動のキーフレームを一切使わずに完全なアニメーションを生成する動作するスクリプトが手に入ります。このスクリプトを任意の制作パイプラインに投入し、CSV を差し替えるだけで、数秒で新しいアニメーションを得られます。",[66,12415,12417],{"id":12416},"_1-アニメーションデータの構造","1. アニメーションデータの構造",[39,12419,12420],{},"コードを書く前に、Blender が内部で使っているデータ構造を理解する必要があります。",[39,12422,12423],{},"階層は次のように動作します。Object（2D または 3D）がアニメーションデータを保持し、そのアニメーションデータが Action を参照し、Action には F-Curve のコレクションが含まれます。そして各 F-Curve にはキー フレームポイントのシーケンスが入っています。",[39,12425,12426,12427,12430,12431,12434],{},"各 F-Curve はちょうど 1 つのチャンネルに対応します。チャンネルは、次の 2 つで識別されます。",[5648,12428,12429],{},"data_path","（\"location\" や \"rotation_euler\" のような文字列）と、",[5648,12432,12433],{},"array_index","（どの軸かを示す整数。0 は X、1 は Y、2 は Z です）。その F-Curve 上の各キーフレームポイントは座標ペアで、フレーム番号と値の組になっています。",[39,12436,12437,12438,2169,12441,2169,12444,12447,12448,12450,12451,12453],{},"把握しておくべき関連する Python オブジェクトは、",[5648,12439,12440],{},"bpy.data.actions",[5648,12442,12443],{},"action.fcurves",[5648,12445,12446],{},"fcurve.keyframe_points","、そして各 F-Curve の ",[5648,12449,12429],{}," と ",[5648,12452,12433],{}," 属性です。",[39,12455,12456],{},"スタジオ向けの実用的な注意点として、Action には明示的に名前を付けるのが常に良い考えです。Blender はデフォルトで匿名の Action を作成しますが、それらはオブジェクトが複製されたときや、ファイルがクリーンアップされたときに消えてしまいます。名前を付けることで、スクリプトから参照するための安定した対象が得られ、また問題の追跡が必要になった際に Action Editor で識別できるようになります。",[66,12458,12460],{"id":12459},"_2-python-でキーフレームを挿入する","2. Python でキーフレームを挿入する",[39,12462,12463],{},"Python でキーフレームを挿入する方法は 2 つあり、どちらを選ぶかはパフォーマンスに関わります。",[39,12465,12466,12467,12470,12471,12474],{},"1 つ目の方法は ",[5648,12468,12469],{},"object.keyframe_insert(data_path, index, frame)"," です。これはビューポートで ",[5648,12472,12473],{},"I"," を押したときに起きることを反映します。ドライバーや制約を尊重し、シーンを正しく評価し、小数のキーフレームしか扱わない場合や、オブジェクトが他のシーン要素に依存している場合に最も安全な選択肢です。",[5701,12476,12478],{"className":11442,"code":12477,"language":11444,"meta":53,"style":53},"import bpy\n\nobj = bpy.data.objects[\"Cube\"]\n\nfor frame in range(0, 60, 5):\n    obj.location.x = frame * 0.1\n    obj.keyframe_insert(data_path=\"location\", index=0, frame=frame)\n",[5648,12479,12480,12484,12488,12493,12497,12502,12507],{"__ignoreMap":53},[1671,12481,12482],{"class":11449,"line":11450},[1671,12483,7869],{},[1671,12485,12486],{"class":11449,"line":336},[1671,12487,11457],{"emptyLinePlaceholder":352},[1671,12489,12490],{"class":11449,"line":1088},[1671,12491,12492],{},"obj = bpy.data.objects[\"Cube\"]\n",[1671,12494,12495],{"class":11449,"line":11465},[1671,12496,11457],{"emptyLinePlaceholder":352},[1671,12498,12499],{"class":11449,"line":11471},[1671,12500,12501],{},"for frame in range(0, 60, 5):\n",[1671,12503,12504],{"class":11449,"line":11477},[1671,12505,12506],{},"    obj.location.x = frame * 0.1\n",[1671,12508,12509],{"class":11449,"line":11483},[1671,12510,12511],{},"    obj.keyframe_insert(data_path=\"location\", index=0, frame=frame)\n",[39,12513,12514,12517],{},[5648,12515,12516],{},"index=0"," 引数は、X 軸のみをキーフレーム化するよう Blender に指示します。Y は 1、Z は 2 を使います。index を省略すると 3 軸すべてがキーフレーム化されるため、望まないことが多いでしょう。",[39,12519,12520,12521,12524],{},"この方法でよくあるミスは、",[5648,12522,12523],{},"keyframe_insert"," を呼ぶ前に値を設定し忘れることです。この関数は、現在設定されているプロパティの値を記録します。値を更新せずに呼び出すと、すべてのキーフレームが同じ値になり、アニメーションは平面的になってしまいます。",[39,12526,12527],{},"2 つ目の方法は、F-Curve に直接ポイントを挿入することです。",[5701,12529,12531],{"className":11442,"code":12530,"language":11444,"meta":53,"style":53},"fcurve.keyframe_points.insert(frame, value)\n",[5648,12532,12533],{"__ignoreMap":53},[1671,12534,12535],{"class":11449,"line":11450},[1671,12536,12530],{},[39,12538,12539,12540,12342],{},"この方法は UI ロジックの層を完全にバイパスするため、何百、何千というキーフレームを挿入する場合に大幅に高速です。外部ソースからデータ駆動のアニメーションを組み立てていて、速度が重要なときに使ってください。トレードオフとして、制約やドライバーの評価はトリガーされません。そのため、オブジェクトに更新が必要な依存関係がある場合は ",[5648,12541,12523],{},[66,12543,12545],{"id":12544},"_3-f-curve-を読み取り修正する","3. F-Curve を読み取り、修正する",[39,12547,12548],{},"キーフレームが作成されたら、補間とタイミングを正確に制御するために、基になる F-Curve を直接アクセスして変更できます。",[39,12550,12551],{},"キーフレームが挿入された後に F-Curve にアクセスするには：",[5701,12553,12555],{"className":11442,"code":12554,"language":11444,"meta":53,"style":53},"action = obj.animation_data.action\nfcurve = action.fcurves.find(\"location\", index=0)\n\n# OR\n\nslot = action.slots[0]\nchannelbag = action.layers[0].strips[0].channelbag(slot)\n\nfor fcurve in channelbag.fcurves:\n    # ... iterate over every fcurve\n",[5648,12556,12557,12562,12567,12571,12576,12580,12585,12590,12594,12599],{"__ignoreMap":53},[1671,12558,12559],{"class":11449,"line":11450},[1671,12560,12561],{},"action = obj.animation_data.action\n",[1671,12563,12564],{"class":11449,"line":336},[1671,12565,12566],{},"fcurve = action.fcurves.find(\"location\", index=0)\n",[1671,12568,12569],{"class":11449,"line":1088},[1671,12570,11457],{"emptyLinePlaceholder":352},[1671,12572,12573],{"class":11449,"line":11465},[1671,12574,12575],{},"# OR\n",[1671,12577,12578],{"class":11449,"line":11471},[1671,12579,11457],{"emptyLinePlaceholder":352},[1671,12581,12582],{"class":11449,"line":11477},[1671,12583,12584],{},"slot = action.slots[0]\n",[1671,12586,12587],{"class":11449,"line":11483},[1671,12588,12589],{},"channelbag = action.layers[0].strips[0].channelbag(slot)\n",[1671,12591,12592],{"class":11449,"line":11489},[1671,12593,11457],{"emptyLinePlaceholder":352},[1671,12595,12596],{"class":11449,"line":11494},[1671,12597,12598],{},"for fcurve in channelbag.fcurves:\n",[1671,12600,12601],{"class":11449,"line":11500},[1671,12602,12603],{},"    # ... iterate over every fcurve\n",[82,12605,12606,12612,12618,12624,12630,12636,12642],{},[85,12607,12608,12611],{},[261,12609,12610],{},"Action"," は、すべてのアニメーションデータを保持するトップレベルのコンテナです。",[85,12613,12614,12617],{},[261,12615,12616],{},"Slot"," は、アクションを特定のオブジェクトに結び付け、1 つの Action で複数のオブジェクトをアニメートできるようにします。",[85,12619,12620,12623],{},[261,12621,12622],{},"Layer"," は、ビデオ編集ソフトのトラックのように、他のレイヤーとブレンドできるアニメーションレイヤーです。",[85,12625,12626,12629],{},[261,12627,12628],{},"Strip"," は、タイムライン上のクリップに似た、レイヤー内の時間範囲で切られたクリップです。",[85,12631,12632,12635],{},[261,12633,12634],{},"Channelbag"," は、Strip 内の特定の Slot に属するすべての F-Curve をグループ化します。",[85,12637,12638,12641],{},[261,12639,12640],{},"F-curve"," は、（例：X 位置のように）単一のプロパティチャンネルを、キー フレームを使って時間にわたってアニメートします。",[85,12643,12644,12647],{},[261,12645,12646],{},"Keyframe point"," は、F-curve 上の単一のキーフレームであり、次のキーまでの移動方法を制御する補間モードが設定されています。",[39,12649,12650],{},"キーフレーム値を読み取る、または変更するには：",[5701,12652,12654],{"className":11442,"code":12653,"language":11444,"meta":53,"style":53},"for kp in fcurve.keyframe_points:\n    print(kp.co)\n    kp.co.y *= 2\n\nfcurve.update()\n",[5648,12655,12656,12661,12666,12671,12675],{"__ignoreMap":53},[1671,12657,12658],{"class":11449,"line":11450},[1671,12659,12660],{},"for kp in fcurve.keyframe_points:\n",[1671,12662,12663],{"class":11449,"line":336},[1671,12664,12665],{},"    print(kp.co)\n",[1671,12667,12668],{"class":11449,"line":1088},[1671,12669,12670],{},"    kp.co.y *= 2\n",[1671,12672,12673],{"class":11449,"line":11465},[1671,12674,11457],{"emptyLinePlaceholder":352},[1671,12676,12677],{"class":11449,"line":11471},[1671,12678,12679],{},"fcurve.update()\n",[39,12681,12682],{},"Blender の F-curve 上のすべてのキーフレームポイントを反復し、各キーフレームの（フレーム、値）の座標ペアを出力し、値の成分を 2 倍にしてから、変更を反映するためにカーブを更新します。",[39,12684,12685,12688],{},[5648,12686,12687],{},"fcurve.update()"," の呼び出しは必須です。Blender は内部的にカーブデータをキャッシュしており、この呼び出しを省略すると、変更が反映されなかったり、レンダリング中に結果が不整合になったりする可能性があります。",[39,12690,12691,12692,2169,12695,2169,12698,12700],{},"補間について、制作で最もよく使う 3 つのモードは ",[5648,12693,12694],{},"CONSTANT",[5648,12696,12697],{},"LINEAR",[5648,12699,11852],{}," です。CONSTANT は次のキーフレームまで値を保持し、カットアウト アニメーションや離散的な状態を持つものに役立ちます。LINEAR は機械的で均一な動きを作り、カメラリグ、UI のアニメーション、プロシージャル効果などにうまく機能します。BEZIER は有機的でイーズされた動きを生成し、ほとんどのアニメーション作業のデフォルトです。",[39,12702,12703],{},"カーブ内のすべてのキーフレームポイントに補間を設定するには：",[5701,12705,12707],{"className":11442,"code":12706,"language":11444,"meta":53,"style":53},"for kp in fcurve.keyframe_points:\n    kp.interpolation = \"LINEAR\"\n\nfcurve.update()\n",[5648,12708,12709,12713,12718,12722],{"__ignoreMap":53},[1671,12710,12711],{"class":11449,"line":11450},[1671,12712,12660],{},[1671,12714,12715],{"class":11449,"line":336},[1671,12716,12717],{},"    kp.interpolation = \"LINEAR\"\n",[1671,12719,12720],{"class":11449,"line":1088},[1671,12721,11457],{"emptyLinePlaceholder":352},[1671,12723,12724],{"class":11449,"line":11465},[1671,12725,12679],{},[66,12727,12729],{"id":12728},"_4-csv-からデータ駆動のアニメーションを構築する","4. CSV からデータ駆動のアニメーションを構築する",[39,12731,12732],{},"基本が分かったところで、制作でも使える、より完全な例を扱いましょう。シナリオは、カメラのフライスルーです。このとき位置データは、測量アプリ、ゲームエンジン、プリビズツール、あるいはディレクター／クライアントが作ったスプレッドシートなど、別のツールからエクスポートされたものだとします。",[39,12734,12735,12736,2169,12739,2169,12742,2169,12745,8006],{},"このチュートリアルの CSV 形式はシンプルです。1 行目にヘッダーがあり、その後に 4 列のデータ行が続きます。",[5648,12737,12738],{},"frame",[5648,12740,12741],{},"x",[5648,12743,12744],{},"y",[5648,12746,12747],{},"z",[5701,12749,12752],{"className":12750,"code":12751,"language":5804},[5802],"frame,x,y,z\n0,0.0,0.0,5.0\n10,1.5,0.2,4.8\n20,3.1,0.5,4.5\n30,4.8,0.9,4.1\n",[5648,12753,12751],{"__ignoreMap":53},[39,12755,12756],{},"次に、CSV ファイルで定義されたパスに沿ってカメラをアニメートする完全なスクリプトです。",[5701,12758,12760],{"className":11442,"code":12759,"language":11444,"meta":53,"style":53},"import bpy\nimport csv\n\nobj = bpy.data.objects[\"Camera\"]\nscene = bpy.context.scene\n\nobj.animation_data_clear()\n\nwith open(\"camera_path.csv\", newline=\"\") as f:\n    reader = csv.reader(f)\n    next(reader)\n    for row in reader:\n        frame = int(row[0])\n        x, y, z = float(row[1]), float(row[2]), float(row[3])\n        scene.frame_set(frame)\n        obj.location = (x, y, z)\n        obj.keyframe_insert(data_path=\"location\", frame=frame)\n\naction = obj.animation_data.action\naction.name = \"CAM_flythrough_v01\"\n\nslot = action.slots[0]\nchannelbag = action.layers[0].strips[0].channelbag(slot)\n\nfor fcurve in channelbag.fcurves:\n    for kp in fcurve.keyframe_points:\n        kp.interpolation = \"LINEAR\"\n    fcurve.update()\n\nprint(\"Done. Keyframes inserted and interpolation set.\")\n",[5648,12761,12762,12766,12771,12775,12780,12785,12789,12794,12798,12803,12808,12813,12818,12823,12828,12833,12838,12843,12847,12851,12856,12860,12864,12868,12872,12876,12881,12886,12891,12895],{"__ignoreMap":53},[1671,12763,12764],{"class":11449,"line":11450},[1671,12765,7869],{},[1671,12767,12768],{"class":11449,"line":336},[1671,12769,12770],{},"import csv\n",[1671,12772,12773],{"class":11449,"line":1088},[1671,12774,11457],{"emptyLinePlaceholder":352},[1671,12776,12777],{"class":11449,"line":11465},[1671,12778,12779],{},"obj = bpy.data.objects[\"Camera\"]\n",[1671,12781,12782],{"class":11449,"line":11471},[1671,12783,12784],{},"scene = bpy.context.scene\n",[1671,12786,12787],{"class":11449,"line":11477},[1671,12788,11457],{"emptyLinePlaceholder":352},[1671,12790,12791],{"class":11449,"line":11483},[1671,12792,12793],{},"obj.animation_data_clear()\n",[1671,12795,12796],{"class":11449,"line":11489},[1671,12797,11457],{"emptyLinePlaceholder":352},[1671,12799,12800],{"class":11449,"line":11494},[1671,12801,12802],{},"with open(\"camera_path.csv\", newline=\"\") as f:\n",[1671,12804,12805],{"class":11449,"line":11500},[1671,12806,12807],{},"    reader = csv.reader(f)\n",[1671,12809,12810],{"class":11449,"line":11506},[1671,12811,12812],{},"    next(reader)\n",[1671,12814,12815],{"class":11449,"line":11512},[1671,12816,12817],{},"    for row in reader:\n",[1671,12819,12820],{"class":11449,"line":11518},[1671,12821,12822],{},"        frame = int(row[0])\n",[1671,12824,12825],{"class":11449,"line":11523},[1671,12826,12827],{},"        x, y, z = float(row[1]), float(row[2]), float(row[3])\n",[1671,12829,12830],{"class":11449,"line":11529},[1671,12831,12832],{},"        scene.frame_set(frame)\n",[1671,12834,12835],{"class":11449,"line":11535},[1671,12836,12837],{},"        obj.location = (x, y, z)\n",[1671,12839,12840],{"class":11449,"line":11540},[1671,12841,12842],{},"        obj.keyframe_insert(data_path=\"location\", frame=frame)\n",[1671,12844,12845],{"class":11449,"line":11546},[1671,12846,11457],{"emptyLinePlaceholder":352},[1671,12848,12849],{"class":11449,"line":11552},[1671,12850,12561],{},[1671,12852,12853],{"class":11449,"line":11557},[1671,12854,12855],{},"action.name = \"CAM_flythrough_v01\"\n",[1671,12857,12858],{"class":11449,"line":11730},[1671,12859,11457],{"emptyLinePlaceholder":352},[1671,12861,12862],{"class":11449,"line":11735},[1671,12863,12584],{},[1671,12865,12866],{"class":11449,"line":11740},[1671,12867,12589],{},[1671,12869,12870],{"class":11449,"line":11746},[1671,12871,11457],{"emptyLinePlaceholder":352},[1671,12873,12874],{"class":11449,"line":11752},[1671,12875,12598],{},[1671,12877,12878],{"class":11449,"line":11758},[1671,12879,12880],{},"    for kp in fcurve.keyframe_points:\n",[1671,12882,12883],{"class":11449,"line":11764},[1671,12884,12885],{},"        kp.interpolation = \"LINEAR\"\n",[1671,12887,12888],{"class":11449,"line":11770},[1671,12889,12890],{},"    fcurve.update()\n",[1671,12892,12893],{"class":11449,"line":11775},[1671,12894,11457],{"emptyLinePlaceholder":352},[1671,12896,12897],{"class":11449,"line":11781},[1671,12898,12899],{},"print(\"Done. Keyframes inserted and interpolation set.\")\n",[82,12901,12902,12905,12912,12915,12918],{},[85,12903,12904],{},"まず Camera オブジェクトと現在のシーンを取得し、そこから既存のアニメーションデータをクリアします。",[85,12906,12907,12908,12911],{},"次に camera_path.csv ファイルを開き、各行（フレーム番号＋ X/Y/Z 位置）を読み取ります。",[5648,12909,12910],{},"frame_set"," で対応するフレームへ移動し、カメラのロケーションを設定して、ロケーションのキーフレームを挿入します。",[85,12913,12914],{},"直前に作成されたアニメーションアクションを取得して、名前を \"CAM_flythrough_v01\" に設定します。",[85,12916,12917],{},"補間を線形にするために、アニメーションデータ構造（slots → layers → strips → channelbag）をたどって各 F-curve に到達し、すべてのキーフレームの補間を LINEAR に設定します。これにより、カメラはポイント間で一定速度で移動します。この単純な例では slot/layer/strip/channelbag が 1 つしかないので分かりやすいですが、それ以外の場合は再帰的に処理を巡回する必要があります。",[85,12919,12920],{},"最後に、各カーブに対して fcurve.update() を呼び出し、最後の確認メッセージを出力します。",[39,12922,12923,12924,5576],{},"スクリプトを実際に試してみてください。これは ",[231,12925,12928],{"href":12926,"rel":12927},"https://github.com/cgwire/blog-tutorials/tree/main/blender-programmatic-animation",[5190],"ブログチュートリアル用のリポジトリ内で Github で公開されています",[66,12930,4756],{"id":4756},[39,12932,12933],{},"ここまでで、表形式データとして表現できる任意のアニメーションについて、手動のキーフレーム付けを置き換える再現可能なパイプライン手順が手に入りました。",[39,12935,12936],{},"同じパターンは、オブジェクトの可視性、マテリアルのプロパティ、ライトの強度、カメラの焦点距離など、Blender でキーフレーム化できるあらゆる項目にも当てはまります。CSV、JSON ファイル、あるいは任意の構造化された出力を作り出せるデータソースなら、アニメーターがタイムラインに触れることなく、直接 Blender のアニメーションに投入できます。",[39,12938,12939],{},"そしてこのパターンがスタジオにとって本当に価値があるのは、外部データが流入し、Python がそれを一貫した補間のキーフレームへ変換し、出力が決定論的で、バージョン管理や制御ができるからです。カメラパスを変更する必要があるときは、シーンを再生成するだけで済みます。タイミングを 40 ショットにわたってずらす必要があるときは、スクリプトを更新します。もはや、その作業を手作業で行う必要はありません。",[12376,12941,12378],{},{"title":53,"searchDepth":336,"depth":336,"links":12943},[12944,12945,12946,12947,12948],{"id":12416,"depth":336,"text":12417},{"id":12459,"depth":336,"text":12460},{"id":12544,"depth":336,"text":12545},{"id":12728,"depth":336,"text":12729},{"id":4756,"depth":336,"text":4756},"https://images.unsplash.com/photo-1632425422799-286dc4325dbb?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8c2VhcmNofDMwfHxhbmltYXRpb258ZW58MHx8fHwxNzc2NzU2NzIzfDA&ixlib=rb-4.1.0&q=80&w=2000",{"updated_at":12951,"featured_at":350,"visibility":351},"2026-04-21T09:56:14.000+02:00","/blog-i18n/ja/blender-programmatic-animation","2026-04-21T09:36:53.000+02:00",{"title":12400,"description":12407},"blender-プログラム的アニメーション","blog-i18n/ja/blender-programmatic-animation/index",[12958],{"id":6909,"name":6910,"slug":6911,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":6912},"4FwDawj9tHyl3OS390ifsLNtiSKG7oW-1Ot6xOmChN4",{"id":12961,"title":12962,"authors":12963,"body":12965,"description":13502,"extension":346,"feature_image":13503,"html":11,"meta":13504,"navigation":352,"path":13506,"published_at":13507,"seo":13508,"slug":13509,"stem":13510,"tags":13511,"__hash__":13513,"updated_at":13505,"featured_at":350,"visibility":351},"blog/blog-i18n/ja/blender-depsgraph-automation/index.md","BlenderのDepsgraphで信頼性の高いエクスポートツールを構築する",[12964],{"id":8,"name":9,"slug":10,"profile_image":11,"cover_image":11,"bio":11,"website":11,"location":11,"facebook":11,"twitter":11,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":4860},{"type":14,"value":12966,"toc":13493},[12967,12974,12977,12980,12984,12987,12990,12993,12996,12999,13002,13005,13008,13011,13015,13022,13040,13047,13050,13059,13062,13066,13073,13088,13093,13103,13110,13113,13117,13124,13133,13136,13145,13155,13189,13195,13204,13223,13227,13230,13458,13465,13472,13475,13478,13484,13491],[39,12968,12969,12970,12973],{},"Pythonスクリプトを作成してBlenderでジオメトリをエクスポートまたは解析するなら、たいてい嘘をついています。",[5648,12971,12972],{},"obj.data","を取得して頂点をループし、数値を得ても、それはビューポートで見ているものやレンダーが生成するものと一致しません。犯人はほぼいつも同じです。モディファイア、ドライバ、制約が適用される前の元のメッシュデータを読んでいるのです。",[39,12975,12976],{},"しかしBlenderには、シーン内のあらゆるオブジェクトの最終版を生成する仕組みがあります。これは依存関係グラフ（dependency graph）で、depsgraphと呼ばれます。この記事では、それにアクセスする方法、何をすべきか、そしてパイプラインで使える実用的なエクスポートツールを作る方法を、あなたに正確に示します。",[39,12978,12979],{},"その結果、シーン内のすべてのメッシュオブジェクトを反復し、モディファイア適用後のジオメトリを読み取り、頂点数、ポリゴン数、ワールド空間での寸法を含むCSVレポートを書き出す、動作するPythonスクリプトが手に入ります。このレポートは、ポリゴン予算のチェックにそのまま組み込めたり、事前レンダリング検証ステップとして使えたり、アセットが次のチームへ渡る前の引き継ぎ監査（handoff audit）にしたりできます。",[66,12981,12983],{"id":12982},"depsgraphとは","Depsgraphとは",[39,12985,12986],{},"Blenderのdepsgraph（依存関係グラフ）は、オブジェクト、モディファイア、制約、ドライバ、シェイプキー、アニメーションなど、シーン内のデータ同士の関係や依存関係を追跡する内部システムです。そして、それらを、各ノードがデータの一部を表し、各エッジが依存関係を表す有向非巡回グラフ（DAG）に整理します。",[39,12988,12989],{},"何かが変わると、たとえばオブジェクトを移動したり値を変更したりした場合、depsgraphは、最小限で再計算が必要なものの集合を判断し、重複作業を避けるために正しい順序で更新します。",[39,12991,12992],{},"depsgraphは、Blenderの評価を正しくします（常に正しい順序で更新されるため、別のオブジェクトに依存する制約は常に最新のトランスフォームを見ます）。同時に効率も高めます（グラフの変更された部分だけを再評価するためです。これは、何百ものオブジェクト、シミュレーション、ドライバを含む複雑なシーンでのパフォーマンスにとって重要です）。",[39,12994,12995],{},"さらに、CoW（Copy-on-Write）といった機能を可能にし、元データを破損させずに、評価済みのデータのコピーをビューポートやレンダーが扱えるようにします。また、グラフの独立したブランチを並列に処理できるマルチスレッド評価も支えています。",[66,12997,12998],{"id":7734},"Use Cases",[39,13000,13001],{},"アニメーションスタジオのテクニカルディレクターやパイプラインエンジニアにとって、depsgraphはBlenderのPython API経由で直接アクセスでき、強力なスクリプト利用の可能性を開きます。",[39,13003,13004],{},"TDは、手作業でベイクせずに、外部レンダラーやゲームエンジンへ最終メッシュデータをエクスポートするために、完全に評価されたオブジェクトのバージョンを取得できます。",[39,13006,13007],{},"スタジオはまた、評価済みのオブジェクトインスタンスを反復して、シーン内のあらゆるパーティクルインスタンス化されたプロップやジオメトリノードで散布されたアセットを収集し、カスタムエクスポート用パイプラインやアセットレポートツールに活用できます。",[39,13009,13010],{},"depsgraphは、更新タグ（update tags）を監視することでフレーム間の変化を検出できます。これにより、依存関係が実際に変更されたときだけアセットを賢く再エクスポートまたは再処理できるスマートキャッシュシステムに対応します。これは長時間動作するレンダーファームのパイプラインで大幅な時間節約になります。",[66,13012,13014],{"id":13013},"_1-depsgraphへの参照を取得する","1. Depsgraphへの参照を取得する",[39,13016,13017,13018,13021],{},"depsgraphは現在のコンテキストから利用できます。Scriptingワークスペース、またはオペレーターの内部では、",[5648,13019,13020],{},"evaluated_depsgraph_get","メソッドで取得します：",[5701,13023,13025],{"className":11442,"code":13024,"language":11444,"meta":53,"style":53},"import bpy\n\ndepsgraph = bpy.context.evaluated_depsgraph_get()\n",[5648,13026,13027,13031,13035],{"__ignoreMap":53},[1671,13028,13029],{"class":11449,"line":11450},[1671,13030,7869],{},[1671,13032,13033],{"class":11449,"line":336},[1671,13034,11457],{"emptyLinePlaceholder":352},[1671,13036,13037],{"class":11449,"line":1088},[1671,13038,13039],{},"depsgraph = bpy.context.evaluated_depsgraph_get()\n",[39,13041,13042,13043,13046],{},"この呼び出しは、現在のフレームにおけるシーンの完全に評価された状態を表す",[5648,13044,13045],{},"Depsgraph","オブジェクトを返します。",[39,13048,13049],{},"スクリプトが評価済みデータを読む前にシーンを変更する場合は、Blenderに再計算を伝える必要があります：",[5701,13051,13053],{"className":11442,"code":13052,"language":11444,"meta":53,"style":53},"depsgraph.update()\n",[5648,13054,13055],{"__ignoreMap":53},[1671,13056,13057],{"class":11449,"line":11450},[1671,13058,13052],{},[39,13060,13061],{},"この呼び出しがないと、depsgraphは変更前の状態を反映します。そして、読み取り専用スクリプトなら不要です。",[66,13063,13065],{"id":13064},"_2-各オブジェクトの評価済みバージョンを取得する","2. 各オブジェクトの評価済みバージョンを取得する",[39,13067,13068,13069,13072],{},"depsgraphがあってもそれだけでは不十分です。そこから、各オブジェクトの評価済みコピーを取得する必要があります。これは",[5648,13070,13071],{},"evaluated_get()","で行います：",[5701,13074,13076],{"className":11442,"code":13075,"language":11444,"meta":53,"style":53},"obj = bpy.context.active_object\nobj_eval = obj.evaluated_get(depsgraph)\n",[5648,13077,13078,13083],{"__ignoreMap":53},[1671,13079,13080],{"class":11449,"line":11450},[1671,13081,13082],{},"obj = bpy.context.active_object\n",[1671,13084,13085],{"class":11449,"line":336},[1671,13086,13087],{},"obj_eval = obj.evaluated_get(depsgraph)\n",[39,13089,13090,13092],{},[5648,13091,13071],{},"の呼び出しは、そのオブジェクトの一時的な評価済みコピーを返します。これは元のオブジェクトではありません！このコピーに加えた変更は、スクリプトが終了した後は保持されません。あなたはそれを読むだけです。",[39,13094,13095,13096,13099,13100,13102],{},"この評価済みオブジェクトでは、",[5648,13097,13098],{},"obj_eval.data","がモディファイア適用後のメッシュです。一方、元のオブジェクトでは",[5648,13101,12972],{},"はモディファイア適用前のメッシュのままです。同じスクリプト内で両者を混ぜると、エラーメッセージなしで不正確な結果になります。そのため、バグの発見が難しくなります。",[39,13104,13105,13106,13109],{},"評価済みオブジェクトは、正確なトランスフォームデータも提供します。",[5648,13107,13108],{},"obj_eval.matrix_world","は、ベースのトランスフォーム値だけでなく、制約やドライバも反映しています。",[39,13111,13112],{},"ワールド空間のバウンディングボックスを計算したり、正しい位置を必要とするエクスポータを作ったりする場合は、評価済みオブジェクトからトランスフォームを読み取ってください。",[66,13114,13116],{"id":13115},"_3-メッシュに変換してデータを読む","3. メッシュに変換してデータを読む",[39,13118,13119,13120,13123],{},"評価済みオブジェクトは、",[5648,13121,13122],{},"to_mesh()","を通じてメッシュにアクセスできます。これは、反復可能なスタンドアロンのメッシュデータブロックを作成します：",[5701,13125,13127],{"className":11442,"code":13126,"language":11444,"meta":53,"style":53},"mesh = obj_eval.to_mesh()\n",[5648,13128,13129],{"__ignoreMap":53},[1671,13130,13131],{"class":11449,"line":11450},[1671,13132,13126],{},[39,13134,13135],{},"これはタダではありません。メモリを確保するため、解放する責任があります。読み取りが終わったら次を呼び出します：",[5701,13137,13139],{"className":11442,"code":13138,"language":11444,"meta":53,"style":53},"obj_eval.to_mesh_clear()\n",[5648,13140,13141],{"__ignoreMap":53},[1671,13142,13143],{"class":11449,"line":11450},[1671,13144,13138],{},[39,13146,13147,13150,13151,13154],{},[5648,13148,13149],{},"to_mesh_clear()","を呼ばないと、Blenderセッション内でメモリリークが発生します。数百のオブジェクトを含む大規模シーンでは、それがすぐに積み上がります。エラーが起きても確実に後処理が行われるように、必ず",[5648,13152,13153],{},"try/finally","ブロックでメッシュ読み取りを包んでください：",[5701,13156,13158],{"className":11442,"code":13157,"language":11444,"meta":53,"style":53},"mesh = obj_eval.to_mesh()\ntry:\n    for poly in mesh.polygons:\n        print(poly.area)\nfinally:\n    obj_eval.to_mesh_clear()\n",[5648,13159,13160,13164,13169,13174,13179,13184],{"__ignoreMap":53},[1671,13161,13162],{"class":11449,"line":11450},[1671,13163,13126],{},[1671,13165,13166],{"class":11449,"line":336},[1671,13167,13168],{},"try:\n",[1671,13170,13171],{"class":11449,"line":1088},[1671,13172,13173],{},"    for poly in mesh.polygons:\n",[1671,13175,13176],{"class":11449,"line":11465},[1671,13177,13178],{},"        print(poly.area)\n",[1671,13180,13181],{"class":11449,"line":11471},[1671,13182,13183],{},"finally:\n",[1671,13185,13186],{"class":11449,"line":11477},[1671,13187,13188],{},"    obj_eval.to_mesh_clear()\n",[39,13190,13191,13192,13194],{},"デフォルトでは、",[5648,13193,13122],{},"はパフォーマンスのためにUVマップや頂点カラーレイヤーを削除することがあります。エクスポートスクリプトでそれらが必要なら、追加のパラメータを渡します：",[5701,13196,13198],{"className":11442,"code":13197,"language":11444,"meta":53,"style":53},"mesh = obj_eval.to_mesh(preserve_all_data_layers=True)\n",[5648,13199,13200],{"__ignoreMap":53},[1671,13201,13202],{"class":11449,"line":11450},[1671,13203,13197],{},[39,13205,13206,13207,2169,13210,2169,13213,2169,13216,2169,13219,13222],{},"生成されたメッシュオブジェクトにより、",[5648,13208,13209],{},"mesh.vertices",[5648,13211,13212],{},"mesh.polygons",[5648,13214,13215],{},"mesh.loops",[5648,13217,13218],{},"mesh.uv_layers",[5648,13220,13221],{},"mesh.vertex_colors","へアクセスでき、最終的に評価されたジオメトリを反映できます。",[66,13224,13226],{"id":13225},"_4-本番用スクリプトを作る","4. 本番用スクリプトを作る",[39,13228,13229],{},"完成した例のスクリプトを見てみましょう。これは、アクティブなシーン内のすべてのメッシュオブジェクトを反復し、評価済みのジオメトリを読み取り、ホームディレクトリにCSVレポートを書き出します：",[5701,13231,13233],{"className":11442,"code":13232,"language":11444,"meta":53,"style":53},"import bpy\nimport csv\nimport os\n\ndef get_evaluated_mesh_stats(context, output_path):\n    depsgraph = context.evaluated_depsgraph_get()\n    rows = []\n\n    for obj in context.scene.objects:\n        if obj.type != 'MESH':\n            continue\n\n        obj_eval = obj.evaluated_get(depsgraph)\n        mesh = obj_eval.to_mesh()\n\n        try:\n            vert_count = len(mesh.vertices)\n            poly_count = len(mesh.polygons)\n            dims = obj_eval.dimensions\n\n            rows.append({\n                \"name\": obj.name,\n                \"verts\": vert_count,\n                \"polys\": poly_count,\n                \"dim_x\": round(dims.x, 4),\n                \"dim_y\": round(dims.y, 4),\n                \"dim_z\": round(dims.z, 4),\n            })\n        finally:\n            obj_eval.to_mesh_clear()\n\n    with open(output_path, \"w\", newline=\"\") as f:\n        writer = csv.DictWriter(\n            f,\n            fieldnames=[\"name\", \"verts\", \"polys\", \"dim_x\", \"dim_y\", \"dim_z\"]\n        )\n        writer.writeheader()\n        writer.writerows(rows)\n\n    print(f\"Report written to {output_path}\")\n\n\nget_evaluated_mesh_stats(\n    bpy.context,\n    os.path.expanduser(\"~/mesh_report.csv\")\n)\n",[5648,13234,13235,13239,13243,13248,13252,13257,13262,13267,13271,13276,13281,13286,13290,13295,13300,13304,13309,13314,13319,13324,13328,13333,13338,13343,13348,13353,13358,13363,13368,13373,13378,13382,13387,13392,13397,13402,13407,13412,13417,13421,13426,13430,13434,13440,13446,13452],{"__ignoreMap":53},[1671,13236,13237],{"class":11449,"line":11450},[1671,13238,7869],{},[1671,13240,13241],{"class":11449,"line":336},[1671,13242,12770],{},[1671,13244,13245],{"class":11449,"line":1088},[1671,13246,13247],{},"import os\n",[1671,13249,13250],{"class":11449,"line":11465},[1671,13251,11457],{"emptyLinePlaceholder":352},[1671,13253,13254],{"class":11449,"line":11471},[1671,13255,13256],{},"def get_evaluated_mesh_stats(context, output_path):\n",[1671,13258,13259],{"class":11449,"line":11477},[1671,13260,13261],{},"    depsgraph = context.evaluated_depsgraph_get()\n",[1671,13263,13264],{"class":11449,"line":11483},[1671,13265,13266],{},"    rows = []\n",[1671,13268,13269],{"class":11449,"line":11489},[1671,13270,11457],{"emptyLinePlaceholder":352},[1671,13272,13273],{"class":11449,"line":11494},[1671,13274,13275],{},"    for obj in context.scene.objects:\n",[1671,13277,13278],{"class":11449,"line":11500},[1671,13279,13280],{},"        if obj.type != 'MESH':\n",[1671,13282,13283],{"class":11449,"line":11506},[1671,13284,13285],{},"            continue\n",[1671,13287,13288],{"class":11449,"line":11512},[1671,13289,11457],{"emptyLinePlaceholder":352},[1671,13291,13292],{"class":11449,"line":11518},[1671,13293,13294],{},"        obj_eval = obj.evaluated_get(depsgraph)\n",[1671,13296,13297],{"class":11449,"line":11523},[1671,13298,13299],{},"        mesh = obj_eval.to_mesh()\n",[1671,13301,13302],{"class":11449,"line":11529},[1671,13303,11457],{"emptyLinePlaceholder":352},[1671,13305,13306],{"class":11449,"line":11535},[1671,13307,13308],{},"        try:\n",[1671,13310,13311],{"class":11449,"line":11540},[1671,13312,13313],{},"            vert_count = len(mesh.vertices)\n",[1671,13315,13316],{"class":11449,"line":11546},[1671,13317,13318],{},"            poly_count = len(mesh.polygons)\n",[1671,13320,13321],{"class":11449,"line":11552},[1671,13322,13323],{},"            dims = obj_eval.dimensions\n",[1671,13325,13326],{"class":11449,"line":11557},[1671,13327,11457],{"emptyLinePlaceholder":352},[1671,13329,13330],{"class":11449,"line":11730},[1671,13331,13332],{},"            rows.append({\n",[1671,13334,13335],{"class":11449,"line":11735},[1671,13336,13337],{},"                \"name\": obj.name,\n",[1671,13339,13340],{"class":11449,"line":11740},[1671,13341,13342],{},"                \"verts\": vert_count,\n",[1671,13344,13345],{"class":11449,"line":11746},[1671,13346,13347],{},"                \"polys\": poly_count,\n",[1671,13349,13350],{"class":11449,"line":11752},[1671,13351,13352],{},"                \"dim_x\": round(dims.x, 4),\n",[1671,13354,13355],{"class":11449,"line":11758},[1671,13356,13357],{},"                \"dim_y\": round(dims.y, 4),\n",[1671,13359,13360],{"class":11449,"line":11764},[1671,13361,13362],{},"                \"dim_z\": round(dims.z, 4),\n",[1671,13364,13365],{"class":11449,"line":11770},[1671,13366,13367],{},"            })\n",[1671,13369,13370],{"class":11449,"line":11775},[1671,13371,13372],{},"        finally:\n",[1671,13374,13375],{"class":11449,"line":11781},[1671,13376,13377],{},"            obj_eval.to_mesh_clear()\n",[1671,13379,13380],{"class":11449,"line":11787},[1671,13381,11457],{"emptyLinePlaceholder":352},[1671,13383,13384],{"class":11449,"line":12023},[1671,13385,13386],{},"    with open(output_path, \"w\", newline=\"\") as f:\n",[1671,13388,13389],{"class":11449,"line":12028},[1671,13390,13391],{},"        writer = csv.DictWriter(\n",[1671,13393,13394],{"class":11449,"line":12034},[1671,13395,13396],{},"            f,\n",[1671,13398,13399],{"class":11449,"line":12040},[1671,13400,13401],{},"            fieldnames=[\"name\", \"verts\", \"polys\", \"dim_x\", \"dim_y\", \"dim_z\"]\n",[1671,13403,13404],{"class":11449,"line":12046},[1671,13405,13406],{},"        )\n",[1671,13408,13409],{"class":11449,"line":12052},[1671,13410,13411],{},"        writer.writeheader()\n",[1671,13413,13414],{"class":11449,"line":12058},[1671,13415,13416],{},"        writer.writerows(rows)\n",[1671,13418,13419],{"class":11449,"line":12064},[1671,13420,11457],{"emptyLinePlaceholder":352},[1671,13422,13423],{"class":11449,"line":12070},[1671,13424,13425],{},"    print(f\"Report written to {output_path}\")\n",[1671,13427,13428],{"class":11449,"line":12075},[1671,13429,11457],{"emptyLinePlaceholder":352},[1671,13431,13432],{"class":11449,"line":12080},[1671,13433,11457],{"emptyLinePlaceholder":352},[1671,13435,13437],{"class":11449,"line":13436},43,[1671,13438,13439],{},"get_evaluated_mesh_stats(\n",[1671,13441,13443],{"class":11449,"line":13442},44,[1671,13444,13445],{},"    bpy.context,\n",[1671,13447,13449],{"class":11449,"line":13448},45,[1671,13450,13451],{},"    os.path.expanduser(\"~/mesh_report.csv\")\n",[1671,13453,13455],{"class":11449,"line":13454},46,[1671,13456,13457],{},")\n",[39,13459,13460,13461,13464],{},"Scriptingワークスペースで、このスクリプトをテキストエディタに貼り付けて「Run Script」を押すことで実行できます。出力ファイルは",[5648,13462,13463],{},"~/mesh_report.csv","に保存されます。どんなスプレッドシートアプリでも開けます。",[39,13466,13467,13468,13471],{},"各行には、オブジェクト名、モディファイア適用後の頂点数とポリゴン数、そしてX・Y・Zのワールド空間におけるバウンディングボックスの寸法が含まれます。寸法は",[5648,13469,13470],{},"obj_eval.dimensions","から取得します。これは評価済みオブジェクトを読んでいるため、モディファイアスタック全体を反映します。",[39,13473,13474],{},"自分のパイプラインに合わせるには、コレクションでフィルタしたり、ポリゴン予算の閾値を追加してそれを超えるオブジェクトをフラグしたり、CSV出力をJSONペイロードに置き換えて、プロジェクト管理ツールやアセットデータベースに簡単に取り込めるようにしたりできます。",[66,13476,13477],{"id":4755},"Conclusion",[39,13479,13480,13481,13483],{},"この例のスクリプトは基本的な出発点です。しかし、評価済みメッシュデータを確実に読み取る方法を理解すれば、同じパターンはエクスポータ、LODバリデータ、コリジョンメッシュジェネレータ、事前レンダリングのジオメトリ監査などにもそのまま適用できます。重要な洞察はそれらすべてのツールに移植できます。つまり、常に評価済みオブジェクトから読み取り、常に",[5648,13482,13149],{},"で後処理を行い、そして同じ操作で元データと評価済みデータを混ぜないことです。",[39,13485,13486,13487,13490],{},"次の論理的なステップは、",[5648,13488,13489],{},"bpy.app.handlers.save_pre","を使ってこれをファイル保存ハンドラとして登録し、アーティストが品質保証のためにシーンを保存するたびにレポートが自動生成されるようにすることです。これにより、ポリゴン予算の違反をレンダリング工程に到達する前に見つけられます。",[12376,13492,12378],{},{"title":53,"searchDepth":336,"depth":336,"links":13494},[13495,13496,13497,13498,13499,13500,13501],{"id":12982,"depth":336,"text":12983},{"id":7734,"depth":336,"text":12998},{"id":13013,"depth":336,"text":13014},{"id":13064,"depth":336,"text":13065},{"id":13115,"depth":336,"text":13116},{"id":13225,"depth":336,"text":13226},{"id":4755,"depth":336,"text":13477},"Pythonスクリプトを作成してBlenderでジオメトリをエクスポートまたは解析するなら、たいてい嘘をついています。obj.dataを取得して頂点をループし、数値を得ても、それはビューポートで見ているものやレンダーが生成するものと一致しません。犯人はほぼいつも同じです。モディファイア、ドライバ、制約が適用される前の元のメッシュデータを読んでいるのです。","https://images.unsplash.com/photo-1622737133809-d95047b9e673?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8c2VhcmNofDN8fDNEJTIwYW5pbWF0aW9ufGVufDB8fHx8MTc3Njc1NjM2M3ww&ixlib=rb-4.1.0&q=80&w=2000",{"updated_at":13505,"featured_at":350,"visibility":351},"2026-04-21T09:55:26.000+02:00","/blog-i18n/ja/blender-depsgraph-automation","2026-04-21T09:26:37.000+02:00",{"title":12962,"description":13502},"blender-depsgraph-自動化","blog-i18n/ja/blender-depsgraph-automation/index",[13512],{"id":6909,"name":6910,"slug":6911,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":6912},"tmLMWFBUeYpbb-L5tYdQD-Sp3QiLfKKmPo8QfynJQFc",{"id":13515,"title":13516,"authors":13517,"body":13519,"description":53,"extension":346,"feature_image":13855,"html":11,"meta":13856,"navigation":352,"path":13858,"published_at":13857,"seo":13859,"slug":13860,"stem":13861,"tags":13862,"__hash__":13864,"updated_at":13857,"featured_at":350,"visibility":351},"blog/blog-i18n/ja/blender-theme-customization-guide/index.md","Blenderで自分だけのテーマを作って共有する方法",[13518],{"id":8,"name":9,"slug":10,"profile_image":11,"cover_image":11,"bio":11,"website":11,"location":11,"facebook":11,"twitter":11,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":4860},{"type":14,"value":13520,"toc":13847},[13521,13531,13534,13537,13540,13546,13548,13552,13560,13563,13566,13570,13577,13585,13588,13591,13598,13601,13605,13608,13613,13618,13641,13644,13647,13659,13662,13670,13674,13680,13683,13706,13709,13716,13727,13735,13749,13751,13755,13762,13770,13781,13784,13789,13800,13803,13810,13812,13814,13817,13823,13826,13841],[17,13522,13524,13527],{"className":13523},[20,21,22],[17,13525,6930],{"className":13526},[26],[17,13528,13530],{"className":13529},[31],"Blenderには2つのテーマしか用意されていませんが、裏側ではインターフェース全体をまるごと作り直すことができます。",[39,13532,13533],{},"Blenderが提供するテーマの選択肢はちょうど2つです。ライト…それかダーク。以上です。",[39,13535,13536],{},"海をシミュレートしたり、ドラゴンを彫刻したり、映画全編をレンダリングできるソフトとしては、ちょっと笑ってしまうほど制限が少ないですね。",[39,13538,13539],{},"幸いなことに、Blenderのテーマ機能は、示唆される以上にずっと強力です。少し掘り下げれば分かります。",[39,13541,13542,13543,13545],{},"このガイドでは、Blenderに独自の見た目を与える3つの方法を紹介します。Preferencesパネルでの手動編集、より速い結果のためのAI支援によるXML編集、そして ",[5648,13544,7725],{}," を使った動的スクリプトです。最後に、公式の拡張機能マーケットプレイスを通じて、コミュニティからテーマにアクセスし共有する方法を見ていきます。",[63,13547],{},[66,13549,13551],{"id":13550},"what-is-a-blender-theme","Blenderのテーマとは？",[43,13553,13555],{"className":13554},[20,46],[48,13556],{"src":13557,"className":13558,"alt":53,"loading":54,"width":55,"height":56,"srcSet":13559,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-7.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/04/image-7.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/04/image-7.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/04/image-7.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-7.png 1920w",[39,13561,13562],{},"Blenderのテーマとは、インターフェース全体の色、シェーディング、見た目のスタイルを制御する設定のことです。3Dビューポートの背景から、シェーダーエディターで選択したノードのハイライト色まで含まれます。テーマはレンダリングや機能には影響せず、純粋に見た目のためのものです。とはいえ、毎日何時間もBlenderの中で作業する人にとっては、うまく調整されたテーマは、目の疲れを大幅に減らしたり、スタジオのビジュアルアイデンティティを強化したり、単に作業環境を「自分のもの」に感じさせたりするのに役立ちます。",[39,13564,13565],{},"テーマはXMLファイルとして保存されます。そのため、Blenderの外でもバージョン管理、共有、編集が簡単です。これは後ほど大いに活用することになります。",[66,13567,13569],{"id":13568},"method-1-manual-editing-through-preferences","方法1：Preferencesから手動で編集する",[39,13571,13572,13573,13576],{},"テーマをカスタマイズする基本の方法は、BlenderのPreferencesパネルを使うことです。 ",[5648,13574,13575],{},"Edit → Preferences → Themes"," から開けます。",[43,13578,13580],{"className":13579},[20,46],[48,13581],{"src":13582,"className":13583,"alt":53,"loading":54,"width":55,"height":56,"srcSet":13584,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-8.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/04/image-8.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/04/image-8.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/04/image-8.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-8.png 1920w",[39,13586,13587],{},"「Themes」セクションでは、Blenderのインターフェースで使われるすべての色が、エディターの種類ごとに整理されて表示されます（3D Viewport、Node Editor、Timeline、Properties など）。",[39,13589,13590],{},"各セクションには、テキストの色、背景の塗り、選択ハイライト、ウィジェットの状態…のような個別のカラースウォッチが数十個あります。どれかのスウォッチをクリックするとカラーピッカーが開き、リアルタイムに変更できます。",[39,13592,13593,13594,13597],{},"上部のプリセットのドロップダウンでは、名前付きテーマの保存と読み込みが可能です。変更に満足したら、プリセット名の隣のハンバーガーメニューをクリックし、 ",[5648,13595,13596],{},"Save as Preset"," を選びます。Blenderはユーザー設定ディレクトリ内に、あなたのテーマをXMLファイルとして書き込みます。セッション間で保持されるため、バックアップもできます。",[39,13599,13600],{},"この方法は、残りのテーマに触れずに数色だけ調整するような小さな修正に最適です。ただし、広範なカスタマイズをする場合は、何百もの個別スウォッチを探して回るのがすぐに面倒になります。",[66,13602,13604],{"id":13603},"method-2-ai-assisted-xml-editing","方法2：AI支援によるXML編集",[39,13606,13607],{},"大きく変更したい、たとえばブランドのカラーパレットを軸にテーマを組み直したい、という場合は、手動のやり方だとすぐに退屈になります。より速いワークフローは、テーマをXMLとして書き出し、AIアシスタントで編集してから再インポートすることです。",[1053,13609,13610],{},[85,13611,13612],{},"開始するテーマを作成して保存します。Preferences → Themesで、既存のプリセット（ライトかダークか、目標により近い方）から始め、名前を新しく付けます。保存してください。Blenderがテーマを設定フォルダーに書き込みます：",[5701,13614,13615],{},[5648,13616,13617],{},"~/.config/blender/\u003CYOUR BLENDER VERSION>/scripts/presets/interface_theme/\u003CYour Theme Name>.xml\n",[1053,13619,13620,13638],{},[85,13621,13622,13623,2169,13626,2169,13628,2169,13631,2169,13634,13637],{},"XMLファイルを開きます。そのパスへ移動し、任意のテキストエディタで開いてください。これは人間が読めるXML構造で、Preferencesで見たカラースウォッチに対応する ",[5648,13624,13625],{},"button",[5648,13627,5804],{},[5648,13629,13630],{},"text_hi",[5648,13632,13633],{},"header",[5648,13635,13636],{},"back"," のような属性を含みます。",[85,13639,13640],{},"AIに渡します。XMLの全文をコピーして、Claude CodeやChatGPTのようなAIアシスタントとの会話に貼り付けます。次のようなプロンプトだと良い結果になります：",[1715,13642,13643],{},"\"このBlenderテーマをCGWireのブランディングに合わせてカスタマイズして: プライマリのハイライト色に緑を使い、ライトモードのままにする。\"",[39,13645,13646],{},"AIはファイル全体にわたって該当する色の値を変更し、更新されたXMLを返します。これは、何百ものスウォッチを手作業でクリックしていくより圧倒的に速いです。",[1053,13648,13649,13656],{},[85,13650,13651,13652,13655],{},"編集したXMLを同じパスのファイルに貼り戻して、テーマを再インストールします。その後Blenderで ",[5648,13653,13654],{},"Preferences → Themes"," に移動し、プリセットをリロードしてください。変更はすぐに反映されます。",[85,13657,13658],{},"手動で微調整します。AIによるテーマ編集は、最初の1回で完璧になることはほとんどありません。モデルは、特定の背景で読めないテキスト、ハイライト状態の不一致、あるエディターにおける不自然なコントラストなど、いくつかのケースを見落とす可能性があります。異なる作業環境でテーマを数分テストし、問題があればPreferencesで手動で直すか、AIに対してピンポイントな修正を依頼しましょう。",[39,13660,13661],{},"こちらが、最初の試行で得られた結果です。上部バーの色を調整する必要があることに注目してください。",[43,13663,13665],{"className":13664},[20,46],[48,13666],{"src":13667,"className":13668,"alt":53,"loading":54,"width":55,"height":56,"srcSet":13669,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-9.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/04/image-9.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/04/image-9.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/04/image-9.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-9.png 1920w",[66,13671,13673],{"id":13672},"method-3-dynamic-editing-via-python-script","方法3：Pythonスクリプトで動的に編集する",[39,13675,13676,13677,13679],{},"テーマの変更を自動化したい、または他の人のためのツールを作りたい開発者やテクニカルアーティスト向けに、BlenderのPython APIは ",[5648,13678,7725],{}," を通じてテーマのプロパティへ直接アクセスできます。",[39,13681,13682],{},"以下は、3D Viewportの背景と選択ハイライト色を設定する最小限の例です。",[5701,13684,13685,13700],{},[5648,13686,7869,13688,13694,13697],{"className":13687},[7441],[39,13689,13690,13691,13693],{},"theme = bpy.context.preferences.themes",[1671,13692,726],{},"\nview3d = theme.view_3d",[39,13695,13696],{},"view3d.space.gradients.high_gradient = (0.12, 0.12, 0.14)",[39,13698,13699],{},"view3d.object_active = (0.2, 0.8, 0.4)",[39,13701,13702],{},[5648,13703,13705],{"className":13704},[7441],"bpy.ops.wm.save_userpref()\n",[39,13707,13708],{},"このスクリプトは現在のテーマ設定（具体的には3D View（view_3d））にアクセスし、背景グラデーションの色を暗いグレー系に変更したあと、選択中（アクティブ）のオブジェクトの色を緑っぽい色に設定します。そしてこれらの変更をBlenderのユーザー環境設定に保存することで、今後のセッションでも反映され続けます。",[39,13710,13711,13712,13715],{},"このスクリプトは、Blenderに内蔵されたText Editorから実行するか、 ",[5648,13713,13714],{},"--python"," と共にコマンドライン引数として渡せます。この方法は、スタジオのパイプラインで、多くのアーティストの作業環境に対して一貫したテーマをプログラム的に適用したい場合に特に役立ちます。また、ツールの追加機能（アドオン）開発者で、同じビジュアルスタイルに合わせて配布したい場合にも有効です。",[39,13717,13718,13719,13721,13722,13726],{},"Preferencesで見えるすべてのカラースウォッチには、対応する ",[5648,13720,7725],{}," のパスがあります。適切な属性を最も簡単に見つける方法は、",[231,13723,13725],{"href":13724},"https://docs.blender.org/api/current/bpy.types.Theme.html?ref=blog.cg-wire.com#bpy.types.Theme","Theme(bpy_struct)のドキュメントページ","へ行き、対応するカテゴリを探すことです。",[43,13728,13730],{"className":13729},[20,46],[48,13731],{"src":13732,"className":13733,"alt":53,"loading":54,"width":55,"height":56,"srcSet":13734,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-10.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/04/image-10.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/04/image-10.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/04/image-10.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-10.png 1920w",[39,13736,13737,13738,13741,13742,13748],{},"ただし、80%のケースでは、その属性パスはPreferencesダイアログ上のスネークケースのパスと一致します。たとえばアニメーションタブで選択されたキーフレームの色を変更するには（",[5648,13739,13740],{},"Common > Animation > Keyframe Selected","）、 ",[5648,13743,13744,13745,13747],{},"bpy.context.preferences.themes",[1671,13746,726],{},".common.anim.keyframe_selected"," の中に見つかるはずです。",[63,13750],{},[66,13752,13754],{"id":13753},"sharing-your-theme","テーマを共有する",[39,13756,13757,13758,8006],{},"自分が誇れるものを作れたら、Blenderコミュニティもそれを活用できます。コミュニティ向けテーマの公式な拠点は ",[231,13759,13761],{"href":13760},"https://extensions.blender.org/themes/?ref=blog.cg-wire.com","Blender Extensionsマーケットプレイス",[43,13763,13765],{"className":13764},[20,46],[48,13766],{"src":13767,"className":13768,"alt":53,"loading":54,"width":55,"height":56,"srcSet":13769,"sizes":58},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-11.png",[52],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w600/2026/04/image-11.png 600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1000/2026/04/image-11.png 1000w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/size/w1600/2026/04/image-11.png 1600w, https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/image-11.png 1920w",[39,13771,13772,13773,13776,13777,5576],{},"アップロードする前に、テーマをBlender拡張機能として構造化する必要があります。つまり、テーマXMLを含むフォルダーと、",[5648,13774,13775],{},"blender_manifest.toml"," ファイルです。マニフェストには、拡張機能名、バージョン、作者、最小Blenderバージョンなどのメタデータが宣言されています。 ",[231,13778,13780],{"href":13779},"https://docs.blender.org/manual/en/latest/advanced/extensions/getting_started.html?ref=blog.cg-wire.com#how-to-create-extensions","専用のマニュアルページで拡張機能作成の完全な仕様を確認してください",[39,13782,13783],{},"典型的なテーマ拡張フォルダーは次のようになります。",[5701,13785,13786],{},[5648,13787,13788],{},"my_theme/\n├── blender_manifest.toml\n└── my_theme.xml\n",[39,13790,13791,13792,13795,13796,13799],{},"フォルダーをアーカイブしたら（",[5648,13793,13794],{},".zip","）、Blender Extensionsのサイトへ行き、ログインして ",[261,13797,13798],{},"Upload Extension"," をクリックします。説明文、プレビューのスクリーンショット、見つけてもらうための関連タグなど、掲載情報を入力してください。",[39,13801,13802],{},"投稿は公開リスト化される前にレビューキューを通り、基本的な品質基準を満たしていること、拡張機能が安全にインストールできることを確認します。対応までの時間は変動するため、テーマがすぐに表示されなくても慌てないでください。",[39,13804,13805,13806,13809],{},"別の方法として、フォルダーを連絡先に送って、Blenderで ",[5648,13807,13808],{},"Install Theme"," ボタンを押して手動でインストールすることもできます。",[63,13811],{},[66,13813,7608],{"id":4755},[39,13815,13816],{},"Blenderのテーマシステムは、ほとんどのユーザーが決して探索しようとしない「隠れた名機」です。複雑そうとか、時間がかかりそうだとか思われているのかもしれませんし、あるいはXMLが怖そうに見えるのかもしれません。",[39,13818,13819,13820,13822],{},"ですが、Preferencesパネルで小さく個人的に調整するのでも、AI支援でカラーパレット全体を変えるのでも、",[5648,13821,7725],{},"で動的な変更をスクリプト化するのでも、コミュニティからテーマを取得するのでも、あなたのやりたい作業レベルに合うワークフローがきっとあります。少しだけ色を変えて終えることもできますし、丸ごと分解して好みやブランドやワークフローに合わせて作り直し、さらには自動化することもできます。",[39,13824,13825],{},"デフォルトの2つのプリセットは、あくまでスタート地点です。今すぐ始めれば、5分で良い結果が得られます。もう少し頑張れば、Blenderはあなたが望むまさにその見た目になります。",[17,13827,13829,13832],{"className":13828},[20,21,22],[17,13830,312],{"className":13831},[26],[17,13833,13835,13836,13840],{"className":13834},[31],"アニメーションの制作プロセスについてもっと知りたい方は ",[231,13837,13839],{"href":3404,"rel":13838},[321],"Discordコミュニティに参加することをご検討ください","！私たちはベストプラクティスを共有する1,000人以上の専門家とつながっており、時には対面イベントも企画しています。ぜひ歓迎します！ 😊",[17,13842,13844],{"className":13843},[20,327,328],[231,13845,3413],{"href":3404,"className":13846},[332,333],{"title":53,"searchDepth":336,"depth":336,"links":13848},[13849,13850,13851,13852,13853,13854],{"id":13550,"depth":336,"text":13551},{"id":13568,"depth":336,"text":13569},{"id":13603,"depth":336,"text":13604},{"id":13672,"depth":336,"text":13673},{"id":13753,"depth":336,"text":13754},{"id":4755,"depth":336,"text":7608},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2026/04/2.png",{"updated_at":13857,"featured_at":350,"visibility":351},"2026-04-16T15:15:39.000+02:00","/blog-i18n/ja/blender-theme-customization-guide",{"title":13516,"description":53},"blenderテーマカスタマイズガイド","blog-i18n/ja/blender-theme-customization-guide/index",[13863],{"id":6909,"name":6910,"slug":6911,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":6912},"iD9c9RbEd6Rv7GkVoFKn4uFNtBv6thINSbW-ERqMRBA",[13866,14296,14690,15024],{"id":4189,"title":4190,"authors":13867,"body":13869,"description":4197,"extension":346,"feature_image":4835,"html":11,"meta":14291,"navigation":352,"path":4838,"published_at":4839,"seo":14292,"slug":4841,"stem":4842,"tags":14293,"__hash__":4854,"updated_at":4837,"そして半年後に気づきます。会社に対してIP（知的財産）の所有権を適切に割り当てていなかったこと、支払い条項のないままクライアント契約にサインしていたこと、保険を省いたせいで、納品前に放送局から「必須の条件」を突きつけられたことなどです。\nどれも高くつく教訓です。\nこの記事は、それを防ぐための試みです。新しいスタジオが初年度に下さなければならない、主要な法務・財務・パイプラインの判断を、走りながら確認できるチェックリストとしてまとめました。It's a r\" featured_at":350,"visibility":351},[13868],{"id":8,"name":9,"slug":10,"profile_image":11,"cover_image":11,"bio":11,"website":11,"location":11,"facebook":11,"twitter":11,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":12},{"type":14,"value":13870,"toc":14257},[13871,13873,13875,13877,13879,13881,13883,13885,13887,13891,13895,13897,13901,13905,13907,13911,13915,13919,13921,13923,13927,13931,13935,13939,13941,13945,13949,13953,13955,13959,13963,13967,13971,13973,13977,13981,13985,13989,13993,13997,13999,14003,14007,14011,14015,14019,14023,14025,14027,14029,14033,14037,14039,14043,14047,14051,14053,14057,14061,14063,14067,14071,14073,14075,14077,14081,14085,14087,14089,14093,14097,14099,14101,14105,14109,14113,14115,14119,14123,14125,14127,14131,14133,14135,14139,14143,14147,14151,14155,14159,14161,14163,14165,14169,14171,14175,14179,14181,14185,14189,14193,14195,14197,14201,14205,14209,14211,14213,14217,14221,14225,14227,14229,14231,14253,14255],[39,13872,4197],{},[39,13874,4200],{},[39,13876,4203],{},[39,13878,4206],{},[39,13880,4209],{},[39,13882,4212],{},[66,13884,4216],{"id":4215},[39,13886,4219],{},[39,13888,13889,4225],{},[261,13890,4224],{},[39,13892,13893,4231],{},[261,13894,4230],{},[933,13896,4235],{"id":4234},[39,13898,13899,4241],{},[261,13900,4240],{},[39,13902,13903,4247],{},[261,13904,4246],{},[933,13906,4251],{"id":4250},[39,13908,13909,4257],{},[261,13910,4256],{},[39,13912,13913,4263],{},[261,13914,4262],{},[39,13916,13917,4269],{},[261,13918,4268],{},[66,13920,4273],{"id":4272},[933,13922,4277],{"id":4276},[39,13924,13925,4283],{},[261,13926,4282],{},[39,13928,13929,4289],{},[261,13930,4288],{},[39,13932,13933,4295],{},[261,13934,4294],{},[39,13936,13937,4301],{},[261,13938,4300],{},[933,13940,4305],{"id":4304},[39,13942,13943,4311],{},[261,13944,4310],{},[39,13946,13947,4317],{},[261,13948,4316],{},[39,13950,13951,4323],{},[261,13952,4322],{},[933,13954,4327],{"id":4326},[39,13956,13957,4333],{},[261,13958,4332],{},[39,13960,13961,4339],{},[261,13962,4338],{},[39,13964,13965,4345],{},[261,13966,4344],{},[39,13968,13969,4351],{},[261,13970,4350],{},[933,13972,4355],{"id":4354},[39,13974,13975,4361],{},[261,13976,4360],{},[39,13978,13979,4367],{},[261,13980,4366],{},[39,13982,13983,4373],{},[261,13984,4372],{},[39,13986,4376,13987,4380],{},[261,13988,4379],{},[39,13990,13991,4386],{},[261,13992,4385],{},[39,13994,13995,4392],{},[261,13996,4391],{},[933,13998,4396],{"id":4395},[39,14000,14001,4402],{},[261,14002,4401],{},[39,14004,14005,4408],{},[261,14006,4407],{},[39,14008,14009,4414],{},[261,14010,4413],{},[39,14012,14013,4420],{},[261,14014,4419],{},[39,14016,14017,4426],{},[261,14018,4425],{},[39,14020,14021,4432],{},[261,14022,4431],{},[66,14024,4436],{"id":4435},[39,14026,4439],{},[933,14028,4443],{"id":4442},[39,14030,14031,4449],{},[261,14032,4448],{},[39,14034,14035,4455],{},[261,14036,4454],{},[933,14038,4459],{"id":4458},[39,14040,14041,4465],{},[261,14042,4464],{},[39,14044,14045,4471],{},[261,14046,4470],{},[39,14048,14049,4477],{},[261,14050,4476],{},[933,14052,4481],{"id":4480},[39,14054,14055,4487],{},[261,14056,4486],{},[39,14058,14059,4493],{},[261,14060,4492],{},[933,14062,4497],{"id":4496},[39,14064,14065,4503],{},[261,14066,4502],{},[39,14068,14069,4509],{},[261,14070,4508],{},[66,14072,4513],{"id":4512},[39,14074,4516],{},[933,14076,4520],{"id":4519},[39,14078,14079,4526],{},[261,14080,4525],{},[39,14082,14083,4532],{},[261,14084,4531],{},[39,14086,4535],{},[933,14088,4539],{"id":4538},[39,14090,14091,4545],{},[261,14092,4544],{},[39,14094,14095,4551],{},[261,14096,4550],{},[39,14098,4554],{},[933,14100,4558],{"id":4557},[39,14102,14103,4564],{},[261,14104,4563],{},[39,14106,14107,4570],{},[261,14108,4569],{},[39,14110,14111,4576],{},[261,14112,4575],{},[933,14114,4580],{"id":4579},[39,14116,14117,4586],{},[261,14118,4585],{},[39,14120,14121,4592],{},[261,14122,4591],{},[39,14124,4595],{},[933,14126,4599],{"id":4598},[39,14128,14129,4605],{},[261,14130,4604],{},[39,14132,4608],{},[933,14134,4612],{"id":4611},[39,14136,14137,4618],{},[261,14138,4617],{},[39,14140,14141,4624],{},[261,14142,4623],{},[39,14144,14145,4630],{},[261,14146,4629],{},[39,14148,14149,4636],{},[261,14150,4635],{},[39,14152,14153,4642],{},[261,14154,4641],{},[39,14156,14157,4648],{},[261,14158,4647],{},[66,14160,4652],{"id":4651},[39,14162,4655],{},[933,14164,4659],{"id":4658},[39,14166,14167,4665],{},[261,14168,4664],{},[39,14170,4668],{},[39,14172,14173,4674],{},[261,14174,4673],{},[39,14176,14177,4680],{},[261,14178,4679],{},[933,14180,4684],{"id":4683},[39,14182,14183,4690],{},[261,14184,4689],{},[39,14186,14187,4696],{},[261,14188,4695],{},[39,14190,14191,4702],{},[261,14192,4701],{},[39,14194,4705],{},[933,14196,4709],{"id":4708},[39,14198,14199,4715],{},[261,14200,4714],{},[39,14202,14203,4721],{},[261,14204,4720],{},[39,14206,14207,4727],{},[261,14208,4726],{},[39,14210,4730],{},[933,14212,4734],{"id":4733},[39,14214,14215,4740],{},[261,14216,4739],{},[39,14218,14219,4746],{},[261,14220,4745],{},[39,14222,14223,4752],{},[261,14224,4751],{},[66,14226,4756],{"id":4755},[39,14228,4759],{},[39,14230,4762],{},[82,14232,14233,14237,14241,14245,14249],{},[85,14234,14235,4770],{},[261,14236,4769],{},[85,14238,14239,4776],{},[261,14240,4775],{},[85,14242,14243,4782],{},[261,14244,4781],{},[85,14246,14247,4788],{},[261,14248,4787],{},[85,14250,14251,4794],{},[261,14252,4793],{},[39,14254,4797],{},[39,14256,4800],{},{"title":53,"searchDepth":336,"depth":336,"links":14258},[14259,14263,14270,14276,14284,14290],{"id":4215,"depth":336,"text":4216,"children":14260},[14261,14262],{"id":4234,"depth":1088,"text":4235},{"id":4250,"depth":1088,"text":4251},{"id":4272,"depth":336,"text":4273,"children":14264},[14265,14266,14267,14268,14269],{"id":4276,"depth":1088,"text":4277},{"id":4304,"depth":1088,"text":4305},{"id":4326,"depth":1088,"text":4327},{"id":4354,"depth":1088,"text":4355},{"id":4395,"depth":1088,"text":4396},{"id":4435,"depth":336,"text":4436,"children":14271},[14272,14273,14274,14275],{"id":4442,"depth":1088,"text":4443},{"id":4458,"depth":1088,"text":4459},{"id":4480,"depth":1088,"text":4481},{"id":4496,"depth":1088,"text":4497},{"id":4512,"depth":336,"text":4513,"children":14277},[14278,14279,14280,14281,14282,14283],{"id":4519,"depth":1088,"text":4520},{"id":4538,"depth":1088,"text":4539},{"id":4557,"depth":1088,"text":4558},{"id":4579,"depth":1088,"text":4580},{"id":4598,"depth":1088,"text":4599},{"id":4611,"depth":1088,"text":4612},{"id":4651,"depth":336,"text":4652,"children":14285},[14286,14287,14288,14289],{"id":4658,"depth":1088,"text":4659},{"id":4683,"depth":1088,"text":4684},{"id":4708,"depth":1088,"text":4709},{"id":4733,"depth":1088,"text":4734},{"id":4755,"depth":336,"text":4756},{"updated_at":4837,"そして半年後に気づきます。会社に対してIP（知的財産）の所有権を適切に割り当てていなかったこと、支払い条項のないままクライアント契約にサインしていたこと、保険を省いたせいで、納品前に放送局から「必須の条件」を突きつけられたことなどです。\nどれも高くつく教訓です。\nこの記事は、それを防ぐための試みです。新しいスタジオが初年度に下さなければならない、主要な法務・財務・パイプラインの判断を、走りながら確認できるチェックリストとしてまとめました。It's a r\" featured_at":350,"visibility":351},{"title":4190,"description":4197},[14294,14295],{"id":4845,"name":4846,"slug":4847,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":4848},{"id":4850,"name":4851,"slug":4852,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":4853},{"id":14297,"title":14298,"authors":14299,"body":14301,"description":53,"extension":346,"feature_image":14677,"html":11,"meta":14678,"navigation":352,"path":14680,"published_at":14681,"seo":14682,"slug":14683,"stem":14684,"tags":14685,"__hash__":14689,"updated_at":14679,"featured_at":350,"visibility":351},"blog/blog-i18n/ja/blender-vs-maya/index.md","Blender vs Maya In 2026: あなたに合う3Dツールはどれ？",[14300],{"id":2889,"name":2678,"slug":2890,"profile_image":2891,"cover_image":11,"bio":2892,"website":11,"location":2030,"facebook":11,"twitter":2031,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":2893},{"type":14,"value":14302,"toc":14656},[14303,14324,14327,14330,14337,14339,14345,14348,14397,14400,14402,14407,14410,14415,14418,14423,14426,14432,14446,14452,14460,14462,14466,14469,14472,14477,14480,14485,14488,14493,14504,14509,14517,14519,14524,14527,14530,14533,14535,14541,14544,14547,14549,14553,14556,14559,14568,14570,14575,14585,14588,14590,14595,14598,14601,14609,14612,14615,14617,14621,14624,14627,14630,14633,14636,14650],[17,14304,14306,14310],{"className":14305},[20,21,22],[17,14307,14309],{"className":14308},[26],"💻",[17,14311,14313,14317,14318,14323],{"className":14312},[31],[2765,14314,14315],{},[261,14316,676],{"style":1673},"か",[2765,14319,14320],{},[261,14321,14322],{"style":1673},"Maya","か？2025年も議論は続いています――違いを整理してみましょう！",[39,14325,14326],{},"デジタルコンテンツ制作ツールはたくさんあり、その中には3Dアーティスト同士で議論が続きがちなものもあります。",[39,14328,14329],{},"アニメーションを学び始めたばかりで、どのツールを選べばいいのか迷っているのかもしれません。あるいは、新しいプロジェクトがあり、MayaのアニメーターにするかBlenderのアニメーターにするかを判断しようとしているのかもしれません。",[39,14331,6426,14332,3681,14334,14336],{},[261,14333,676],{},[261,14335,14322],{},"の両方の機能を気軽に見ていき、それぞれの違い、強みと弱み、そしてどんなプロジェクトに向いているかを探ります。",[63,14338],{},[66,14340,14342],{"id":14341},"comparison-criteria",[261,14343,14344],{},"比較基準",[39,14346,14347],{},"MayaとBlenderを比較するにあたり、できるだけ客観的にするために、いくつかの重要な基準に注目します：",[82,14349,14350,14356,14362,14368,14374,14380,14385,14391],{},[85,14351,14352,14355],{},[261,14353,14354],{},"対象ユーザー"," - このツールは誰のために作られている？",[85,14357,14358,14361],{},[261,14359,14360],{},"価格"," - 収益モデルはどんなもの？",[85,14363,14364,14367],{},[261,14365,14366],{},"長所＆短所"," - 各ツールの主な利点と不便な点は？",[85,14369,14370,14373],{},[261,14371,14372],{},"学習曲線"," - どれくらい簡単に始められる？",[85,14375,14376,14379],{},[261,14377,14378],{},"コミュニティサポート"," - ユーザーはどれくらい活発？",[85,14381,14382,14384],{},[261,14383,10206],{}," - よくある3Dモデリング作業にうまく対応できる？",[85,14386,14387,14390],{},[261,14388,14389],{},"アニメーション＆リギング"," - 3Dモデルのアニメーション工程はどう？",[85,14392,14393,14396],{},[261,14394,14395],{},"レンダリング"," - 自分のアニメーションを動画にするには？",[39,14398,14399],{},"始める前に、どちらが「より良い」というわけではないことを強調しておきます――それは要件と用途次第です！その前提を踏まえつつ、まずはMayaから見ていきましょう。",[63,14401],{},[66,14403,14405],{"id":14404},"maya",[261,14406,14322],{},[39,14408,14409],{},"Autodesk Mayaは3Dアニメーションの業界標準とされており、Walt Disney Animation Studiosのような世界中の主要スタジオで使われています。",[933,14411,14413],{"id":14412},"target-audience",[261,14414,14354],{},[39,14416,14417],{},"Mayaのツールセットは、映画、テレビ、ゲーム業界で働くプロフェッショナル向けに作られており、とくに複雑な制作パイプラインに関わる人を想定しています。",[933,14419,14421],{"id":14420},"pricing",[261,14422,14360],{},[39,14424,14425],{},"Mayaは年間1,945ドル（月額245ドル）とかなり高額です。サブスクリプション費用が、独立系アーティストや小規模スタジオにとって障壁になる可能性があります。しかしAutodeskは、資格がある場合に限り、無料の学生ライセンスと、独立系（indie）向けの割引ライセンスを年間320ドルで提供しています。",[933,14427,14429],{"id":14428},"pros",[261,14430,14431],{},"長所",[82,14433,14434,14437,14440,14443],{},[85,14435,14436],{},"業界の多くの大手スタジオで使われている",[85,14438,14439],{},"優れたアニメーション＆リギングのUI",[85,14441,14442],{},"そのままでも使えるが、完全にカスタマイズ可能",[85,14444,14445],{},"業界標準のクローズドソース系プラグイン",[933,14447,14449],{"id":14448},"cons",[261,14450,14451],{},"短所",[82,14453,14454,14457],{},[85,14455,14456],{},"コスト",[85,14458,14459],{},"コミュニティのリソースが少ない",[63,14461],{},[66,14463,14464],{"id":677},[261,14465,676],{},[39,14467,14468],{},"Blenderは無料でオープンソースの3Dコンテンツ制作ツールで、さまざまなクリエイティブ業界で着実に支持を広げています。モデリング、リギング、アニメーション、レンダリングを含む3Dパイプライン全体をサポートしています。",[39,14470,14471],{},"Blenderは、2023年の映画「Spider-Man: Across the Spider-Verse」のような高評価の制作でも使われており、短編映画やアニメーションにおけるGrease Pencil機能の発展においても重要な役割を果たしました。",[933,14473,14475],{"id":14474},"target-audience-1",[261,14476,14354],{},[39,14478,14479],{},"Blenderは、趣味の人からプロフェッショナルまで、誰もが使えるように設計されています。小規模スタジオは、無料で始められることと、進化を続ける機能群に価値を感じています。特に、強力でありながら“いじれる”ツールを、資金面の負担を抑えつつ探しているフリーランサーやスタートアップに向いています。",[933,14481,14483],{"id":14482},"pricing-1",[261,14484,14360],{},[39,14486,14487],{},"Blenderの最大の利点は価格――無料――であり、さらにイノベーションとサポートを育む非常に活発なコミュニティです。ただし、Mayaに比べると大規模な制作パイプラインへの統合がスムーズでない可能性があり、そこが一部のスタジオにとってはデメリットになり得ます。",[933,14489,14491],{"id":14490},"pros-1",[261,14492,14431],{},[82,14494,14495,14498,14501],{},[85,14496,14497],{},"オープンソース",[85,14499,14500],{},"大きなコミュニティ",[85,14502,14503],{},"優れたモデリングUI",[933,14505,14507],{"id":14506},"cons-1",[261,14508,14451],{},[82,14510,14511,14514],{},[85,14512,14513],{},"大規模制作では人気がやや低い",[85,14515,14516],{},"アニメーションのワークフローを改善するにはプラグインが必要",[63,14518],{},[66,14520,14522],{"id":14521},"learning-curve",[261,14523,14372],{},[39,14525,14526],{},"どちらのソフトウェアも学習曲線は急ですが、Mayaはその複雑さゆえに習得がより難しいと見なされることがよくあります。",[39,14528,14529],{},"オープンソースのソフトウェアであるBlenderは、最初の取っつきにくさが少ないという評判があり、特に初心者には気楽に始めやすいようです。",[39,14531,14532],{},"両方とも多数のチュートリアルやコースが用意されていますが、Blenderはオープンソースであることと大きなコミュニティのおかげで、ここでは優位にあります。",[63,14534],{},[66,14536,14538],{"id":14537},"community",[261,14539,14540],{},"コミュニティ",[39,14542,14543],{},"Blenderのコミュニティサポートは、その強みの1つです。オープンソースのモデルにより、開発者やアーティストがチュートリアル、プラグイン、リソースなどを通じて、その成長に頻繁に貢献しています。このオープンソースの空気感は実験を後押ししており、Blender ArtistsやBlender Nationのようなコミュニティ主導のプラットフォームでは、オープンなプロジェクト議論が盛り上がっています。",[39,14545,14546],{},"Mayaも大きなコミュニティから恩恵を受けていますが、こちらはより商業志向が強く、プロフェッショナル向けのリソースやサポートを提供しています。Mayaは主に、大規模な制作環境で携わるプロフェッショナルに使われているため、Mayaコミュニティは業界のベテランや、複雑な制作パイプラインに深い知識を持つ専門家で構成されることが多いようです。コミュニティは、Autodeskのサポートやコミュニティネットワークのようなフォーラムを通じて情報交換する傾向があります。このような環境のため、アニメーターがスタジオのプロジェクトで忙しくなることもあり、無料の素材やプラグインはあまり一般的ではありません。",[63,14548],{},[66,14550,14551],{"id":10205},[261,14552,10206],{},[39,14554,14555],{},"Blenderは、速くて柔軟なモデリングツールで称賛されています。ポリゴンやスカルプトのワークフローから、モディファイアによる高度な手続き型モデリングまで、幅広い機能を提供しています。Blenderのノンデストラクティブ（破壊しない）モディファイアスタックは、ジオメトリを柔軟かつ非線形に変更できるため、特に試行錯誤を重ねる設計プロセスに有益です。カスタマイズ可能なインターフェースとホットキー中心のワークフローにより、ツールセットを使いこなした後は、モデラーがプロセスを効率化し、よりスムーズに作業できるようになります。最後に、BlenderはMayaよりも内蔵スカルプトのサポートが優れています。",[39,14557,14558],{},"Mayaは、ポリゴンモデリングの機能に強みがあり、精密で詳細な作業を支える一連の高度なツールを備えています。他のAutodesk製品との統合や、NURBSモデリングを高度にサポートしている点により、プロフェッショナル案件で求められることの多い複雑で高精度なモデル作成において優位性があります。Mayaのユーザーインターフェースは、初心者にはやや不安に見えることがあります。",[39,14560,14561,14562,14567],{},"総じて言えば、どちらも",[231,14563,7018,14564],{"href":10215},[6214,14565,14566],{},"3Dモデリングではかなり似ている","ため、最終的な選択はUIや操作感に対する好みで決まるでしょう。",[63,14569],{},[66,14571,14573],{"id":14572},"animation-rigging",[261,14574,14389],{},[39,14576,14577,14578,14584],{},"Mayaは、プロのアニメーター向けに、精度と滑らかさが必要な場面で役立つ高度なアニメーションと",[231,14579,7018,14581],{"href":14580},"https://blog.cg-wire.com/rigging-in-animation/",[6214,14582,14583],{},"リギングツール","を最初から提供します。そのリギングシステムは非常に強力で、コントロールの奥深さも魅力です。Node Editorのようなツールにより、カスタムのコントロールリグや高度な変形を整理しやすくなり、複雑で精巧なリギングを備えたキャラクターにも対応できます。MELとPythonによる堅牢なスクリプト機能により、テクニカルディレクターはカスタムツールを作ったり、リギング工程を自動化したりできます。",[39,14586,14587],{},"Blenderは、継続的なアップデートによってアニメーションとリギングでも大きく前進しています。Grease Pencil機能によって、2Dと3Dのアニメーションに新しい可能性が開かれています。Blenderのアニメーション／リギングシステムはMayaほど高度ではありませんが、それでも存在します。BlenderのRigifyプラグインは、手作業のリギングに深く踏み込まずに複雑なリグを作るための素晴らしい出発点です。",[63,14589],{},[66,14591,14593],{"id":14592},"rendering",[261,14594,14395],{},[39,14596,14597],{},"Mayaは、開発中の可視化にInteractive Photorealistic Renderingエンジンを使用し、最終レンダーにはAutodesk Arnoldエンジンを使います。",[39,14599,14600],{},"Arnoldは、複雑なシーンを扱えることで知られる高品質なMonte Carloレイトレーシングレンダラーです。CPU駆動ですが、最近のアップデートではGPUアクセラレーションのサポートも追加されています。",[39,14602,14603,14604,5576],{},"Blenderには2つのレンダリングエンジンがあります：",[231,14605,7018,14606],{"href":6458},[6214,14607,14608],{},"Cycles と Eevee",[39,14610,14611],{},"Cyclesは物理ベースのパストレーサーで、現実的なライティング、反射、影を提供します。GPUアクセラレーションに大きく依存しており、対応するグラフィックカードがあればレンダリングを大幅に高速化できます。",[39,14613,14614],{},"一方でEeveeはリアルタイムレンダリングエンジンで、速度が得意です。Cyclesと同等の詳細度はありませんが、開発中のプリビジュアライゼーションや、素早い反復が必要で、あまり写実的ではないものの高品質な視覚フィードバックを求めるプロジェクトに最適です。",[63,14616],{},[66,14618,14619],{"id":4755},[261,14620,4756],{},[39,14622,14623],{},"MayaもBlenderも、3Dアニメーション制作のための強力なツールで、それぞれに独自の強みと弱みがあります。",[39,14625,14626],{},"大規模スタジオや主要制作における確かな実績により、Mayaは標準であり続けています。しかしBlenderは有力な代替手段で、柔軟性と予算にやさしいアプローチによって、その差を着実に埋めつつあります。",[39,14628,14629],{},"Blenderから始めると、特に独立して制作している人にとって、3Dの世界への包括的な理解につながります。スキルやスタジオの要件が進化するにつれて、Mayaへの移行はより業界標準に沿った形になります。",[39,14631,14632],{},"もしまだ学生なら、両方のソフトの感触をつかむために無料の学生ライセンスを活用してください。",[39,14634,14635],{},"いずれにせよ、各ソフトで身につけるスキルは相互に転用できるので、どちらか一方を選ぶことを過度に心配する必要はありません。Blenderをよく理解していれば、いくつかのハウツー動画を見る、ドキュメントを読む、そして数週間練習することで、スキルをMayaに簡単に移し替えられます。",[17,14637,14639,14642],{"className":14638},[20,21,22],[17,14640,312],{"className":14641},[26],[17,14643,14645,14646,14649],{"className":14644},[31],"アニメーション工程についてもっと学ぶには ",[231,14647,1982],{"href":3404,"rel":14648},[321],"！ベストプラクティスを共有する1,000人以上の専門家とつながれ、時にはオフラインイベントも企画しています。ぜひようこそお迎えします！😊",[17,14651,14653],{"className":14652},[20,327,328],[231,14654,3413],{"href":3404,"className":14655},[332,333],{"title":53,"searchDepth":336,"depth":336,"links":14657},[14658,14659,14665,14671,14672,14673,14674,14675,14676],{"id":14341,"depth":336,"text":14344},{"id":14404,"depth":336,"text":14322,"children":14660},[14661,14662,14663,14664],{"id":14412,"depth":1088,"text":14354},{"id":14420,"depth":1088,"text":14360},{"id":14428,"depth":1088,"text":14431},{"id":14448,"depth":1088,"text":14451},{"id":677,"depth":336,"text":676,"children":14666},[14667,14668,14669,14670],{"id":14474,"depth":1088,"text":14354},{"id":14482,"depth":1088,"text":14360},{"id":14490,"depth":1088,"text":14431},{"id":14506,"depth":1088,"text":14451},{"id":14521,"depth":336,"text":14372},{"id":14537,"depth":336,"text":14540},{"id":10205,"depth":336,"text":10206},{"id":14572,"depth":336,"text":14389},{"id":14592,"depth":336,"text":14395},{"id":4755,"depth":336,"text":4756},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2025/02/blender_vs_maya_cover.1102x655.jpg",{"updated_at":14679,"featured_at":350,"visibility":351},"2026-03-26T10:27:19.000+01:00","/blog-i18n/ja/blender-vs-maya","2025-02-24T10:00:50.000+01:00",{"title":14298,"description":53},"blender-vs-maya","blog-i18n/ja/blender-vs-maya/index",[14686,14687],{"id":6914,"name":676,"slug":677,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":6915},{"id":4850,"name":4851,"slug":4852,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":14688},"https://blog.cg-wire.com/tag/resources/","z2jLEaAJCg2SMQ-155Sp99EVsaLbQBwrkzoPsD-TXI4",{"0":11,"id":14691,"title":14692,"authors":14693,"body":14695,"description":15012,"extension":346,"feature_image":15013,"html":11,"meta":15014,"navigation":352,"path":15016,"published_at":15017,"seo":15018,"slug":15019,"stem":15020,"tags":15021,"__hash__":15023,"updated_at":15015,"featured_at":350,"visibility":351},"blog/blog-i18n/ja/animation-books/index.md","2026年に読むべきアニメーションの本",[14694],{"id":2889,"name":2678,"slug":2890,"profile_image":2891,"cover_image":11,"bio":2892,"website":11,"location":2030,"facebook":11,"twitter":2031,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":2893},{"type":14,"value":14696,"toc":14999},[14697,14705,14708,14714,14722,14725,14728,14737,14743,14749,14752,14755,14763,14768,14774,14777,14780,14788,14793,14799,14802,14805,14810,14815,14821,14824,14827,14838,14843,14849,14852,14855,14863,14868,14874,14877,14880,14883,14891,14896,14902,14905,14908,14916,14921,14927,14930,14933,14941,14946,14952,14955,14958,14961,14972,14977,14979,14982,14986],[39,14698,14699,14700,14702,14704],{},"どの分野においても、学びは欠かせません。スキルを伸ばすことは、すべてのキャリアにおいて不可欠な要素です。もちろん、練習によって多くを学べますが、理論を育てるための時間を取ることは、どの分野でもより良い成果を出すうえで重要です。そしてアニメーションも例外ではありません。 ",[2122,14701],{},[2122,14703],{},"そこで私たちは、このテーマに関するベストな本のリストをご用意しました。以下は、私たちが有用だと感じた本の一部です。みなさんにも役立つことを願っています！",[39,14706,14707],{},"このリストに追加したい提案がありましたら、ぜひお知らせください。ぜひ一緒に作っていけたら嬉しいです。",[66,14709,14711],{"id":14710},"_1-the-animator%E2%80%99s-survival-kit-2002",[261,14712,14713],{},"1. アニメーターのサバイバルキット（2002）",[43,14715,14717],{"className":14716},[20,46],[48,14718],{"src":14719,"className":14720,"alt":53,"loading":54,"width":2082,"height":14721},"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/2023/08/71kRjj6sgUL._AC_UF1000-1000_QL80_-1.jpg",[52],500,[39,14723,14724],{},"『アニメーターのサバイバルキット』は、アニメーションに関わるさまざまな側面を網羅した包括的なガイドであり、制作過程で必要となるアートや技法に関する貴重な洞察が盛り込まれています。",[39,14726,14727],{},"経験豊富なアニメーター、リチャード・ウィリアムズ（『ロジャー・ラビットの逆襲』『ピンクの豹』）による実践的なアドバイスやヒントを提供してくれます。アニメーション業界における定番として知られており、初心者からベテランのプロまで幅広く強くおすすめできます。",[39,14729,14730,14733,14734,14736],{},[261,14731,14732],{},"主なポイント",": アニメーションの基礎原理、タイミングとスペーシングの理解、説得力のある表情豊かなキャラクターづくり、そして動きの原理の習得。 ",[2122,14735],{},"さらに、アニメーションのパイプラインと、アニメーターをどうディレクションするかについてのしっかりした助言もあります。",[39,14738,14739,14742],{},[261,14740,14741],{},"ISBN",": 9780571202287,0571202284",[66,14744,14746],{"id":14745},"_2-acting-for-animators-2003-2017",[261,14747,14748],{},"2. アクティング・フォー・アニメーター（2003-2017）",[39,14750,14751],{},"『アクティング・フォー・アニメーター』は、アニメーターに向けて、演技の原理を自分のアニメーション制作に取り入れる技術を教えることに焦点を当てています。",[39,14753,14754],{},"演技とアニメーションの間にあるギャップを埋めることで、アニメーターはキャラクターに対してより魅力的で現実味のあるパフォーマンスを作り出せます。演技テクニックを理解することで、アニメーターは自分の作品に命を吹き込み、観客にとって親しみやすく、感情的に引き込まれるものにできます。",[39,14756,14757,14759,14760,14762],{},[261,14758,14732],{},": キャラクターの感情や動機を分析・解釈する方法を学ぶこと、感情を効果的に伝えるためにボディランゲージや表情を理解すること、そして物語を通してキャラクターアークや成長を捉える概念をつかむこと。 ",[2122,14761],{},"本書は、アニメーションを通じて性格特性を伝える方法や、『アラジン』『ジャングル・ブック』『星の王子さま』のようなアニメ映画の例を用いて、キャラクターの行動と反応の本質を捉える方法も解説します。",[39,14764,14765,14767],{},[261,14766,14741],{},": 978-1138669123",[66,14769,14771],{"id":14770},"_3-starting-point-1979-1996-1996",[261,14772,14773],{},"3. Starting Point：1979-1996（1996）",[39,14775,14776],{},"『Starting Point』は、宮崎駿―世界でもっとも名高く影響力のあるアニメーションの人物の一人―による自伝であり、宮崎の幼少期、アニメーターおよび監督としての歩み、そして宮崎自身によるスタジオジブリの設立についての洞察を提供します。",[39,14778,14779],{},"この本は、『となりのトトロ』から『千と千尋の神隠し』、そして『もののけ姫』まで、歴史に残る数々の愛されるアニメ映画の背後にある“考え”を理解するための、独自の機会を与えてくれます。宮崎の創作プロセス、インスピレーション、そして苦闘の様子がありのままに描かれ、読者にとって、彼の稀有な作品づくりに注がれる情熱と献身を垣間見ることができます。",[39,14781,14782,14784,14785,14787],{},[261,14783,14732],{},": ストーリーテリングへの宮崎の強いこだわりと、技術の進歩の前にあっても揺るがない手描きアニメーションへの献身への理解。 ",[2122,14786],{},"また、彼の作品における環境や社会をめぐるテーマの重要性、そして自然や人間の精神への深い敬意についても学べます。さらに本書は、忍耐、表現の誠実さ、そして自分の技術で卓越を追い求めることに関する貴重な学びを提供します。",[39,14789,14790,14792],{},[261,14791,14741],{},": 9781421505947, 2009012560",[66,14794,14796],{"id":14795},"_4-the-making-of-fantastic-mr-fox-2009",[261,14797,14798],{},"4. 『ファンタスティック Mr. フォックス』のつくり方（2009）",[39,14800,14801],{},"『The Making of Fantastic Mr. Fox』は、名匠ウェス・アンダーソンによるアニメ映画『ファンタスティック Mr. フォックス』の制作プロセスを、裏側から深く掘り下げて紹介します。ストップモーションの傑作をこの世にもたらすために注がれた、創造的な判断、課題、そして革新がどのように活かされたのかを探求する内容です。",[39,14803,14804],{},"読む価値がある理由はいくつかあります。まず、この本はストップモーション・アニメーションの世界への貴重な洞察を提供し、映画のキャラクターやセットを作り上げる際の職人技を見せてくれます。これほどのクオリティのストップモーション作品を制作するために必要な献身を、より深く理解できるでしょう。また、本プロジェクトに関わった映画監督、アニメーター、その他のクリエイティブな才能たちの協力やチームワークを垣間見ることができ、制作の過程における効果的なコミュニケーションや課題解決の重要性が強調されます。最後に、この本は、独自のビジョンと芸術的な卓越へのコミットメントが、視覚的に美しく、感情にも響く映画につながることを示すことで、志望するアニメーターや映画制作者にとってのインスピレーションになります。",[39,14806,14807,14809],{},[261,14808,14732],{},": ストップモーションの技法へのより深い理解、制作プロセスでの細部への注意の重要性への気づき、そして制作を通じてクリエイティブチームが直面した課題と勝利の洞察。",[39,14811,14812,14814],{},[261,14813,14741],{},": 978-0847833542",[66,14816,14818],{"id":14817},"_5-animated-storytelling-2015",[261,14819,14820],{},"5. アニメーテッド・ストーリーテリング（2015）",[39,14822,14823],{},"『Animated Storytelling』は、アニメーションの領域におけるストーリーテリングの技術を探求します。アニメーターや映画制作者が、アニメーションによって魅力的で感情に訴える物語を生み出すために用いるさまざまな手法や戦略が扱われます。",[39,14825,14826],{},"ストーリーテリングは、成功するすべての長編・短編アニメ映画の中心にあります。短編であれ、フィーチャー（長編）アニメであれ、あるいはマーケティング用のアニメであっても、心をつかむ物語を語る力は欠かせません。本書は、アニメーター、映画制作者、脚本家、そしてアニメによるストーリーテリングの奥深さを理解したい人にとって価値あるリソースとなります。",[39,14828,14829,14831,14832,14834,14835,14837],{},[261,14830,14732],{},": 良い物語の基本要素が何で、それをアニメーションにどう適用するかを学ぶこと。これには、キャラクターの成長、プロット構造、テンポ、そして意味のある対立や解決の作り方が含まれます。 ",[2122,14833],{},"また、本書では視覚的なストーリーテリングの重要性と、映像・色・アニメーション技法を用いることでアニメーションが物語の感情的なインパクトを高められることも論じています。 ",[2122,14836],{},"『Animated Storytelling』はさらに実践的で、成功したアニメ映画のケーススタディと、彼らのストーリーテリング手法が成功にどう寄与したかを掘り下げます。読者は、現実の事例から貴重な洞察を得て、それらを自分のプロジェクトに活かせます。",[39,14839,14840,14842],{},[261,14841,14741],{},": 978-0134133652",[66,14844,14846],{"id":14845},"_6-sketching-for-animation-2016",[261,14847,14848],{},"6. Sketching for Animation（2016）",[39,14850,14851],{},"『Sketching for Animation』は、これからアニメーターを目指す人に向けて、スケッチの本質的なスキルと、それがアニメーション制作プロセスとどう結びつくのかを教えることに焦点を当てています。キャラクターデザイン、ストーリーボードの作成、視覚的なストーリーテリングなど、さまざまなスケッチの側面を扱います。これらは、プロジェクトをアニメ化し始める初期段階でとても重要です。",[39,14853,14854],{},"スケッチはアニメーションの土台です。アニメーターが動きによってキャラクターに命を吹き込む前に、まずスケッチでキャラクターの見た目、性格、表情を作り上げます。スケッチの一種であるストーリーボードも、アニメ映画の出来事の順序を計画するうえで重要です。この本はスケッチ技法を教えるだけでなく、美術制作における観察、創造性、そして実験の重要性も強調しています。",[39,14856,14857,14859,14860,14862],{},[261,14858,14732],{},": 解剖学、パースペクティブ、ジェスチャードローイングといった基礎的なスケッチスキルを習得すること。スケッチを、アイデアの可視化や物語面のブラッシュアップのためのツールとして使うための洞察が得られるかもしれません。 ",[2122,14861],{},"また、本書ではスケッチを通じてダイナミックで表情豊かなキャラクターを作るためのヒントも提供しており、アニメーションの中で感情や性格特性を効果的に引き出せるようになります。",[39,14864,14865,14867],{},[261,14866,14741],{},": 978-1474221443",[66,14869,14871],{"id":14870},"_7-the-animator%E2%80%99s-eye-2012",[261,14872,14873],{},"7. The Animator’s Eye（2012）",[39,14875,14876],{},"『The Animator's Eye』は、観察の技術と、それがアニメーターの仕事においてどれほど重要な役割を果たすかを研究します。この本では、「アニメーターのように“見る”」という概念を掘り下げ、周囲の世界にある動き、しぐさ、表情を見つけて分析できるように目を訓練します。真に説得力のある、そして本物らしいアニメーションを作るための土台として、鋭い観察力が重要であることを本書は強調しています。",[39,14878,14879],{},"観察はアニメーターにとって基本的なスキルです。なぜなら、リアルな動きや相互作用がどう機能するかを理解してはじめて、キャラクターやシーンに命を吹き込めるからです。観察力を磨くことで、アニメーターは自分の作品にリアリティ、奥行き、そして細部へのこだわりを注ぎ込めます。",[39,14881,14882],{},"本書は、ヒトや動物の動きを学ぶことから、表情のわずかなニュアンスを捉えることまで、観察スキルを伸ばすための実践的なエクササイズや洞察を提供します。また、デスクから一歩離れ、世界に入り込んで、人や自然の行動と感情を観察・分析することを促します。",[39,14884,14885,14887,14888,14890],{},[261,14886,14732],{},": 動きや解剖学を正確に観察する方法を学ぶこと、キャラクターアニメーションにおける重さとバランスを理解すること、そして説得力のある、より魅力的なアニメ表現を作るうえで小さなディテールが持つ重要性を認識すること。 ",[2122,14889],{},"本書では、スケッチブックを維持し、観察から常にスケッチを続けることの重要性も論じており、アニメーターにとって継続的な学びと向上の習慣を育てます。",[39,14892,14893,14895],{},[261,14894,14741],{},": 978-0240817248",[66,14897,14899],{"id":14898},"_8-setting-the-scene-2011",[261,14900,14901],{},"8. Setting the Scene（2011）",[39,14903,14904],{},"『Setting the Scene』は、アニメーションのために視覚的に美しく、没入感のある背景や環境を作り出す技術を研究します。アニメーションの物語の舞台となる、環境設計、背景、ロケーションをデザインして作り上げるさまざまな側面を扱います。",[39,14906,14907],{},"よく設計されたセット（舞台）は、ストーリーテリングを強化し、ムードを整え、観客に「そこはどんな場所か」という感覚や雰囲気を与えます。本書は、アニメーター、背景美術担当者、そしてアニメーションの視覚面に関わるすべての人にとって役立つ、貴重な洞察とテクニックを提供します。内容は、パースペクティブの描画、色彩理論、構図、そしてアニメの背景における奥行きや次元感の作り方などです。また、さまざまな作風（アートスタイル）が、特定の感情を呼び起こしたりシーンのトーンを伝えたりするためにどう活用できるかも探ります。",[39,14909,14910,14912,14913,14915],{},[261,14911,14732],{},": ビジュアル要素を効果的に使ってアニメーションのムードやトーンを設定する方法、物語に応じて必要なリアリティやファンタジーの感覚を作ること、そして一貫した視覚的な物語の流れを保つために環境デザインに連続性と整合性を持たせる重要性。 ",[2122,14914],{},"さらに本書では、アニメのシーンに奥行きやリアリティを加えるためのライティングとシェーディングの技法、そして大手スタジオの例を用いた、細部まで作り込みつつ効率よく魅力的な背景を作るための実践的なヒントも解説します。",[39,14917,14918,14920],{},[261,14919,14741],{},": 978-0811869874",[66,14922,14924],{"id":14923},"_9-directing-the-story-2008",[261,14925,14926],{},"9. Directing the Story（2008）",[39,14928,14929],{},"『Directing the Story』は、監督の視点から見たアニメーションにおけるストーリーテリングの技術に焦点を当てています。物語、キャラクター、そしてアニメ作品全体のビジョンを形作るうえでの監督の役割を探り、本はアニメプロジェクトを画面で魅力的で一体感のある形として実現するために必要な、創造的な意思決定、チームとのコミュニケーション、そして監督の責任を深く掘り下げます。",[39,14931,14932],{},"成功するアニメ映画の背骨はストーリーテリングであり、そのプロセスを導くうえで監督は重要な役割を担います。本書は、監督の考え方や取り組み方に関する貴重な洞察を提供し、これから監督を目指す人やアニメーターが、アニメプロジェクトを率いる際の課題と機会（監督としての協働面、アニメーターや声優、制作チームと共にビジョンを結実させるための仕事）を理解できるよう助けます。",[39,14934,14935,14937,14938,14940],{},[261,14936,14732],{},": 魅力的で引き込まれる物語を作り上げる方法を学ぶこと、キャラクター主導のストーリーテリングの重要性を理解すること、そして複雑なアイデアや感情を伝えるための視覚的ストーリーテリング技法を使いこなすこと。 ",[2122,14939],{},"本書では、アニメーション業界における明確なコミュニケーションと効果的なリーダーシップの重要性を強調し、プロジェクトの統一されたビジョンを実現するためにチームとどう協働するかを案内しています。",[39,14942,14943,14945],{},[261,14944,14741],{},": 978-0240810768",[66,14947,14949],{"id":14948},"_10-creativity-inc-2014",[261,14950,14951],{},"10. Creativity, Inc.（2014）",[39,14953,14954],{},"『Creativity, Inc.』は、ピクサー・アニメーション・スタジオの共同創設者の一人であるエド・キャットムルによって書かれた本です。この伝記は、ピクサーの歩みを掘り下げ、同社の創造的プロセスや、先進的なアニメーションスタジオとしての成功につながった原則についての貴重な洞察を与えてくれます。",[39,14956,14957],{},"『Creativity, Inc.』は、批評的にも高く評価され、愛されてきたアニメ映画を生み出すことで知られるピクサーの内部を、非常に稀な形で垣間見せてくれます。エド・キャットムルは、会社の中でクリエイティビティと革新の文化を築き、維持していくことにおける経験、課題、そして勝利（成功）を語ります。",[39,14959,14960],{},"本書では、創造的でオープンな働き方の環境を育てることの重要性、創造的なプロセスにおけるコラボレーションと建設的なフィードバックの意義、そして成長の機会としてリスクや失敗を受け入れる価値などを扱います。",[39,14962,14963,14965,14966,14968,14969,14971],{},[261,14964,14732],{},": 創造性が育つ文化をつくることに重点が置かれています。キャットムルは、アーティストやストーリーテラーが大胆にリスクを取り、限界を押し広げられるような、創造性を後押しする環境を育てる方法について貴重な教訓を共有します。 ",[2122,14967],{},"また、本書では、制作の反復（イテレーティブ）プロセスを受け入れることの重要性も示しています。アイデアは、コラボレーションとフィードバックによって常に磨かれ、より良いものへと改良されていきます。このアプローチにより、感情面でも芸術面でも観客に響く、高品質なアニメ映画を生み出せるのです。 ",[2122,14970],{},"『Creativity, Inc.』は、クリエイティブ産業における効果的なリーダーシップやマネジメントについての洞察を提供する場合もあり、成功するアニメーションスタジオを運営するうえでの、アーティストのニーズとビジネス面の両立をどのように図るかが示されます。",[39,14973,14974,14976],{},[261,14975,14741],{},": 978-0812993011",[66,14978,4756],{"id":4755},[39,14980,14981],{},"アニメーション業界は急速なペースで進化していますが、これらの定番の本はこれからも長く重要な価値を持ち続けるでしょう。技術面やマネジメント面のことをもっと学びたいとしても、私たちが取り上げきれなかった本はまだまだ他にもあります。ぜひ、みなさんのおすすめをお知らせください！",[39,14983,14984],{},[2122,14985],{},[39,14987,14988,14991,14996],{},[802,14989,14990],{},"本は素晴らしいメンターですが、あなたも",[231,14992,14993],{"href":9725},[802,14994,14995],{},"私たちのDiscordコミュニティに参加して",[802,14997,14998],{},"世界中の1000人以上のアニメーション専門家から学びましょう。ぜひ遊びに来てください。あいさつするだけで、たった1分で済みます！",{"title":53,"searchDepth":336,"depth":336,"links":15000},[15001,15002,15003,15004,15005,15006,15007,15008,15009,15010,15011],{"id":14710,"depth":336,"text":14713},{"id":14745,"depth":336,"text":14748},{"id":14770,"depth":336,"text":14773},{"id":14795,"depth":336,"text":14798},{"id":14817,"depth":336,"text":14820},{"id":14845,"depth":336,"text":14848},{"id":14870,"depth":336,"text":14873},{"id":14898,"depth":336,"text":14901},{"id":14923,"depth":336,"text":14926},{"id":14948,"depth":336,"text":14951},{"id":4755,"depth":336,"text":4756},"どの分野においても、学びは欠かせません。スキルを伸ばすことは、すべてのキャリアにおいて不可欠な要素です。もちろん、練習によって多くを学べますが、理論を育てるための時間を取ることは、どの分野でもより良い成果を出すうえで重要です。そしてアニメーションも例外ではありません。 そこで私たちは、このテーマに関するベストな本のリストをご用意しました。以下は、私たちが有用だと感じた本の一部です。みなさんにも役立つことを願っています！","https://images.unsplash.com/photo-1594312915251-48db9280c8f1?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8c2VhcmNofDIyfHxib29rfGVufDB8fHx8MTY5MjYyNjE0NXww&ixlib=rb-4.0.3&q=80&w=2000",{"0":11,"updated_at":15015,"featured_at":350,"visibility":351},"2026-03-26T10:10:02.000+01:00","/blog-i18n/ja/animation-books","2023-08-21T15:56:31.000+02:00",{"title":14692,"description":15012},"アニメーション書籍","blog-i18n/ja/animation-books/index",[15022],{"id":4850,"name":4851,"slug":4852,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":14688},"xFPQYd3MUu07XqfQlWkE6jaQM9uAr_i8qdg-y-Bn6CE",{"id":15025,"title":15026,"authors":15027,"body":15029,"description":15033,"extension":346,"feature_image":15412,"html":11,"meta":15413,"navigation":352,"path":15415,"published_at":15416,"seo":15417,"slug":15418,"stem":15419,"tags":15420,"__hash__":15422,"updated_at":15414,"featured_at":350,"visibility":351},"blog/blog-i18n/ja/cg-pipeline-series-list-of-the-most-popular-cg-tools/index.md","最も人気のCGパイプラインツール（2026）",[15028],{"id":2023,"name":2024,"slug":2025,"profile_image":2026,"cover_image":2027,"bio":2028,"website":2029,"location":2030,"facebook":11,"twitter":2031,"meta_title":11,"meta_description":11,"threads":11,"bluesky":11,"mastodon":11,"tiktok":11,"youtube":11,"instagram":11,"linkedin":11,"url":2032},{"type":14,"value":15030,"toc":15410},[15031,15034,15037,15042,15045,15086,15090,15093,15127,15131,15149,15153,15156,15182,15186,15228,15230,15279,15284,15287,15309,15313,15316,15339,15341,15381,15384,15387,15395],[39,15032,15033],{},"CG制作に関わるソフトウェアは、プロジェクトの成功を左右する重要な要素です。だからこそ、この分野で進化していくためには、それらを理解しておくのがよいでしょう。とても重要なので、ソフト名がすべてのスタジオの語彙の一部になっています。Nuke や V-Ray について言及されるとき、その意味を理解していることが前提になっています。",[39,15035,15036],{},"さらに、ソフトはどんどん増えています。そこで、スタジオのパイプラインを構築したいなら「何をするのか」を把握しておくのが大切です。そこで、CGパイプラインシリーズの第一歩として、市場で利用できる主要なソフトウェアを一覧にすることにしました。",[15038,15039,15041],"h4",{"id":15040},"generalistic","一般用途（Generalistic）",[39,15043,15044],{},"一般用途ツールは、アニメーション映画を作るために必要な主要な作業――モデリング、テクスチャリング、リギング、アニメーション、レンダリング――を行うことを可能にします。これらは制作の土台であり、すべての作業を構成します。",[82,15046,15047,15055,15063,15070,15078],{},[85,15048,15049,15054],{},[231,15050,14322],{"href":15051,"rel":15052},"http://www.autodesk.com/products/maya/overview?ref=blog.cg-wire.com",[15053],"noopener",": 大手スタジオの標準的な選択肢です。多くのアーティストが扱い方を知っており、高いカスタマイズ性により、複雑なパイプラインでは最初に選ばれる存在になっています。",[85,15056,15057,15062],{},[231,15058,15061],{"href":15059,"rel":15060},"http://www.autodesk.fr/products/3ds-max/overview?ref=blog.cg-wire.com",[15053],"3DSMax",": 小規模なショップでは 3DS を好むところがたくさんあります。機能リストは Maya ほど魅力的に見えないかもしれませんが、よりシンプルなツールです。プラグインも多く、素晴らしい成果を生み出せます。これが、小さなチームでより生産性が高まる主な理由です。",[85,15064,15065,15069],{},[231,15066,676],{"href":15067,"rel":15068},"http://blender.org/?ref=blog.cg-wire.com",[15053],": フリーでオープンソースのソフトウェアです。つまりライセンス料金がかからず、非常にカスタマイズ可能です。使い勝手は良いのですが、弱点としては、多くのアーティストが馴染んでいないこと、また独自の競合製品より機能が少ないことが挙げられます。",[85,15071,15072,15077],{},[231,15073,15076],{"href":15074,"rel":15075},"https://www.sidefx.com/?ref=blog.cg-wire.com",[15053],"Houdini",": Houdini は完全なスイートですが、人々が惹かれるのは主に VFX 機能です。ノードシステムを通じて、より複雑なエフェクトを構築できます。他の面でも非常に良い性能を発揮します。さらに、バージョンごとに進歩を重ねているため、Autodesk のソリューションに対する大きな挑戦者として見られています。",[85,15079,15080,15085],{},[231,15081,15084],{"href":15082,"rel":15083},"https://www.maxon.net/en/products/cinema-4d/overview/?ref=blog.cg-wire.com",[15053],"Cinema 4D",": 最もシンプルなツールの一つです。3D を始めるのに最適で、非常に小規模な制作でもより適しています。",[15038,15087,15088],{"id":10205},[261,15089,10206],{},[39,15091,15092],{},"モデリングの多くは一般用途ツール内で行われますが、最近では、モデリング工程の精密なタスクに特化したツールが登場してきました。ここでは、その中でも特に人気のあるものを紹介します。",[82,15094,15095,15103,15111,15119],{},[85,15096,15097,15102],{},[231,15098,15101],{"href":15099,"rel":15100},"http://pixologic.com/?ref=blog.cg-wire.com",[15053],"ZBrush",": このモデリングソフトは、彫刻家のように 3D モデルを作ることを可能にします。なお、ユーザーインターフェースは独特なので注意してください。",[85,15104,15105,15110],{},[231,15106,15109],{"href":15107,"rel":15108},"https://www.autodesk.com/products/mudbox/overview?ref=blog.cg-wire.com",[15053],"Mudbox",": ZBrush の Autodesk 版にあたります。少しだけパワーは落ちるかもしれませんが、Maya や 3DS Max との統合がより良い形で提供されます。",[85,15112,15113,15118],{},[231,15114,15117],{"href":15115,"rel":15116},"http://www.marvelousdesigner.com/?ref=blog.cg-wire.com",[15053],"Marvelous",": テキスタイル（布・衣服）に特化したツールです。伝統的なファッションデザインの技法を用いることで、さまざまでリアルな衣服を作成できます。",[85,15120,15121,15126],{},[231,15122,15125],{"href":15123,"rel":15124},"https://3dcoat.com/?ref=blog.cg-wire.com",[15053],"3DCoat",": モデルを次のレベルへ引き上げるための、オールインワンのツールボックスです。高度なシェーディングとスカルプティングで仕上げます。",[15038,15128,15130],{"id":15129},"texturing","テクスチャリング",[82,15132,15133,15141],{},[85,15134,15135,15140],{},[231,15136,15139],{"href":15137,"rel":15138},"https://www.foundry.com/products/mari?ref=blog.cg-wire.com",[15053],"Mari",": ZBrush に似たアプローチですが、こちらはテクスチャリング向けです。3D モデルに直接ペイントすることで、テクスチャを作成できます。",[85,15142,15143,15148],{},[231,15144,15147],{"href":15145,"rel":15146},"https://www.allegorithmic.com/substance?ref=blog.cg-wire.com",[15053],"Substance",": 多くの方法でテクスチャを作れるようにします。3D ペイント、マテリアル生成とライブラリ、そしてプロシージャル（手続き的）ツールセットです。",[15038,15150,15152],{"id":15151},"compositing","コンポジット",[39,15154,15155],{},"画像ができあがったら、最も安価で調整・改善する方法は、レンダリングしたショットに直接手を加えることです。もう一つよくある使い方としては、VFX やマットペイントを従来の映画ショットに取り込むことです。",[82,15157,15158,15166,15174],{},[85,15159,15160,15165],{},[231,15161,15164],{"href":15162,"rel":15163},"https://www.foundry.com/products/nuke?ref=blog.cg-wire.com",[15053],"Nuke",": Nuke は、映像コンポジットにおけるノード型のアプローチを提案します。管理は難しくなりますが、その分とても印象的なショットを作れます。また、非破壊的であるため、元の映像はそのまま保持され、いつでも変更可能です。",[85,15167,15168,15173],{},[231,15169,15172],{"href":15170,"rel":15171},"https://www.adobe.com/fr/products/aftereffects.html?ref=blog.cg-wire.com",[15053],"After Effects",": After は、映像コンポジットの Photoshop です。素早く良い結果を出せますが、複雑なショットを扱う場合には制限があります。注意点として、このアプローチは破壊的なので、元の情報が失われます。",[85,15175,15176,15181],{},[231,15177,15180],{"href":15178,"rel":15179},"https://www.blackmagicdesign.com/products/fusion?ref=blog.cg-wire.com",[15053],"Fusion",": Nuke のより手頃な代替です。こちらもノードシステムを備えており、規模が控えめな制作でも優れた結果を提供できます。",[15038,15183,15185],{"id":15184},"_2d","2D",[82,15187,15188,15196,15204,15212,15220],{},[85,15189,15190,15195],{},[231,15191,15194],{"href":15192,"rel":15193},"https://www.toonboom.com/?ref=blog.cg-wire.com",[15053],"ToonBoom","（Storyboard Pro と Harmony）: ストーリーボードを管理することは、業界において今や標準になっています。アニメーションツールも非常に良い仕事をします。",[85,15197,15198,15203],{},[231,15199,15202],{"href":15200,"rel":15201},"https://www.adobe.com/fr/products/photoshop.html?ref=blog.cg-wire.com",[15053],"Photoshop",": デジタルアート業界で最もよく使われているソフトの一つなので、改めて紹介する必要はないでしょう。3D 制作では主にテクスチャリングやマットペイントに役立ちます。",[85,15205,15206,15211],{},[231,15207,15210],{"href":15208,"rel":15209},"https://www.adobe.com/fr/products/animate.html?ref=blog.cg-wire.com",[15053],"Animate CC",": Adobe の Flash アニメーションツールを、モダン化して HTML5 と互換性を持たせたものです。",[85,15213,15214,15219],{},[231,15215,15218],{"href":15216,"rel":15217},"http://tvpaint.com/?ref=blog.cg-wire.com",[15053],"TVPaint",": 2D アニメーションを扱うための素晴らしいツールです。手描きアニメーションにより適しています。",[85,15221,15222,15227],{},[231,15223,15226],{"href":15224,"rel":15225},"https://krita.org/?ref=blog.cg-wire.com",[15053],"Krita",": デジタルペイントのための最良のオープンソースツールです。スタジオでの人気は急速に高まっています。",[15038,15229,14395],{"id":14592},[82,15231,15232,15240,15248,15256,15264,15271],{},[85,15233,15234,15239],{},[231,15235,15238],{"href":15236,"rel":15237},"https://www.solidangle.com/?ref=blog.cg-wire.com",[15053],"Arnold",": 最も優れたレンダーエンジンだと考えられている一方で、最も高価でもあります。",[85,15241,15242,15247],{},[231,15243,15246],{"href":15244,"rel":15245},"https://www.vray.com/?ref=blog.cg-wire.com",[15053],"VRay",": 速く、多くの機能を備えています。欠点は複雑さですが、幸いなことに大規模なコミュニティが多くのチュートリアルを提供しています。",[85,15249,15250,15255],{},[231,15251,15254],{"href":15252,"rel":15253},"http://www.autodesk.com/products/mental-ray-standalone/overview?ref=blog.cg-wire.com",[15053],"Mental Ray",": 最良のレンダーエンジンとは見なされていないものの、無料で使えるという利点があります。",[85,15257,15258,15263],{},[231,15259,15262],{"href":15260,"rel":15261},"https://renderman.pixar.com/view/renderman?ref=blog.cg-wire.com",[15053],"Renderman",": このエンジンは Pixar が作っています。優れた結果を提供しますが、その能力を最大限に引き出して使うには技術スキルが必要です。",[85,15265,15266,15270],{},[231,15267,8005],{"href":15268,"rel":15269},"https://docs.blender.org/manual/en/dev/render/cycles/?ref=blog.cg-wire.com",[15053],": Blender Foundation のレンダーエンジンです。無料でオープンソースでありながら、良い結果が得られます。",[85,15272,15273,15278],{},[231,15274,15277],{"href":15275,"rel":15276},"http://guerillarender.com/?ref=blog.cg-wire.com",[15053],"Guerrilla",": ライティング（光源）の制御を非常に細かく行えます。簡単にカスタマイズもできます（lua や python のスクリプト）し、シーンビルダーも付属しています。パフォーマンスも市場以上です。",[39,15280,15281],{},[261,15282,15283],{},"Lookdev / Scene Assembly",[39,15285,15286],{},"ショットを組み立てる前に、まずは物事のアート面に取り組みたいと思うかもしれません。朗報です、この仕事に特化したツールがあります！",[82,15288,15289,15296,15303],{},[85,15290,15291],{},[231,15292,15295],{"href":15293,"rel":15294},"https://www.linkedin.com/company/isotropix/?ref=blog.cg-wire.com",[321],"Clarisse",[85,15297,15298],{},[231,15299,15302],{"href":15300,"rel":15301},"https://www.foundry.com/products/katana?ref=blog.cg-wire.com",[15053],"Katana",[85,15304,15305],{},[231,15306,15308],{"href":15275,"rel":15307},[15053],"Guerilla",[15038,15310,15312],{"id":15311},"render-farm-manager","レンダーファームマネージャー",[39,15314,15315],{},"スタジオが大きくなるにつれて、ますます負荷の高いレンダリングが必要になります。そのためにはレンダーファームが必須です。レンダリングジョブの状態を把握しながら管理するには、専用のソフトウェアが必要になります。信頼性の高いものを短く挙げると以下の通りです：",[82,15317,15318,15325,15332],{},[85,15319,15320],{},[231,15321,15324],{"href":15322,"rel":15323},"http://deadline.thinkboxsoftware.com/?ref=blog.cg-wire.com",[15053],"Deadline",[85,15326,15327],{},[231,15328,15331],{"href":15329,"rel":15330},"http://www.renderpal.com/?ref=blog.cg-wire.com",[15053],"Render Pal",[85,15333,15334],{},[231,15335,15338],{"href":15336,"rel":15337},"http://www.royalrender.de/?ref=blog.cg-wire.com",[15053],"Royal Render",[15038,15340,668],{"id":4847},[82,15342,15343,15350,15358,15366,15374],{},[85,15344,15345,15349],{},[231,15346,15348],{"href":15275,"rel":15347},[15053],"Shotgun",": 業界の標準です。あらゆる種類のプロジェクトにうまくフィットし、多くの開発チームの“うれしさ”にもつながります。とはいえ、この優れた機能セットには複雑さや、カスタマイズが必要という面もあります。パイプラインに統合するために、専任のソフトウェアエンジニアを雇うことになることもよくあります。",[85,15351,15352,15357],{},[231,15353,15356],{"href":15354,"rel":15355},"https://www.ftrack.com/?ref=blog.cg-wire.com",[15053],"Ftrack",": Shotgun の最大の対抗馬です。似たような機能を備えつつ、よりモダンなインターフェースになっています。Shotgun よりシンプルですが、柔軟性は少しだけ劣ります。",[85,15359,15360,15365],{},[231,15361,15364],{"href":15362,"rel":15363},"http://nim-labs.com/?ref=blog.cg-wire.com",[15053],"NIM Labs",": NIM は、アセット管理の部分や、ファイルのパブリッシュ／検証により重点を置いています。すぐに使えるシーンオープナー／セーバーと、シンプルな検証ツールを提供します。",[85,15367,15368,15373],{},[231,15369,15372],{"href":15370,"rel":15371},"https://www.toonboom.com/products/producer?ref=blog.cg-wire.com",[15053],"Producer",": Harmony／Toonboom のツールスイートでの作業に特化しています。主に 2D 制作を対象としています。",[85,15375,15376,15380],{},[231,15377,9228],{"href":15378,"rel":15379},"http://cg-wire.com/?ref=blog.cg-wire.com",[15053],": これは CGWire で私たちが開発している主要ツールです。私たちはシンプルさと使いやすさに注力しています。制作管理を、誰にでも身近なものにします。",[39,15382,15383],{},"以上です！このリストは、CG制作に関わるソフトウェアの概要を素早く把握できるものになっています。次の制作をゼロから始めて、好きなツールを選びたいなら知っておいてください。場合によっては、そのタスクに対して「最良のソフト」を選ぶことが、必ずしも最良の解決策ではありません。一般用途のソフトを使うことで、よりスムーズなパイプラインになり、全体としてより高い品質を得られることがあります。結局のところ、それはあなたの人や利用可能な予算に大きく左右されます！",[39,15385,15386],{},"この概要を楽しんでいただければ幸いです。ソフトが抜けていると思ったら、コメントで教えてください。喜んでリストに追加します。",[39,15388,15389,15390],{},"注：私たちは、あなたのパイプラインで使えるフリーでオープンソースのソフトウェアのリストも管理しています。ぜひ貢献してください： ",[231,15391,15394],{"href":15392,"rel":15393},"https://github.com/cgwire/awesome-cg-pipeline/?ref=blog.cg-wire.com",[5190,15053],"https://github.com/cgwire/awesome-cg-pipeline/",[39,15396,15397,15400,15407],{},[802,15398,15399],{},"主にソフトウェアやパイプラインについて書いていますが、美しい画像を見るのも好きじゃないわけではありません。CG業界全般に関する、より広いトピックやキュレーションされたコンテンツが欲しい場合は、こちらからフォローできます ",[231,15401,15404],{"href":15402,"rel":15403},"https://x.com/cgwirekitsu?ref=blog.cg-wire.com",[321],[802,15405,15406],{},"Twitter",[802,15408,15409],{},"！",{"title":53,"searchDepth":336,"depth":336,"links":15411},[],"https://storage.ghost.io/c/be/86/be86007c-1b95-476e-8b3b-895720c0d138/content/images/max/800/1-xuNUOx_iYm6nbhEtcy0n6w.png",{"updated_at":15414,"featured_at":350,"visibility":351},"2026-03-27T10:59:10.000+01:00","/blog-i18n/ja/cg-pipeline-series-list-of-the-most-popular-cg-tools","2017-04-24T01:29:45.000+02:00",{"title":15026,"description":15033},"CGパイプラインシリーズ：人気CGツール一覧","blog-i18n/ja/cg-pipeline-series-list-of-the-most-popular-cg-tools/index",[15421],{"id":4850,"name":4851,"slug":4852,"description":11,"feature_image":11,"visibility":351,"og_image":11,"og_title":11,"og_description":11,"twitter_image":11,"twitter_title":11,"twitter_description":11,"meta_title":11,"meta_description":11,"codeinjection_head":11,"codeinjection_foot":11,"canonical_url":11,"accent_color":11,"url":14688},"AUnxCeC7DrzZX-a_q6ViJJAlIBvp0z4eTBy1N2zwkrk",[15424,15427,15430,15433,15436,15439,15442],{"id":648,"title":649,"body":11,"description":11,"extension":650,"lang":651,"localizedSlug":649,"meta":15425,"navigation":352,"pageType":653,"path":654,"seo":15426,"slug":649,"stem":656,"__hash__":657},{"name":649},{},{"id":659,"title":660,"body":11,"description":11,"extension":650,"lang":651,"localizedSlug":660,"meta":15428,"navigation":352,"pageType":653,"path":662,"seo":15429,"slug":660,"stem":664,"__hash__":665},{"name":660},{},{"id":667,"title":668,"body":11,"description":11,"extension":650,"lang":651,"localizedSlug":668,"meta":15431,"navigation":352,"pageType":653,"path":670,"seo":15432,"slug":668,"stem":672,"__hash__":673},{"name":668},{},{"id":675,"title":676,"body":11,"description":11,"extension":650,"lang":651,"localizedSlug":677,"meta":15434,"navigation":352,"pageType":653,"path":679,"seo":15435,"slug":677,"stem":681,"__hash__":682},{"name":676},{},{"id":684,"title":685,"body":11,"description":11,"extension":650,"lang":651,"localizedSlug":685,"meta":15437,"navigation":352,"pageType":653,"path":687,"seo":15438,"slug":685,"stem":689,"__hash__":690},{"name":685},{},{"id":692,"title":693,"body":11,"description":11,"extension":650,"lang":651,"localizedSlug":693,"meta":15440,"navigation":352,"pageType":653,"path":695,"seo":15441,"slug":693,"stem":697,"__hash__":698},{"name":693},{},{"id":700,"title":701,"body":11,"description":11,"extension":650,"lang":651,"localizedSlug":701,"meta":15443,"navigation":352,"pageType":653,"path":703,"seo":15444,"slug":701,"stem":705,"__hash__":706},{"name":701},{},1780310544257]