ComfyPilotComfyPilot
工作流 / 3D 模型 / Rodin:多视角到模型
Rodin:多视角到模型

Rodin:多视角到模型

Rodin: Multiview to Model

使用Rodin的多角度重建雕刻全面的3D模型。

3D 模型 14 个节点 3 个输入 13 次使用 ComfyUI ≥ 0.23.0 ComfyUI 15 KB

下载工作流 JSON 查看官方来源

下载后把文件拖进 ComfyUI 窗口即可打开。

节点构成

Preview3D × 4
LoadImage × 3
MarkdownNote × 2
Rodin3D_Regular × 1
Rodin3D_Sketch × 1
Rodin3D_Detail × 1
Rodin3D_Smooth × 1
BatchImagesNode × 1

官方标注的模型

Rodin

工作流 JSON

和上面「下载工作流 JSON」是同一份文件。

1{
2 "id": "cb4a348c-918b-42f8-b0a9-ff75063a3171",
3 "revision": 0,
4 "last_node_id": 66,
5 "last_link_id": 91,
6 "nodes": [
7 {
8 "id": 28,
9 "type": "Rodin3D_Regular",
10 "pos": [
11 -1450,
12 790
13 ],
14 "size": [
15 344.2574157714844,
16 126
17 ],
18 "flags": [],
19 "order": 6,
20 "mode": 0,
21 "inputs": [
22 {
23 "name": "Images",
24 "type": "IMAGE",
25 "link": 85
26 }
27 ],
28 "outputs": [
29 {
30 "name": "3D Model Path",
31 "type": "STRING",
32 "links": [
33 76
34 ]
35 },
36 {
37 "name": "GLB",
38 "type": "FILE_3D_GLB",
39 "links": null
40 }
41 ],
42 "properties": {
43 "cnr_id": "comfy-core",
44 "ver": "0.16.3",
45 "Node name for S&R": "Rodin3D_Regular"
46 },
47 "widgets_values": [
48 0,
49 "PBR",
50 "200K-Triangle"
51 ],
52 "color": "#432",
53 "bgcolor": "#653"
54 },
55 {
56 "id": 31,
57 "type": "Rodin3D_Sketch",
58 "pos": [
59 -515.5814819335938,
60 852.9099731445312
61 ],
62 "size": [
63 354.0360107421875,
64 78
65 ],
66 "flags": {
67 "collapsed": false
68 },
69 "order": 7,
70 "mode": 4,
71 "inputs": [
72 {
73 "name": "Images",
74 "type": "IMAGE",
75 "link": 86
76 }
77 ],
78 "outputs": [
79 {
80 "name": "3D Model Path",
81 "type": "STRING",
82 "links": [
83 77
84 ]
85 },
86 {
87 "name": "GLB",
88 "type": "FILE_3D_GLB",
89 "links": null
90 }
91 ],
92 "properties": {
93 "cnr_id": "comfy-core",
94 "ver": "0.16.3",
95 "Node name for S&R": "Rodin3D_Sketch"
96 },
97 "widgets_values": [
98 0
99 ],
100 "color": "#432",
101 "bgcolor": "#653"
102 },
103 {
104 "id": 29,
105 "type": "Rodin3D_Detail",
106 "pos": [
107 414.8179626464844,
108 820.849365234375
109 ],
110 "size": [
111 350.0273742675781,
112 126
113 ],
114 "flags": [],
115 "order": 8,
116 "mode": 4,
117 "inputs": [
118 {
119 "name": "Images",
120 "type": "IMAGE",
121 "link": 87
122 }
123 ],
124 "outputs": [
125 {
126 "name": "3D Model Path",
127 "type": "STRING",
128 "links": [
129 78
130 ]
131 },
132 {
133 "name": "GLB",
134 "type": "FILE_3D_GLB",
135 "links": null
136 }
137 ],
138 "properties": {
139 "cnr_id": "comfy-core",
140 "ver": "0.16.3",
141 "Node name for S&R": "Rodin3D_Detail"
142 },
143 "widgets_values": [
144 0,
145 "PBR",
146 "200K-Triangle"
147 ],
148 "color": "#432",
149 "bgcolor": "#653"
150 },
151 {
152 "id": 30,
153 "type": "Rodin3D_Smooth",
154 "pos": [
155 1329.1629638671875,
156 817.242431640625
157 ],
158 "size": [
159 343.4781188964844,
160 126
161 ],
162 "flags": [],
163 "order": 9,
164 "mode": 4,
165 "inputs": [
166 {
167 "name": "Images",
168 "type": "IMAGE",
169 "link": 88
170 }
171 ],
172 "outputs": [
173 {
174 "name": "3D Model Path",
175 "type": "STRING",
176 "links": [
177 79
178 ]
179 },
180 {
181 "name": "GLB",
182 "type": "FILE_3D_GLB",
183 "links": null
184 }
185 ],
186 "properties": {
187 "cnr_id": "comfy-core",
188 "ver": "0.16.3",
189 "Node name for S&R": "Rodin3D_Smooth"
190 },
191 "widgets_values": [
192 0,
193 "PBR",
194 "18K-Quad"
195 ],
196 "color": "#432",
197 "bgcolor": "#653"
198 },
199 {
200 "id": 61,
201 "type": "Preview3D",
202 "pos": [
203 -1450,
204 1010
205 ],
206 "size": [
207 880,
208 890
209 ],
210 "flags": [],
211 "order": 10,
212 "mode": 0,
213 "inputs": [
214 {
215 "name": "camera_info",
216 "shape": 7,
217 "type": "LOAD3D_CAMERA",
218 "link": null
219 },
220 {
221 "name": "bg_image",
222 "shape": 7,
223 "type": "IMAGE",
224 "link": null
225 },
226 {
227 "name": "model_file",
228 "type": "STRING,FILE_3D_GLB,FILE_3D_GLTF,FILE_3D_FBX,FILE_3D_OBJ,FILE_3D_STL,FILE_3D_USDZ,FILE_3D",
229 "widget": {
230 "name": "model_file"
231 },
232 "link": 76
233 }
234 ],
235 "outputs": [],
236 "properties": {
237 "cnr_id": "comfy-core",
238 "ver": "0.16.3",
239 "Node name for S&R": "Preview3D",
240 "Camera Info": {
241 "position": {
242 "x": 11.03239568636369,
243 "y": 8.456373444977656,
244 "z": 10.926875233905411
245 },
246 "target": {
247 "x": 0.8376348237561921,
248 "y": -1.626927518917234,
249 "z": 0.7747451027796011
250 },
251 "zoom": 1,
252 "cameraType": "perspective"
253 },
254 "Camera Config": {
255 "cameraType": "perspective",
256 "fov": 75,
257 "state": {
258 "position": {
259 "x": 13.026294483786712,
260 "y": 13.02629448378672,
261 "z": 13.026294483786714
262 },
263 "target": {
264 "x": 0,
265 "y": 0,
266 "z": 0
267 },
268 "zoom": 1,
269 "cameraType": "perspective"
270 }
271 }
272 },
273 "widgets_values": [
274 "",
275 ""
276 ]
277 },
278 {
279 "id": 62,
280 "type": "Preview3D",
281 "pos": [
282 -520,
283 1010
284 ],
285 "size": [
286 880,
287 890
288 ],
289 "flags": [],
290 "order": 11,
291 "mode": 4,
292 "inputs": [
293 {
294 "name": "camera_info",
295 "shape": 7,
296 "type": "LOAD3D_CAMERA",
297 "link": null
298 },
299 {
300 "name": "bg_image",
301 "shape": 7,
302 "type": "IMAGE",
303 "link": null
304 },
305 {
306 "name": "model_file",
307 "type": "STRING,FILE_3D_GLB,FILE_3D_GLTF,FILE_3D_FBX,FILE_3D_OBJ,FILE_3D_STL,FILE_3D_USDZ,FILE_3D",
308 "widget": {
309 "name": "model_file"
310 },
311 "link": 77
312 }
313 ],
314 "outputs": [],
315 "properties": {
316 "cnr_id": "comfy-core",
317 "ver": "0.16.3",
318 "Node name for S&R": "Preview3D",
319 "Camera Info": {
320 "position": {
321 "x": 9.813967365636135,
322 "y": 9.729089769464995,
323 "z": 9.813967365636136
324 },
325 "target": {
326 "x": 0,
327 "y": 0,
328 "z": 0
329 },
330 "zoom": 1,
331 "cameraType": "perspective"
332 }
333 },
334 "widgets_values": [
335 "",
336 ""
337 ]
338 },
339 {
340 "id": 63,
341 "type": "Preview3D",
342 "pos": [
343 410,
344 1010
345 ],
346 "size": [
347 880,
348 890
349 ],
350 "flags": [],
351 "order": 12,
352 "mode": 4,
353 "inputs": [
354 {
355 "name": "camera_info",
356 "shape": 7,
357 "type": "LOAD3D_CAMERA",
358 "link": null
359 },
360 {
361 "name": "bg_image",
362 "shape": 7,
363 "type": "IMAGE",
364 "link": null
365 },
366 {
367 "name": "model_file",
368 "type": "STRING,FILE_3D_GLB,FILE_3D_GLTF,FILE_3D_FBX,FILE_3D_OBJ,FILE_3D_STL,FILE_3D_USDZ,FILE_3D",
369 "widget": {
370 "name": "model_file"
371 },
372 "link": 78
373 }
374 ],
375 "outputs": [],
376 "properties": {
377 "cnr_id": "comfy-core",
378 "ver": "0.16.3",
379 "Node name for S&R": "Preview3D",
380 "Camera Info": {
381 "position": {
382 "x": 10,
383 "y": 10,
384 "z": 10.000000000000002
385 },
386 "target": {
387 "x": 0,
388 "y": 0,
389 "z": 0
390 },
391 "zoom": 1,
392 "cameraType": "perspective"
393 }
394 },
395 "widgets_values": [
396 "",
397 ""
398 ]
399 },
400 {
401 "id": 64,
402 "type": "Preview3D",
403 "pos": [
404 1330,
405 1010
406 ],
407 "size": [
408 880,
409 890
410 ],
411 "flags": [],
412 "order": 13,
413 "mode": 4,
414 "inputs": [
415 {
416 "name": "camera_info",
417 "shape": 7,
418 "type": "LOAD3D_CAMERA",
419 "link": null
420 },
421 {
422 "name": "bg_image",
423 "shape": 7,
424 "type": "IMAGE",
425 "link": null
426 },
427 {
428 "name": "model_file",
429 "type": "STRING,FILE_3D_GLB,FILE_3D_GLTF,FILE_3D_FBX,FILE_3D_OBJ,FILE_3D_STL,FILE_3D_USDZ,FILE_3D",
430 "widget": {
431 "name": "model_file"
432 },
433 "link": 79
434 }
435 ],
436 "outputs": [],
437 "properties": {
438 "cnr_id": "comfy-core",
439 "ver": "0.16.3",
440 "Node name for S&R": "Preview3D",
441 "Camera Info": {
442 "position": {
443 "x": 10.006805043682935,
444 "y": 9.986376001104885,
445 "z": 10.006805043682936
446 },
447 "target": {
448 "x": 0,
449 "y": 0,
450 "z": 0
451 },
452 "zoom": 1,
453 "cameraType": "perspective"
454 }
455 },
456 "widgets_values": [
457 "",
458 ""
459 ]
460 },
461 {
462 "id": 60,
463 "type": "MarkdownNote",
464 "pos": [
465 -510,
466 670
467 ],
468 "size": [
469 360,
470 130
471 ],
472 "flags": [],
473 "order": 0,
474 "mode": 0,
475 "inputs": [],
476 "outputs": [],
477 "properties": [],
478 "widgets_values": [
479 "Rodin provides model generation APIs with different levels of precision. You can set the corresponding nodes to the \"always\" mode according to your requirements. \n"
480 ],
481 "color": "#222",
482 "bgcolor": "#000"
483 },
484 {
485 "id": 40,
486 "type": "LoadImage",
487 "pos": [
488 -2360,
489 1140
490 ],
491 "size": [
492 274.080078125,
493 314.00006103515625
494 ],
495 "flags": [],
496 "order": 1,
497 "mode": 0,
498 "inputs": [],
499 "outputs": [
500 {
501 "name": "IMAGE",
502 "type": "IMAGE",
503 "links": [
504 90
505 ]
506 },
507 {
508 "name": "MASK",
509 "type": "MASK",
510 "links": null
511 }
512 ],
513 "properties": {
514 "cnr_id": "comfy-core",
515 "ver": "0.16.3",
516 "Node name for S&R": "LoadImage"
517 },
518 "widgets_values": [
519 "api_rodin_multiview_to_model_left.jpg",
520 "image"
521 ]
522 },
523 {
524 "id": 56,
525 "type": "LoadImage",
526 "pos": [
527 -2360,
528 1520
529 ],
530 "size": [
531 274.080078125,
532 314
533 ],
534 "flags": [],
535 "order": 2,
536 "mode": 0,
537 "inputs": [],
538 "outputs": [
539 {
540 "name": "IMAGE",
541 "type": "IMAGE",
542 "links": [
543 91
544 ]
545 },
546 {
547 "name": "MASK",
548 "type": "MASK",
549 "links": null
550 }
551 ],
552 "properties": {
553 "cnr_id": "comfy-core",
554 "ver": "0.16.3",
555 "Node name for S&R": "LoadImage"
556 },
557 "widgets_values": [
558 "api_rodin_multiview_to_model_back.jpg",
559 "image"
560 ]
561 },
562 {
563 "id": 66,
564 "type": "BatchImagesNode",
565 "pos": [
566 -1860,
567 840
568 ],
569 "size": [
570 169.32421875,
571 86
572 ],
573 "flags": [],
574 "order": 5,
575 "mode": 0,
576 "inputs": [
577 {
578 "label": "image0",
579 "name": "images.image0",
580 "type": "IMAGE",
581 "link": 89
582 },
583 {
584 "label": "image1",
585 "name": "images.image1",
586 "type": "IMAGE",
587 "link": 90
588 },
589 {
590 "label": "image2",
591 "name": "images.image2",
592 "shape": 7,
593 "type": "IMAGE",
594 "link": 91
595 },
596 {
597 "label": "image3",
598 "name": "images.image3",
599 "shape": 7,
600 "type": "IMAGE",
601 "link": null
602 }
603 ],
604 "outputs": [
605 {
606 "name": "IMAGE",
607 "type": "IMAGE",
608 "links": [
609 85,
610 86,
611 87,
612 88
613 ]
614 }
615 ],
616 "properties": {
617 "cnr_id": "comfy-core",
618 "ver": "0.16.3",
619 "Node name for S&R": "BatchImagesNode"
620 }
621 },
622 {
623 "id": 41,
624 "type": "LoadImage",
625 "pos": [
626 -2360,
627 750
628 ],
629 "size": [
630 274.080078125,
631 314.00006103515625
632 ],
633 "flags": [],
634 "order": 3,
635 "mode": 0,
636 "inputs": [],
637 "outputs": [
638 {
639 "name": "IMAGE",
640 "type": "IMAGE",
641 "links": [
642 89
643 ]
644 },
645 {
646 "name": "MASK",
647 "type": "MASK",
648 "links": null
649 }
650 ],
651 "properties": {
652 "cnr_id": "comfy-core",
653 "ver": "0.16.3",
654 "Node name for S&R": "LoadImage"
655 },
656 "widgets_values": [
657 "api_rodin_multiview_to_model_front.jpg",
658 "image"
659 ]
660 },
661 {
662 "id": 48,
663 "type": "MarkdownNote",
664 "pos": [
665 -1450,
666 1970
667 ],
668 "size": [
669 409.3424987792969,
670 141.7489013671875
671 ],
672 "flags": [],
673 "order": 4,
674 "mode": 0,
675 "inputs": [],
676 "outputs": [],
677 "title": "File location",
678 "properties": [],
679 "widgets_values": [
680 "Output model will be auto saved to \"ComfyUI/output/Rodin3D\"\n\nOr you can use the export function in the preview 3D node to download it.\n"
681 ],
682 "color": "#222",
683 "bgcolor": "#000"
684 }
685 ],
686 "links": [
687 [
688 76,
689 28,
690 0,
691 61,
692 2,
693 "STRING"
694 ],
695 [
696 77,
697 31,
698 0,
699 62,
700 2,
701 "STRING"
702 ],
703 [
704 78,
705 29,
706 0,
707 63,
708 2,
709 "STRING"
710 ],
711 [
712 79,
713 30,
714 0,
715 64,
716 2,
717 "STRING"
718 ],
719 [
720 85,
721 66,
722 0,
723 28,
724 0,
725 "IMAGE"
726 ],
727 [
728 86,
729 66,
730 0,
731 31,
732 0,
733 "IMAGE"
734 ],
735 [
736 87,
737 66,
738 0,
739 29,
740 0,
741 "IMAGE"
742 ],
743 [
744 88,
745 66,
746 0,
747 30,
748 0,
749 "IMAGE"
750 ],
751 [
752 89,
753 41,
754 0,
755 66,
756 0,
757 "IMAGE"
758 ],
759 [
760 90,
761 40,
762 0,
763 66,
764 1,
765 "IMAGE"
766 ],
767 [
768 91,
769 56,
770 0,
771 66,
772 2,
773 "IMAGE"
774 ]
775 ],
776 "groups": [
777 {
778 "id": 2,
779 "title": "Up to 5",
780 "bounding": [
781 -1920,
782 740,
783 310,
784 280
785 ],
786 "color": "#3f789e",
787 "font_size": 24,
788 "flags": []
789 }
790 ],
791 "config": [],
792 "extra": {
793 "ds": {
794 "scale": 0.3701513198637743,
795 "offset": [
796 3732.4032484190643,
797 48.589868577343054
798 ]
799 },
800 "frontendVersion": "1.39.19",
801 "workflowRendererVersion": "LG",
802 "VHS_latentpreview": false,
803 "VHS_latentpreviewrate": 0,
804 "VHS_MetadataImage": true,
805 "VHS_KeepIntermediate": true
806 },
807 "version": 0.4
808}