procedural-modeling について
procedural-modelingは、調整可能なパラメーターと演出可能なバリエーションを備えたBlenderのプロシージャルアセット制作スキルです。複数のGeometry Nodesシステムを扱い、ゲーム向け出力前の検証、ジオメトリの実体化、最適化を重視します。
主な機能
- 01岩、建物、道路などの生成
- 02シードとパラメーターによる変化制御
- 03パラメーター範囲と再現性の検証
- 04ゲーム出力向けの実体化と最適化
活用シーン
- 01再利用可能なモジュール建築キットの制作
- 02道路、配管、植生システムの生成
- 03ゲーム背景向けの岩やパネルのバリエーション作成
MCP 対応
MCPを使ったプロシージャルシステムの構築、シードと密度の設定、ジオメトリの実体化、ポリゴン数の照会、メッシュの出力手順を示しています。
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ arjun988/ blender-skills --skill procedural-modelingインストール後、Claude Code で/procedural-modelingを入力して読み込まれたか確認します。
詳細
プロシージャルモデリング
アートディレクション可能なバリエーションを備えたパラメトリックアセットです。ジオメトリノードを優先します。ゲームへの書き出し前にベイクします。
使用する場面
- 岩、崖、地形の特徴
- モジュール式の建物の生成
- 道路や小道のシステム
- パイプ/ケーブルのネットワーク
- SF風パネルの配列
- 植生の配置システム
ワークフロー
Define Parameters → Build Procedural System → Validate Variations
→ Realize/Bake → Optimize → Export
システムのカテゴリ
| システム | 主なツール | 出力 |
|---|---|---|
| 岩 | ジオメトリノード+ノイズ | 静的メッシュ |
| 建物 | ジオメトリノードのスタック | モジュール式パーツ |
| 道路 | カーブ+ジオメトリノード | メッシュの帯 |
| パイプ | カーブからメッシュへ | ネットワーク |
| 植生 | Scatter GN | インスタンス化/ベイク済み |
| SF風パネル | 配列+ランダム | トリムシートのジオメトリ |
岩の生成
Base shape (ico sphere) → Displace (multi-scale noise)
→ Decimate → Subdivide (selective) → Weighted Normal
→ Variation: seed input controls all noise
公開するパラメーター:seed、scale、roughness、density
建物の生成
Footprint curve → Extrude floors → Window boolean pattern
→ Balcony probability → Roof type switch → Material ID
ゲーム用キットでは、各階のモジュールごとに個別のメッシュを出力します。
道路システム
Centerline curve → Resample → Cross-section profile
→ Bridge blend at intersections → UV follow curve
パイプ/ケーブルのネットワーク
Node graph points → Connect minimum spanning → Curve segments
→ Profile sweep → Collision offset → Clamp size range
SF風パネル
Grid subdivide → Random inset/extrude → Bevel
→ Panel index → Material variation
→ Bake to trim sheet layout
バリエーションのテスト
パラメーターの極値でテストします:
- 最小のスケール/密度
- 最大のスケール/密度
- シード 0、42、9999(再現性の確認)
ゲームへの書き出し方法の判断
| 方法 | 使用する場面 |
|---|---|
| Blender 内でのみプロシージャルのままにする | イテレーション段階 |
| 1つのバリエーションを実体化する | 標準的なゲーム用プロップ |
| 複数のシードを LOD バリエーションとしてベイクする | 背景のバリエーション |
| ノードグループをエンジンに書き出す | エンジンが対応している場合のみ |
MCP との連携
- MCP を使ってプロシージャルシステムを構築します
- MCP を使ってシード/密度のパラメーターを設定します
- MCP を使ってジオメトリを実体化します
- バリエーションごとの出力ポリゴン数を取得します
- 実体化したメッシュを書き出します
制約
必ず行うこと
- 再現性を確保するため、シードを公開します
- パラメーターの最小値/最大値の範囲をテストします
- ゲームエンジンへの書き出し前に実体化します
- 実体化後に最適化します(asset-optimization)
- 制作ブリーフにパラメーターの範囲を記載します
必ず避けること
- 検証せずに未実体化のジオメトリノードをゲームに書き出すこと
- パフォーマンステストをせずに無限のバリエーションを作ること
- 手作業でヒーロークオリティが必要な箇所にプロシージャル生成を使うこと
- プロシージャル出力の UV 計画を省くこと
- シード制御なしでランダム値をハードコードすること
リファレンスガイド
| トピック | リファレンス | 読み込むタイミング |
|---|---|---|
| ジオメトリノードのパターン | ../geometry-nodes/SKILL.md | ノード設定時 |
| 環境への統合 | ../environment-artist/SKILL.md | シーンへの配置時 |
コメント
Markdown 対応