Paket UI-3D yang Nyaman
Jadikan pembuatan aset 3D di ComfyUI bagus dan nyaman karena menghasilkan gambar/video!
Ini adalah rangkaian node ekstensif yang memungkinkan ComfyUI memproses input 3D (Tekstur Mesh & UV, dll.) menggunakan algoritme canggih (3DGS, NeRF, dll.) dan model (InstantMesh, CRM, TripoSR, dll.)
Fitur — Instal — Peta Jalan — Pengembangan — Tips — Pendukung Memasang:
Bisakah diinstal langsung dari ComfyUI-Manager?
- Pra-pembangunan tersedia untuk:
- Windows 10/11, Ubuntu 22.04
- Python 3.10/3.11/3.12
- CUDA 12.1/11.8
- obor 2.3.0+cu121/cu118, penglihatan obor 0.18.0+cu121/cu118
- install.py akan mengunduh & menginstal Pra-bangunan secara otomatis sesuai dengan lingkungan runtime Anda, jika tidak dapat menemukan Pra-bangunan yang sesuai, maka skrip pembangunan akan dimulai secara otomatis, jika pembangunan otomatis tidak berfungsi untuk Anda, silakan periksa Semi -Panduan Pembuatan Otomatis
- Jika Anda memiliki node yang hilang di alur kerja Comfy3D yang terbuka, coba klik Instal Node Kustom yang Hilang di ComfyUI-Manager
- Jika karena alasan tertentu comfort3d Anda tidak dapat mengunduh model terlatih secara otomatis, Anda selalu dapat mengunduhnya secara manual dan memasukkannya ke folder yang benar di bawah direktori Checkpoints, tapi tolong JANGAN menimpa file .json yang ada
- Instal Docker silakan periksa DOCKER_INSTRUCTIONS.md
- Catatan: saat ini, Anda masih perlu menginstal Visual Studio Build Tools untuk windows dan menginstal
gcc g++ untuk Linux agar InstantNGP & Convert 3DGS to Mesh with NeRF and Marching_Cubes berfungsi, karena kedua node tersebut menggunakan JIT torch cpp ekstensi yang dibuat saat runtime, tetapi saya berencana untuk segera mengganti node tersebut
Fitur:
Untuk kasus penggunaan, silakan lihat Contoh Alur Kerja. [ Pembaruan terakhir: 01/Agustus/2024 ]
- Catatan: Anda perlu meletakkan Contoh File & Folder Input di bawah folder ComfyUI Root DirectoryComfyUIinput sebelum Anda dapat menjalankan contoh alur kerja
- Alur kerja difusi berlapis tripoSR oleh @Consumption
StableFast3D : Stabilitas-AI/stable-fast-3d
- Gambar tunggal ke 3D Mesh dengan tekstur RGB
- Catatan: Anda harus menyetujui ketentuan penggunaan Stability-AI sebelum dapat mengunduh bobot model, jika Anda mengunduh bobot model secara manual, maka Anda harus meletakkannya di bawah Checkpoints/StableFast3D, jika tidak, Anda dapat menambahkan token pelukan Anda di Configs/ sistem.conf
- Bobot model: https://huggingface.co/stabilityai/stable-fast-3d/tree/main
2024-08-01.19-21-58.mp4
CharacterGen : zjp-shadow/CharacterGen
- Tampilan depan tunggal dari karakter dengan pose sewenang-wenang
- Dapat digabungkan dengan alur kerja Unique3D untuk hasil yang lebih baik
- Bobot model: https://huggingface.co/zjpshadow/CharacterGen/tree/main
zQ4Kb8kXr7QBxkY5.mp4
Unique3D : AiuniAI/Unique3D
- Pipa empat tahap:
- Gambar tunggal hingga 4 gambar multi-tampilan dengan resolusi: 256X256
- Gambar Multi-tampilan yang Konsisten Kelas atas hingga 512X512, resolusi super hingga 2048X2048
- Gambar multi-tampilan ke peta Normal dengan resolusi: 512X512, resolusi super hingga 2048X2048
- Gambar multi-tampilan & Peta normal ke mesh 3D dengan tekstur
- Untuk menggunakan alur kerja Unique3D Semua tahap, Unduh Model:
- sdv1.5-pruned-emaonly dan letakkan di
Your ComfyUI root directory/ComfyUI/models/checkpoints - sempurnakan ubin controlnet dan masukkan ke
Your ComfyUI root directory/ComfyUI/models/controlnet - ip-adapter_sd15 dan letakkan di
Your ComfyUI root directory/ComfyUI/models/ipadapter - OpenCLIP-ViT-H-14, ubah namanya menjadi OpenCLIP-ViT-H-14.safetensors dan letakkan di
Your ComfyUI root directory/ComfyUI/models/clip_vision - RealESRGAN_x4plus dan letakkan di
Your ComfyUI root directory/ComfyUI/models/upscale_models
- Bobot model: https://huggingface.co/spaces/Wuvin/Unique3D/tree/main/ckpt
2024-06-0711-51-27-ezgif.com-resize-video.mp4
Model Difusi MVD Era3D : pengHTYX/Era3D
- Gambar tunggal hingga 6 gambar multi-tampilan & peta normal dengan resolusi: 512X512
- Catatan: Anda memerlukan setidaknya vram 16GB untuk menjalankan model ini
- Bobot model: https://huggingface.co/pengHTYX/MacLab-Era3D-512-6view/tree/main
2024-06-0711-56-48-ezgif.com-resize-video.mp4
Model Rekonstruksi InstantMesh : TencentARC/InstantMesh
- Gambar multi-tampilan jarang dengan latar belakang putih hingga Mesh 3D dengan tekstur RGB
- Bekerja dengan model MVDiffusion sewenang-wenang (Mungkin berfungsi paling baik dengan Zero123++, tetapi juga berfungsi dengan model CRM MVDiffusion)
- Bobot model: https://huggingface.co/TencentARC/InstantMesh/tree/main
23-05-2024.17-35-22.mp4
23-05-2024.17-32-31.mp4
Zero123++ : SUDO-AI-3D/zero123plus
- Gambar tunggal hingga 6 tampilan gambar dengan resolusi: 320X320
Model Rekonstruksi Konvolusional : kamis-ml/CRM
- Pipa tiga tahap:
- Gambar tunggal hingga 6 tampilan gambar (Depan, Belakang, Kiri, Kanan, Atas & Bawah)
- Gambar tunggal & 6 tampilan gambar hingga 6 tampilan yang sama CCM (Peta Koordinat Kanonik)
- 6 melihat gambar & CCM ke mesh 3D
- Catatan: Untuk pc vram rendah, jika Anda tidak dapat memasukkan ketiga model untuk setiap tahap ke dalam memori GPU, maka Anda dapat membagi ketiga tahap tersebut ke dalam alur kerja nyaman yang berbeda dan menjalankannya secara terpisah
- Bobot model: https://huggingface.co/sudo-ai/zero123plus-v1.2
2024-03-12.22-05-10.mp4
TripoSR : Penelitian-AI-LUAS/TripoSR | UI-Flowty-TripoSR yang Nyaman
- Hasilkan representasi NeRF dan gunakan marching cube untuk mengubahnya menjadi mesh 3D
- Bobot model: https://huggingface.co/stabilityai/TripoSR/tree/main
22-38-36-36-03-2024.mp4
Wonder3D : xxlong0/Wonder3D
- Hasilkan gambar 6 tampilan & peta normal yang konsisten secara spasial dari satu gambar
- Bobot model: https://huggingface.co/flamehaze1115/wonder3d-v1.0/tree/main

