Skip to content

Add CC0 starter equipment and complete Fit Lab fitting workflow - #1

Merged
DatMoshu merged 5 commits into
mainfrom
fit-lab-scoped-corrections
Oct 3, 2026
Merged

DatMoshu merged 5 commits into
mainfrom
fit-lab-scoped-corrections

Conversation

@DatMoshu

@DatMoshu DatMoshu commented Oct 2, 2026 •

Copy link
Copy Markdown
Owner

Equipment fitting could place back attachments over the UO body, and paired items and torso clothing needed more precise controls. This adds complete-body holdout masking, scoped animation/direction corrections, real Blender render review, torso depth and independent left/right item offsets while preserving saved fits, autosave and undo history.

The CC0 starter catalog includes licensed and hash-audited equipment examples for all 25 UO layer routes: animated wearables, jewelry source/paperdoll routes and mount guidance. Windows/Linux launchers connect Studio and Fit Lab. Shared-service documentation and a GUO integration plan are included; the separate GUO implementation is not shipped by this PR.

Validation:

  • 103 pytest tests passed, one client-dependent test skipped; 15 outfit-lab tests passed; agent routers current.
  • Actual Blender checks covered 360 torso frames and 22 glove/boot frames with asymmetric offsets, with no empty or clipped frames in those builds and successful VD alpha/anchor round-trips.
  • Blender geometry regression verified side isolation, transformed meshes, repeat updates without drift and reset.
  • Browser verified independent side controls; Linux launchers were syntax checked, not run on Linux.

Full 35-action coverage, complete-outfit layering and in-client equip testing remain release gates. Some starter intersections remain. No UO game assets or commercial/private sidecar assets are included; only audited CC0 starter models are redistributed. The canonical UO body still requires local setup.

DatMoshu and others added 3 commits October 2, 2026 14:52
Corrections target a pack, slot, named group or item, optionally per action
and stored direction, resolved identically in the lab and in Blender builds.
Back/quiver slots mask against the whole body. The lab can build the selected
item from frozen saved fits and rebuild only blocks whose fit changed into a
new validated revision. The preview's Euler order now matches Blender.

Studio pack jobs only require fit_item when item offsets are non-zero.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The updated renderer has its own 256x256 canvas, so the build only pads
older renderers, and the rig gained four weapon bones (112). Per-block fits
now rebuild the holdout and torso triangle masks the new renderer uses,
since hidden body faces change the triangle count.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 2, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-02T22:13:26.958440Z eea8169 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: eea81693f7

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +34 to +38
def render_fingerprint():
paths = [HERE/name for name in ('blender_build.py','fit_runtime.py','pack_fit.py')]
paths += [ROOT/'tools/fit-lab/fit_rules.py']
paths += [BACKEND/'pipeline'/name for name in ('render_uo_layer.py','uo_bind_item.py','uo_vd_writer.py')]
return hashlib.sha256(''.join(sha(path) for path in paths).encode()).hexdigest()

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Fingerprint the Blender runtime before selective rebuilds

When a user upgrades or switches Blender between the original build and a selective rebuild, this fingerprint remains unchanged because it hashes only repository/backend files. Blender version changes can alter shading and rasterization, so the compatibility check accepts the rebuild and merges newly rendered blocks with blocks produced by a different renderer runtime. Include the Blender executable/version or another runtime-renderer identity in the recorded fingerprint.

Useful? React with 👍 / 👎.

Comment on lines +79 to +80
spec.update(fit_adjustments=document, job=str(destination), rebuild={'source_job':source.name,'patch_job':patch.name,'blocks':selected,'unchanged_vd_blocks':unchanged})
pipeline.write_json(stage/'job.json',spec)

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Rebase copied inputs onto the rebuilt job

After a successful partial rebuild, the copied revision's job.json retains the source job's absolute asset and pack_mapping paths even though copytree placed equivalent files inside the new job. If the source job is subsequently cleaned up or moved, loading this revision's settings or rebuilding it again fails on those stale paths, making every revision depend on its oldest ancestor. Update these fields to the copies under destination before writing the new spec.

Useful? React with 👍 / 👎.

Add audited CC0 equipment examples, studio and lab launchers, live Blender render review, body holdout fixes, torso depth and independent left/right item offsets. Include shared-service documentation, GUO integration research and regression coverage.
@DatMoshu DatMoshu changed the title Fix UO attachment masking and add scoped fit corrections Add CC0 starter equipment and complete Fit Lab fitting workflow Oct 3, 2026
@DatMoshu
DatMoshu enabled auto-merge (squash) October 3, 2026 16:37
@DatMoshu
DatMoshu merged commit 94e84f5 into main Oct 3, 2026
2 checks passed
@DatMoshu
DatMoshu deleted the fit-lab-scoped-corrections branch October 3, 2026 16:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant