Problem
Modern consoles do not generally offer public universal mesh interchange formats suitable for “export to PS5/Xbox/Switch binary.” QtMesh should instead ship performance and pipeline validation presets for source assets: budgets for triangles, materials, textures, animations, LOD expectations, and engine-friendly naming—aligned with glTF/FBX preparation, not proprietary cooked formats.
Proposed solution
Add bundled profiles:
modern-console.json — conservative “AAA source asset” budgets (tunable).
switch-like.json, steamdeck.json, mobile-low.json, webgl.json, vr.json — class-based GPU/CPU heuristics as warnings, not certifiable limits.
Profile JSON may include:
engineHints free-text or structured tags: unreal, unity, godot, custom — for documentation and future rules, not SDK calls.
- Rules: triangle/vertex caps, material count, texture memory estimate thresholds, bone counts, animation clip counts, redundant keyframe linkage to existing
redundant_keyframes_pct, optional require LOD placeholder (implement when AssetInfo supports LOD detection).
Scope
- JSON presets + tests + rule wiring only for fields already supported after budget-rules issue; stub TODO fields documented.
Acceptance criteria
Files / components likely affected
profiles/modern-console.json, profiles/switch-like.json, profiles/steamdeck.json, profiles/mobile-low.json, profiles/webgl.json, profiles/vr.json
action.yml / CLI docs examples (optional follow-up sentence)
Test strategy
- Profile parse tests + one scan run on sample asset if available.
Labels
enhancement, scan, cli
Milestone
Milestone 4: Modern platform presets
Dependencies
Problem
Modern consoles do not generally offer public universal mesh interchange formats suitable for “export to PS5/Xbox/Switch binary.” QtMesh should instead ship performance and pipeline validation presets for source assets: budgets for triangles, materials, textures, animations, LOD expectations, and engine-friendly naming—aligned with glTF/FBX preparation, not proprietary cooked formats.
Proposed solution
Add bundled profiles:
modern-console.json— conservative “AAA source asset” budgets (tunable).switch-like.json,steamdeck.json,mobile-low.json,webgl.json,vr.json— class-based GPU/CPU heuristics as warnings, not certifiable limits.Profile JSON may include:
engineHintsfree-text or structured tags:unreal,unity,godot,custom— for documentation and future rules, not SDK calls.redundant_keyframes_pct, optional require LOD placeholder (implement whenAssetInfosupports LOD detection).Scope
Acceptance criteria
qtmesh scan --help.Files / components likely affected
profiles/modern-console.json,profiles/switch-like.json,profiles/steamdeck.json,profiles/mobile-low.json,profiles/webgl.json,profiles/vr.jsonaction.yml/ CLI docs examples (optional follow-up sentence)Test strategy
Labels
enhancement,scan,cliMilestone
Milestone 4: Modern platform presets
Dependencies