UStackUStack
Nova3D icon

Nova3D

Nova3D 開源用戶端,透過 Blender Python(腳本原生)流程,將文字提示或參考影像生成可編輯、具零件感的 3D 資產。

Nova3D

Nova3D 是什麼?

Nova3D 是 nova3d.xyz 的開源用戶端,它生成 3D 資產作為可執行的建構程序,而非單一合併網格。它產生 Blender 原生 Python 腳本,並返回具名且可單獨存取零件的結構化 GLB。

此用戶端的核心目的是(預設)連接到託管 Nova3D 流程,讓您從文字提示或參考影像生成可編輯、具零件感的 3D 輸出。

主要功能

  • 可編輯、具零件感的 3D 輸出:流程輸出具名且可單獨存取零件的結構化 GLB,設計用於針對性編輯(例如,變更單一零件而不需重新生成全部)。
  • 腳本原生生成(prompt-to-code / image-to-code):不同於擴散式「image-to-3D」產生單一合併網格,Nova3D 生成代表建構程序的 Blender Python 腳本。
  • 使用 Blender 場景圖作為原生表示:用戶端將輸出模型與 Blender 場景圖對齊,支持邏輯階層與場景層級編輯工作流程。
  • 模型/LLM 無關的用戶端工作流程:生成框架可透過設定切換 LLM 後端(例如 Claude 3.5、GPT-4o 或 Gemini 1.5 Pro),驗證/執行由流程處理。
  • 整合 Web 視窗編輯器:內建 Three.js 編輯器,具變換工具、對齊與材質編輯。
  • 參考影像引導:讓您附加照片來引導生成腳本的空間邏輯。
  • 瀏覽器內本地快取:模型快取於瀏覽器,即使遠端 URL 過期仍可檢視歷史。

如何使用 Nova3D

  1. 本地執行用戶端:複製儲存庫,安裝依賴(flutter pub get),啟動本地 Web UI。
    • 快速入門註明 port 5555 為 OAuth 重導授權所需
  2. 登入:開啟本地 URL,然後使用 Google 或 Email 登入。
  3. 在設定中新增 API 金鑰:用戶端支援新增 OpenAI、Anthropic 或 Gemini 的 API 金鑰。
  4. 提供輸入並生成:輸入提示(可選附加參考影像)並執行生成流程。
  5. 編輯與檢視結果:使用整合視窗編輯器進行變換/對齊/材質編輯,並依賴本地快取重訪先前生成。

要部署生產建置用於靜態託管,儲存庫包含建置 Flutter Web 應用指令(flutter build web --release)。

使用案例

  • 需階層的工作流程的可編輯資產生成:生成零件具名且有父子的 3D 模型,讓您調整個別元件而不需重新生成完整結果。
  • 提示驅動或照片引導的 3D 構想:使用文字提示或附加參考影像影響生成建構腳本的空間邏輯。
  • PBR 導向材質對映工作流程的材質迭代:處理設計支援材質對映的輸出,而非依賴烘焙頂點顏色。
  • 瀏覽器內快速檢視與調整:使用整合 Three.js 視窗編輯器(變換工具、對齊與材質編輯),無需離開用戶端。
  • 先前生成的本地瀏覽:利用瀏覽器內快取,即使遠端 URL 過期仍保留檢視歷史。

常見問題

  • Nova3D 輸出單一合併網格嗎? 否。流程描述為產生具 可單獨存取零件 的結構化 GLB,由 Blender 原生 Python 腳本生成。

  • 我可以使用不同 LLM 提供者嗎? 是的。用戶端描述為模型無關,設定允許切換後端如 Claude 3.5、GPT-4o 或 Gemini 1.5 Pro

  • 登入需要什麼本地設定? 快速入門註明 port 5555 為 OAuth 重導授權所需,並特別警告使用 localhost:5555 可能因 OAuth 來源政策導致 Google 登入失敗。

  • 用戶端預設將生成請求發送到何處? 預設與託管 nova3d.xyz API 通訊。可透過 --dart-define 設定 API_BASE_URL 指向自訂後端。

  • 有方法用影像影響生成嗎? 是的。用戶端支援 參考影像,讓您附加照片引導生成腳本的空間邏輯。

替代方案

  • 輸出單一合併網格的影像轉 3D 擴散工具:這些工具傾向於產生一個整合的幾何結果,與 Nova3D 的零件感知、可編輯輸出不同。
  • 專注於固體建模的 OpenSCAD/CSG 風格系統:此類方法可能優先流形固體,但會犧牲有機形狀的靈活性以及詳細的階層/材質可編輯性。
  • 提示轉 CAD 或程序化 CAD 工具:若您的主要目標是可編輯的程序化建構,請尋找支援腳本式或參數化工作流程的工具,而非純生成網格輸出。
  • 搭配可匯入程序化結果的獨立 3D 建模/編輯工具:對於已使用 Blender 或其他 DCC 工具的工作流程,您可將 Nova3D 視為生成步驟,然後在建模環境中精煉輸出——不過關鍵差異在於 Nova3D 生成 Blender 原生腳本及零件感知 GLB 結構。