3D Model Texturing Made Easy
3D Model Texturing Made Easy
[FULL GUIDE]
᛫
Jun 10, 2025
᛫
by Mickmumpitz

This step-by-step guide shows you how to turn a GLB 3D model into textures using a smart, automated workflow. It’s perfect for generating a large number of variations—quickly and with precise control. Whether you're experimenting with styles, iterating on ideas, or producing consistent outputs at scale, this process helps you stay flexible without the need for manual texture painting.
Ideal for 3D artists, designers, and creators, it offers a fast and intuitive way to explore texture possibilities without sacrificing control.

This step-by-step guide shows you how to turn a GLB 3D model into textures using a smart, automated workflow. It’s perfect for generating a large number of variations—quickly and with precise control. Whether you're experimenting with styles, iterating on ideas, or producing consistent outputs at scale, this process helps you stay flexible without the need for manual texture painting.
Ideal for 3D artists, designers, and creators, it offers a fast and intuitive way to explore texture possibilities without sacrificing control.
🎨 Workflow Sections
🟨 Important Notes
⬜ Input / Output / Model Loaders
🟩 Prompt / Image Generation
🟪 Image Processing
🟥 Latent / Sampling
🟧 Texture Processing

Installation
Download the .json file and drag and drop it into your ComfyUI window.
Install the missing custom nodes via the manager and restart ComfyUI.
Hunyuan3DWrapper Installation
Currently the Hunyuan3DWrapper has a bug when installing with the ComyUI Manager.
In your custom_nodes folder under ComfyUI_windows_portable\ComfyUI\custom_nodes you can see that it has a typo, which causes issues at later steps.
The folder is incorrectly named comfyui-hunyan3dwrapper — note the missing “u” in “hunyuan”.

Correcting the folder name to “comfyui-hunyuan3dwrapper” will solve this issue.

After that you need to run 2 commands to finish the installation. For that run cmd from the address bar in your ComfyUI_windows_portable folder to start a terminal session directly in that folder.

In there you can run two commands to complete the Hunyuan3DWrapper installation.
First run this command:python_embeded\python.exe -m pip install -r ComfyUI\custom_nodes\ComfyUI-Hunyuan3DWrapper\requirements.txt
Then run this command:python_embeded\python.exe -m pip install ComfyUI\custom_nodes\ComfyUI-Hunyuan3DWrapper\wheels\custom_rasterizer-0.1.0+torch260.cuda126-cp312-cp312-win_amd64.whl
Now restart ComfyUI and the installation should be completed!
Download Models
controlnet-promax
Install via Model Manager.
Search for:
controlnet promax and install → xinsir/ControlNet++: All-in-one ControlNet (ProMax model)
juggernautXL_juggXIByRundiffusion:
https://huggingface.co/misri/juggernautXL_juggXIByRundiffusion/blob/main/juggernautXL_juggXIByRundiffusion.safetensors
📁 ComfyUI/models/checkpoints
Any SDXL model will work, don't forget to adjust the sampler settings!
4x-ClearRealityV1.pth*:
https://huggingface.co/skbhadra/ClearRealityV1/blob/main/4x-ClearRealityV1.pth
📁 ComfyUI/models/upscale_models
You can use other upscaling models here too.
face_yolov8m.pt:
Install via Model Manager.
Search for: face_yolov8m
🎨 Workflow Sections
🟨 Important Notes
⬜ Input / Output / Model Loaders
🟩 Prompt / Image Generation
🟪 Image Processing
🟥 Latent / Sampling
🟧 Texture Processing

Installation
Download the .json file and drag and drop it into your ComfyUI window.
Install the missing custom nodes via the manager and restart ComfyUI.
Hunyuan3DWrapper Installation
Currently the Hunyuan3DWrapper has a bug when installing with the ComyUI Manager.
In your custom_nodes folder under ComfyUI_windows_portable\ComfyUI\custom_nodes you can see that it has a typo, which causes issues at later steps.
The folder is incorrectly named comfyui-hunyan3dwrapper — note the missing “u” in “hunyuan”.

Correcting the folder name to “comfyui-hunyuan3dwrapper” will solve this issue.

After that you need to run 2 commands to finish the installation. For that run cmd from the address bar in your ComfyUI_windows_portable folder to start a terminal session directly in that folder.

In there you can run two commands to complete the Hunyuan3DWrapper installation.
First run this command:python_embeded\python.exe -m pip install -r ComfyUI\custom_nodes\ComfyUI-Hunyuan3DWrapper\requirements.txt
Then run this command:python_embeded\python.exe -m pip install ComfyUI\custom_nodes\ComfyUI-Hunyuan3DWrapper\wheels\custom_rasterizer-0.1.0+torch260.cuda126-cp312-cp312-win_amd64.whl
Now restart ComfyUI and the installation should be completed!
Download Models
controlnet-promax
Install via Model Manager.
Search for:
controlnet promax and install → xinsir/ControlNet++: All-in-one ControlNet (ProMax model)
juggernautXL_juggXIByRundiffusion:
https://huggingface.co/misri/juggernautXL_juggXIByRundiffusion/blob/main/juggernautXL_juggXIByRundiffusion.safetensors
📁 ComfyUI/models/checkpoints
Any SDXL model will work, don't forget to adjust the sampler settings!
4x-ClearRealityV1.pth*:
https://huggingface.co/skbhadra/ClearRealityV1/blob/main/4x-ClearRealityV1.pth
📁 ComfyUI/models/upscale_models
You can use other upscaling models here too.
face_yolov8m.pt:
Install via Model Manager.
Search for: face_yolov8m
You can find the WORKFLOWS & EXAMPLE FILES here:
Before You Begin: Thank you for considering supporting us! Since these workflows can be complex, we recommend testing the free versions first to ensure compatibility with your system. We cannot guarantee full compatibility with every system that's why we always provide the main functionalities for free! Please take a moment to read through the entire guide. If you encounter any issues:
|
1. Insert Your 3D Model
Start by uploading your model in GLB format in the “Hy3D Upload Mesh” Node.
At the bottom of the interface, the "Hy3D Mesh UV Wrap" node is off by default for models that already have UVs. If your model doesn't already have UVs enable this node to auto-generate UV coordinates.
Once done, your model will appear in the 3D preview window.