Model Gaussian Multiview Besar : 3DTopia/LGM
- Aktifkan gambar tunggal ke 3D Gaussian dalam waktu kurang dari 30 detik pada GPU RTX3080, nanti Anda juga dapat mengonversi 3D Gaussian ke mesh
- Bobot model: https://huggingface.co/ashawkey/LGM/tree/main
23-36-31-08-2024.mp4
Transformator Gaussian Triplane : Penelitian VAST-AI/TriplaneGaussian
- Aktifkan gambar tunggal ke 3D Gaussian dalam waktu kurang dari 10 detik pada GPU RTX3080, nanti Anda juga dapat mengonversi 3D Gaussian ke mesh
- Bobot model: https://huggingface.co/VAST-AI/TriplaneGaussian/tree/main
23-57-37-08-2024.mp4
Pratinjau 3DGS dan 3D Mesh : Visualisasi 3D di dalam ComfyUI:
- Menggunakan gsplat.js dan three.js masing-masing untuk visualisasi 3DGS & 3D Mesh
- Latar belakang yang dapat disesuaikan berdasarkan perpustakaan JS: mdbassit/Coloris
2024-02-04.19-20-17.mp4
Pose Kamera Stack Orbit : Secara otomatis menghasilkan semua kombinasi pose kamera
Anda dapat menggunakannya untuk mengkondisikan StableZero123 (Anda harus mengunduh pos pemeriksaan terlebih dahulu), dengan berbagai pose kamera dalam satu prompt pass
Anda dapat menggunakannya untuk menghasilkan pose kamera orbit dan langsung memasukkan ke node proses 3D lainnya (misalnya GaussianSplatting dan BakeTextureToMesh)
Contoh penggunaan:




