Nodes/civitai-comfy-nodes/meshy / v7 / imageTo3D
ComfyUI Node

meshy / v7 / imageTo3D

The character-generation node with the pose controls

By civitai·Created 3 months ago·Updated 2 days ago· 44
meshy / v7 / imageTo3D
  • api_config
  • model
  • fbx_model
  • thumbnail
  • rigged_model
  • rigged_fbx_model
  • animated_model
  • animated_fbx_model
  • basic_animations
  • workflow_id
  • raw_json
image_url
target_polycount30000
topologytriangle
symmetry_modeauto
should_remeshtrue
enable_pbrfalse
texture_prompt
enable_riggingfalse
enable_animationfalse
should_texturetrue
pose_modenone
texture_image_url
rigging_height_meters1.70
animation_action_id92
ultra_modefalse
model_typestandard

Meshy v7 is where the hosted image-to-3D services start to feel like a real character pipeline instead of a shape guesser. This node adds the controls that matter for people making people: explicit pose selection, a reference for the texture pass, a character height in meters, and a whole animation library. If you want a rigged, posed, animated character from a single image, this is the node in this pack that's built for it.

What it is

meshy / v7 / imageTo3D from civitai/civitai-comfy-nodes. Your reference image goes up to Civitai's orchestration API, a Meshy v7 job runs on the fal-hosted backend, and a mesh comes back - with the v7 extras. Same STRING-not-IMAGE gotcha as the other Meshy nodes: image_url is a URL string, not an image socket.

The inputs

  • image_url - required STRING. Your reference image, hosted somewhere reachable.
  • pose_mode - none (Meshy picks), a-pose, or t-pose. The tooltip says it plainly: "none" lets Meshy choose. If you're rigging for animation, forcing a T or A pose is usually the smart move so the skeleton behaves.
  • texture_image_url - a second 2D image guiding the texturing. Nice control: use a clean render for geometry and a styled version for the paint.
  • rigging_height_meters - approximate character height in meters, default 1.7. Only used when rigging is enabled; set it to your game's scale convention.
  • animation_action_id - a preset from Meshy's animation library (0 is "Idle"), referenced by ID. The tooltip points at the Meshy docs for the full list. Only used when animation is enabled.
  • ultra_mode - off by default; higher-fidelity geometry with finer surface detail. Expensive, but for a hero asset it's the button.
  • model_type - standard or lowpoly. Here's the trap: lowpoly makes Meshy ignore the remesh controls - topology, target_polycount, should_remesh all become no-ops. Pick it deliberately for game-ready low-poly, not by accident.
  • The v6 family's knobs are all here too: target_polycount, topology, symmetry_mode, should_remesh, enable_pbr, texture_prompt, enable_rigging, enable_animation, should_texture, seed.

The outputs

model (GLB URL), fbx_model, thumbnail (IMAGE), rigged_model, rigged_fbx_model, animated_model, animated_fbx_model, basic_animations - the rigged and animated outputs actually populate on Meshy - plus workflow_id and raw_json.

Installing it

ComfyUI Manager → Civitai Comfy Nodes → Install → restart. Or:

cd ComfyUI/custom_nodes
git clone https://github.com/civitai/civitai-comfy-nodes.git
pip install -r civitai-comfy-nodes/requirements.txt

Gotchas

  • URL, not image - the classic Meshy-node confusion. Feed it a URL string.
  • lowpoly overrides your mesh controls. If your topology settings seem to do nothing, check model_type - that's the documented behavior, not a bug.
  • It's a metered commercial service. Buzz per run; ultra_mode, rigging, and animation stack on top of the base price. Read raw_json if cost matters.
  • Credentials - Civitai Auth node, CIVITAI_API_TOKEN, or sidebar OAuth.
  • Organic shapes still bite. Meshy v7 is good at characters, but the whole field's honest limit stands: generated topology needs cleanup for anything that ships.
CategoryCivitai/Misc/meshy

Inputs (17)

NameTypeDefaultDescription
image_urlSTRING
target_polycountoptINT30000100–300000
topologyoptCOMBOtriangle2 options: quad, triangle
symmetry_modeoptCOMBOauto3 options: off, auto, on
should_remeshoptBOOLEANtrue
enable_pbroptBOOLEANfalse
texture_promptoptSTRING
enable_riggingoptBOOLEANfalse
enable_animationoptBOOLEANfalse
should_textureoptBOOLEANtrue
pose_modeoptCOMBOnonePose to generate the character in. "none" lets Meshy pick.
texture_image_urloptSTRING2D image guiding the texturing process.
rigging_height_metersoptFLOAT1.700.01–100Approximate character height in meters. Only used when enableRigging is set.
animation_action_idoptINT920–696Animation preset from Meshy's library (0 is "Idle"); see https://docs.meshy.ai/en/api/animation-library. Only used when Civitai.Orchestration.Grains.Workflows.Steps.PolyGen.Fal.MeshyFalPolyGenInput.EnableAnimation is set.
ultra_modeoptBOOLEANfalseHigher-fidelity geometry with finer surface detail.
model_typeoptCOMBOstandard"lowpoly" makes Meshy ignore the remesh controls (topology, targetPolycount, shouldRemesh).
api_configoptCIVITAI_CONFIGOptional Civitai Auth connection; defaults to CIVITAI_API_TOKEN or stored OAuth login.

Outputs (10)

NameTypeDescription
modelSTRING
fbx_modelSTRING
thumbnailIMAGE
rigged_modelSTRING
rigged_fbx_modelSTRING
animated_modelSTRING
animated_fbx_modelSTRING
basic_animationsSTRING
workflow_idSTRING
raw_jsonSTRING