2. Render Textures
This section generates multiple views of the 3D model for consistent image generation later in the workflow.
Next, set the texture resolution in the Hy3D Render MultiView node by adjusting the texture_size
parameter. A resolution of 2048 pixels typically strikes a good balance between quality and performance, but for higher detail, 4096 pixels can be used.
On the right-hand side of the screen, you'll see preview images showing position maps and depth maps. For the upcoming image generation, the depth map will be used.

3. Selecting the Main View
Now choose the main view for your model. This view serves as the primary reference for creating consistent textures. For humanoid models, the front view—usually value 1
—is ideal. For horizontally oriented models like dinosaurs, a side view might capture the geometry better. Set the corresponding view value to proceed.

4. Generating the Image for the Main View
With your main view selected, it's time to generate an image. Use the prompt field to describe how you'd like the texture to appear. If the result isn't quite right, tweak the seed value in the case sampler to generate variations. Repeat until you're satisfied with the appearance.

5. Removing the Background
This step is automated—no input required. The section replaces the image background with a clean white fill, ensuring a neutral and consistent base for the final texture.

6. Delighting the Image
To neutralize lighting on the image, this section delights the generated image. This often reduces fine details, so a blending operation reintroduces them. By default, a blend value of 0.5 is applied, which you can adjust to fine-tune the balance between the original image and the de-lit version.

7. Texture Sampling
In this step, additional views of your model are generated using the main view as a style and detail reference. This ensures texture consistency across all angles, helping to produce a seamless and visually coherent final texture.

8. Upscaling and Face Fix
Here, all sampled images are upscaled to enhance resolution and sharpness. Be sure to revisit the prompt in the upscaling module to specify how the final texture should appear. Optionally, enable the face detailer to refine facial features—particularly useful for character models. If your model doesn’t have a face, you can disable the nodes.

9. Finalizing the Textures
In the final stage, your textures are exported. You’ll receive:
A fully inpainted texture file, with any gaps intelligently filled in
A normal map
With these two files, your 3D model is ready for use in games, renderings, or real-time engines.

10. Final Texture Preview
At the end you should see a preview of your texture!

1. Insert Your 3D Model
Start by uploading your model in GLB format in the “Hy3D Upload Mesh” Node.
At the bottom of the interface, the "Hy3D Mesh UV Wrap" node is off by default for models that already have UVs. If your model doesn't already have UVs enable this node to auto-generate UV coordinates.
Once done, your model will appear in the 3D preview window.

2. Render Textures
This section generates multiple views of the 3D model for consistent image generation later in the workflow.
Next, set the texture resolution in the Hy3D Render MultiView node by adjusting the texture_size
parameter. A resolution of 2048 pixels typically strikes a good balance between quality and performance, but for higher detail, 4096 pixels can be used.
On the right-hand side of the screen, you'll see preview images showing position maps and depth maps. For the upcoming image generation, the depth map will be used.

3. Selecting the Main View
Now choose the main view for your model. This view serves as the primary reference for creating consistent textures. For humanoid models, the front view—usually value 1
—is ideal. For horizontally oriented models like dinosaurs, a side view might capture the geometry better. Set the corresponding view value to proceed.

4. Generating the Image for the Main View
With your main view selected, it's time to generate an image. Use the prompt field to describe how you'd like the texture to appear. If the result isn't quite right, tweak the seed value in the case sampler to generate variations. Repeat until you're satisfied with the appearance.

5. Removing the Background
This step is automated—no input required. The section replaces the image background with a clean white fill, ensuring a neutral and consistent base for the final texture.

6. Delighting the Image
To neutralize lighting on the image, this section delights the generated image. This often reduces fine details, so a blending operation reintroduces them. By default, a blend value of 0.5 is applied, which you can adjust to fine-tune the balance between the original image and the de-lit version.

7. Texture Sampling
In this step, additional views of your model are generated using the main view as a style and detail reference. This ensures texture consistency across all angles, helping to produce a seamless and visually coherent final texture.

8. Upscaling and Face Fix
Here, all sampled images are upscaled to enhance resolution and sharpness. Be sure to revisit the prompt in the upscaling module to specify how the final texture should appear. Optionally, enable the face detailer to refine facial features—particularly useful for character models. If your model doesn’t have a face, you can disable the nodes.

9. Finalizing the Textures
In the final stage, your textures are exported. You’ll receive:
A fully inpainted texture file, with any gaps intelligently filled in
A normal map
With these two files, your 3D model is ready for use in games, renderings, or real-time engines.

10. Final Texture Preview
At the end you should see a preview of your texture!

© 2025 Mickmumpitz
© 2025 Mickmumpitz
© 2025 Mickmumpitz