Sistem koordinat:
- Azimuth: Pada tampilan atas, dari sudut 0 putar 360 derajat dengan langkah -90 Anda mendapatkan (0, -90, -180/180, 90, 0), dalam hal ini kamera berputar searah jarum jam, dan sebaliknya.
- Ketinggian: 0 saat kamera menunjuk ke depan secara horizontal, menunjuk ke bawah ke tanah adalah sudut negatif, dan sebaliknya.
FlexiCubes : nv-tlabs/FlexiCubes
- Kedalaman & topeng Multi-Tampilan (peta normal opsional) sebagai masukan
- Ekspor ke Jaring 3D
- Panduan penggunaan:
- voxel_grids_solving : menentukan resolusi/kualitas mesh
- depth_min_distance depth_max_distance : jarak dari objek ke kamera, bagian objek dalam render yang lebih dekat (lebih jauh) ke kamera daripada depth_min_distance (kedalaman_max_distance) akan dirender dengan nilai RGB putih murni (hitam) 1, 1, 1 (0, 0, 0)
- mask_loss_weight : Mengontrol siluet jaring 3D yang direkonstruksi
- depth_loss_weight : Mengontrol bentuk mesh 3D yang direkonstruksi, kehilangan ini juga akan mempengaruhi detail deformasi mesh pada permukaan, sehingga hasilnya bergantung pada kualitas peta kedalaman
- normal_loss_weight : Opsional. Gunakan untuk memperhalus detail deformasi jaring pada permukaan
- sdf_regularizer_weight : Membantu menghilangkan floater di area bentuk yang tidak diawasi oleh tujuan aplikasi, seperti permukaan bagian dalam saat hanya menggunakan pengawasan gambar
- delete_floaters_weight : Ini dapat ditingkatkan jika Anda mengamati artefak di area datar
- cube_stabilizer_weight : Ini tidak memiliki dampak yang signifikan selama optimalisasi satu bentuk, namun membantu menstabilkan pelatihan dalam beberapa kasus
24-04-2024.mp4
NGP instan : nerfacc
- Gambar multi-Tampilan sebagai masukan
- Ekspor ke 3D Mesh menggunakan kubus berbaris
Percikan Gaussian 3D
- Peningkatan Rasterisasi Gaussian Diferensial
- Metode Densifikasi berbasis Kekompakan yang lebih baik dari Gsgen,
- Mendukung inisialisasi gaussians dari mesh 3D yang diberikan (Opsional)
- Mendukung optimasi mini-batch
- Gambar multi-Tampilan sebagai masukan
- Ekspor ke format .ply 3DGS standar didukung
Perender Orbit Percikan Gaussian
- Render 3DGS ke urutan gambar atau video, dengan file 3DGS dan pose kamera yang dihasilkan oleh node Stack Orbit Camera Poses
Perender Orbit Jaring
- Render mesh 3D ke urutan gambar atau video, dengan file mesh dan pose kamera yang dihasilkan oleh node Stack Orbit Camera Poses
Fitting_Mesh_With_Multiview_Images
- Panggang gambar Multi-Tampilan ke dalam UVTexture dari mesh 3D tertentu menggunakan Nvdiffrast, mendukung:
- Ekspor ke .obj, .ply, .glb
Simpan & Muat file 3D
- .obj, .ply, .glb untuk Jaring 3D
- .ply untuk 3DGS
Ganti Sumbu untuk 3DGS & Mesh 3D
- Karena algoritma yang berbeda kemungkinan besar menggunakan sistem koordinat yang berbeda, maka kemampuan untuk memetakan kembali sumbu koordinat sangat penting untuk meneruskan hasil yang dihasilkan antar node yang berbeda.
File konfigurasi sistem yang dapat disesuaikan
- Alamat IP klien khusus
- Tambahkan token pengguna pelukan Anda
Peta jalan:
Perkembangan
Bagaimana Berkontribusi
- Garpu proyeknya
- Lakukan Perbaikan/Tambahkan Fitur Baru
- Membuat Permintaan Tarik ke cabang dev
Struktur Proyek
node.py :
Berisi kode antarmuka untuk semua node Comfy3D (yaitu node yang sebenarnya dapat Anda lihat & gunakan di dalam ComfyUI), Anda dapat menambahkan node baru di sini
Gen_3D_Modul :
Folder yang berisi kode untuk semua model/sistem generatif (misalnya model difusi multi-tampilan, model rekonstruksi 3D). Modul generatif 3D baru harus ditambahkan di sini
MVs_Algoritma :
Folder yang berisi kode untuk semua algoritma stereo multi-tampilan, yaitu algoritma (misalnya Gaussian Splatting, NeRF dan FlexiCubes) yang mengambil gambar multi-tampilan dan mengubahnya menjadi representasi 3D (misalnya Gaussians, MLP atau Mesh). Algoritma MVS baru harus ditambahkan di sini
web :
Folder yang berisi file & kode (html, js, css) untuk semua hal yang terkait dengan UI browser (misalnya tata letak html, gaya, dan logika inti untuk pratinjau 3D Mesh & Gaussians). UI web baru harus ditambahkan di sini
server web :
Folder yang berisi kode untuk berkomunikasi dengan browser, yaitu menangani permintaan klien web (misalnya Mengirim 3D Mesh ke klien ketika diminta dengan rute url tertentu). Fungsi terkait server web baru harus ditambahkan di sini
Konfigurasi :
Folder yang berisi file konfigurasi berbeda untuk modul berbeda, konfigurasi baru harus ditambahkan di sini, gunakan sub folder jika ada lebih dari satu konfigurasi ke satu modul (misalnya Unique3D, CRM)
Pos pemeriksaan :
Folder yang berisi semua model terlatih dan beberapa file konfigurasi arsitektur model yang diperlukan oleh diffuser, Pos pemeriksaan baru jika dapat diunduh secara otomatis oleh node Load_Diffusers Pipeline , maka harus ditambahkan di sini
install.py :
Skrip instalasi utama, akan mengunduh & menginstal Pra-build secara otomatis sesuai dengan lingkungan runtime Anda, jika tidak dapat menemukan Pra-build yang sesuai, maka skrip build akan dimulai secara otomatis, dipanggil oleh ComfyUI-Manager tepat setelah menginstal dependensi yang tercantum dalam persyaratan .txt menggunakan pip
Jika modul baru yang Anda coba tambahkan memerlukan beberapa paket tambahan yang tidak dapat ditambahkan begitu saja ke dalam persyaratan.txt dan build_config.remote_packages, maka Anda dapat mencoba menambahkannya dengan memodifikasi skrip ini
_Pra_Pembangunan :
Folder yang berisi file & kode untuk membangun semua dependensi yang diperlukan, jika Anda ingin membuat beberapa dependensi tambahan terlebih dahulu, silakan periksa _Pre_Builds/README.md untuk informasi lebih lanjut
Kiat
- Sistem koordinat dunia & kamera OpenGL (Three.js, Blender):
World Camera
+y up target
| | /
| | /
|______+x |/______right
/ /
/ /
/ /
+z forward
z-axis is pointing towards you and is coming out of the screen
elevation: in (-90, 90), from +y to +x is (-90, 0)
azimuth: in (-180, 180), from +z to +x is (0, 90)
- Jika Anda menemukan kesalahan OpenGL (misalnya,
[F glutil.cpp:338] eglInitialize() failed ), setel force_cuda_rasterize ke true pada node yang sesuai - Jika setelah instalasi, ComfyUI Anda macet saat memulai atau berjalan, Anda dapat mengikuti petunjuk di tautan berikut untuk mengatasi masalah tersebut: Kode Hang Tanpa Batas Saat Mengevaluasi Model Neuron di GPU
Pendukung