Skip to content

AI/Gen3D: Slice E — Model hosting, packaging, docs, tests #769

Description

@fernandotonon

Part of #764. Final slice — hosting, packaging, docs, end-to-end tests. Mirrors the roadmap "Slice X — CLI/MCP parity, docs, tests" convention, plus model hosting (the RigNet "model not yet hosted" lesson).

Model hosting

  • Export the production TripoSR ONNX (per Slice A) and host on the project HF models repo: https://huggingface.co/<user>/QtMeshEditor-models/resolve/main/triposr/. Match the filename MeshGenPredictor::modelPath() expects.
  • Until hosted, the feature must report a clear "TripoSR model not yet hosted" message (not a crash). Document the QSettings/env override for self-hosting.
  • Model reachable at the default URL, or the not-hosted state is clean and documented.

Packaging (audit every path — runtime libs + future model cache dir)

  • ONNX Runtime shared lib copied next to the app in .app bundle, .deb, Windows install, and Docker image (extend the existing QTMESH_ONNX_LIB_DIR POST_BUILD copy used for UnitTests/app).
  • ENABLE_ONNX build variant decision for releases documented (it's OFF by default; note which release artifacts ship with it ON, consistent with PBR/AI: PBR map synthesis from albedo (DeepBump-style, ONNX) #404).

Tests

  • MeshGenPredictor_test.cpp (Slice B) + mesh-build/round-trip (Slice C) + a CLI coverage test CLIPipeline_cmdgenerate3d_*_test.cpp mirroring CLIPipeline_cmdrig_coverage_test.cpp (runs without ONNX → asserts clean error; skips inference when model/GL absent).
  • All new _test.cpp auto-globbed into UnitTests; pass on Linux CI; skip gracefully where unavailable.

Docs

  • CLAUDE.md: add generate3d to the qtmesh examples + recognized-subcommand list + MCP/CLI inventory; add an "Image-to-3D (TripoSR)" architecture note next to the other AI-assist entries (predictor + marching-cubes + license rationale).
  • README / website CLI reference updated.
  • action.yml command description updated (new CLI subcommand).
  • ./scripts/sync-doc-versions-from-cmake.sh --check still passes.

Metadata

Metadata

Assignees

No one assigned

    Labels

    ai-assistLocal-AI-assisted 3D workflows (epic prefix: AI:)documentationImprovements or additions to documentationenhancementNew feature or requestqtmesh-roadmap

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions