mcpField
3
3d-model-generation

3d-model-generation

github.com/eachlabsクリエイティブ・メディア441.3k 回インストール今日更新
リポジトリ

3d-model-generation について

3d-model-generationは、each::senseでテキスト説明や参照画像から3Dアセットを作るスキルです。ゲーム、製品ビジュアライゼーション、建築などに対応し、形式や反復生成のガイドも含みます。

主な機能

  1. 01テキストから3D、画像から3D
  2. 02キャラクター、製品、シーン、構造物の生成
  3. 03PBRテクスチャマップの生成
  4. 04複数の3D出力形式
  5. 05反復生成と一括アセット生成

活用シーン

  1. 01ゲーム用アセットの作成
  2. 02製品ビジュアライゼーション用モデルの制作
  3. 03建築シーンの生成
  4. 04参照画像からテクスチャ付き3Dモデルを制作

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/eachlabs/skills --skill 3d-model-generation

インストール後、Claude Code で/3d-model-generationを入力して読み込まれたか確認します。

同梱ファイルreferences/SSE-EVENTS.md

詳細

3Dモデル生成

each::senseを使用して、本番環境で使える3Dモデルを生成します。このスキルでは、ゲーム、Eコマース、建築、製品のビジュアライゼーションなどに適した3Dアセットを、テキストの説明や参照画像から作成できます。

機能

  • テキストから3D:自然言語の説明から3Dモデルを生成
  • 画像から3D:2D画像を3Dモデルに変換
  • キャラクターモデル:人型キャラクターやクリーチャーの3Dモデルを作成
  • 製品モデル:Eコマースに適した製品の3Dアセットを作成
  • 環境/シーン:3D環境や風景を生成
  • ゲームアセット:ローポリやスタイライズされた、ゲームですぐに使えるモデルを作成
  • 家具:インテリアデザインやホームデコレーション向けの3Dモデルを作成
  • 乗り物:自動車、航空機、輸送機器の3Dアセットを作成
  • 建築:建物、構造物、建築要素を作成
  • PBRテクスチャ:3Dモデル用の物理ベースレンダリングテクスチャを生成

クイックスタート

curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a 3D model of a medieval treasure chest with gold trim and iron locks"}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'

出力形式

形式拡張子用途
GLB.glb汎用形式、Web/AR/VR、Unity、Unreal
GLTF.gltfWebアプリケーション、three.js
OBJ.objレガシーサポート、3Dプリント
FBX.fbxアニメーション、ゲームエンジン
USDZ.usdzApple AR Quick Look

ユースケースの例

1. テキストから3Dモデルを生成
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a 3D model of a futuristic sci-fi helmet with glowing blue visor and matte black finish. High detail, suitable for game assets."}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'
2. 画像から3Dに変換
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Convert this product image into a 3D model. Maintain accurate proportions and surface details for e-commerce use."}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max",
    "image_urls": ["https://example.com/product-image.jpg"]
  }'
3. キャラクターの3Dモデル
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a 3D character model of a fantasy warrior elf with ornate silver armor, long pointed ears, and a flowing cape. T-pose, game-ready topology."}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'
4. 製品の3Dモデル
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Generate a 3D model of a premium wireless headphone. Matte black with rose gold accents, leather ear cushions. High detail for product visualization and AR try-on."}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'
5. 環境/シーンの3Dモデル
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a 3D environment scene of a Japanese zen garden with a stone pathway, bamboo fence, koi pond, and cherry blossom trees. Stylized low-poly aesthetic for mobile games."}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'
6. ゲームアセットの3Dモデル
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a low-poly 3D game asset pack: a wooden crate, barrel, torch, and treasure chest. Stylized textures, optimized for real-time rendering, under 5000 triangles each."}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "eco"
  }'
7. 家具の3Dモデル
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Generate a 3D model of a mid-century modern armchair. Walnut wood frame with teal velvet upholstery. Realistic materials for interior design visualization and AR placement."}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'
8. 乗り物の3Dモデル
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a 3D model of a vintage 1960s muscle car. Cherry red metallic paint, chrome details, whitewall tires. High detail exterior suitable for automotive visualization."}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'
9. 建築物の3Dモデル
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Generate a 3D architectural model of a modern minimalist house. Two stories, large glass windows, flat roof, concrete and wood exterior. Include surrounding landscape."}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'
10. 3D用PBRテクスチャの生成
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Generate PBR texture maps for weathered bronze metal. Include albedo, normal, roughness, metallic, and ambient occlusion maps. 2K resolution, tileable."}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'

ベストプラクティス

モデルの品質
  • 具体的に指定する:素材の種類(金属、木材、布地)、表面仕上げ(マット、光沢)、スタイル(リアル、スタイライズ、ローポリ)を含めます
  • 用途を指定する:ゲーム(最適化済み)、AR/VR、3Dプリント、ビジュアライゼーションのどれに使うかを記載します
  • サイズの基準を含める:適切なプロポーションが必要な場合は、サイズを説明します
トポロジーのガイドライン
  • ゲームですぐに使えるモデル:ポリゴン数の最適化とクリーンなトポロジーを指定します
  • アニメーションですぐに使えるモデル:キャラクターにはTポーズを指定し、適切なエッジループを求めます
  • 3Dプリント:ウォータータイトなメッシュと多様体ジオメトリを求めます
テクスチャの品質
  • PBRマテリアル:必要なテクスチャマップ(アルベド、ノーマル、ラフネス、メタリック、AO)を指定します
  • 解像度:用途に合わせてテクスチャ解像度(1K、2K、4K)を指定します
  • タイリング可能なテクスチャ:繰り返し使う表面には、継ぎ目のないタイリング可能なテクスチャを求めます

3D生成のプロンプトのヒント

3Dモデルを作成するときは、プロンプトに次の情報を含めます。

  1. オブジェクトの説明:どのようなオブジェクトか。種類やスタイルを具体的に指定します
  2. 素材:オブジェクトはどのような素材で構成されているか(金属、木材、プラスチック、布地)
  3. 表面仕上げ:マット、光沢、ブラシ仕上げ、経年劣化など
  4. スタイル:リアル、スタイライズ、ローポリ、カートゥーン、フォトリアル
  5. 用途:ゲームアセット、製品のビジュアライゼーション、AR、3Dプリント
  6. 技術仕様:必要に応じてポリゴン数やテクスチャ解像度
プロンプトの構成例
"Create a 3D model of [object description] with [materials/colors].
Style: [realistic/stylized/low-poly].
Use case: [game/AR/visualization/printing].
[Additional requirements like texture maps, polygon count, etc.]"

モードの選択

生成を始める前に、ユーザーに尋ねます。

「高速で低コストな生成と、高品質な生成のどちらを希望しますか?」

モード最適な用途速度品質
max最終的な本番用アセット、主役となるモデル、製品画像遅め最高
eco手早いプロトタイプ、コンセプトの検討、大量生成速め良好

複数ターンでの3Dモデルの反復

3Dモデルを反復するには、session_idを使用します。

# Initial model
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a 3D model of a fantasy sword with dragon motifs"}],
    "model": "eachsense/beta",
    "stream": true,
    "session_id": "sword-project-001"
  }'

# Iterate based on feedback
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Add more intricate engravings on the blade and make the dragon head on the hilt more prominent"}],
    "model": "eachsense/beta",
    "stream": true,
    "session_id": "sword-project-001"
  }'

# Request variations
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create 2 more variations: one with ice theme and one with fire theme"}],
    "model": "eachsense/beta",
    "stream": true,
    "session_id": "sword-project-001"
  }'

アセットの一括生成

プロジェクト用に複数の3Dアセットを生成します。

# Asset 1 - Props
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a 3D model of a medieval wooden tavern table with benches"}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "eco",
    "session_id": "medieval-tavern-pack"
  }'

# Asset 2 - Environment piece
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a 3D model of a stone fireplace with crackling fire effect placeholder"}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "eco",
    "session_id": "medieval-tavern-pack"
  }'

# Asset 3 - Decorative
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create 3D models of tavern decorations: hanging lantern, wall-mounted deer head, and wooden mug"}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "eco",
    "session_id": "medieval-tavern-pack"
  }'

エラー処理

エラー原因解決策
Failed to create prediction: HTTP 422残高不足eachlabs.ai でチャージしてください
コンテンツポリシー違反禁止されているコンテンツコンテンツポリシーに準拠するようプロンプトを調整してください
タイムアウト複雑な生成クライアントのタイムアウトを最低10分に設定してください
無効な画像 URL画像にアクセスできない画像 URL が一般公開されていることを確認してください

関連スキル

  • each-sense - コア API ドキュメント
  • product-photo-generation - 商品写真の撮影とビジュアライゼーション
  • image-generation - 参照画像用の2D画像生成

コメント