Files
tinyusdz/FEATURE_MATRIX.txt
Syoyo Fujita 0721c93534 Add light filter relationship support for USD light primitives
Implement rel light:filters relationship support for all light types:
- Add lightFilters field to BoundableLight and NonboundableLight base classes
- Create AddLightFilterSpecs() function to export light filter relationships as separate relationship specs
- Handle all light types: SphereLight, RectLight, DiskLight, CylinderLight, DistantLight, DomeLight, GeometryLight, PortalLight
- Add comprehensive test for light filter roundtrip with RectLight
- Light filters enable professional lighting setups with shadow filtering and light linking

All 81 unit tests passing, including new light filter test.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-20 00:23:54 +09:00

116 lines
7.2 KiB
Plaintext

TINYUSDZ CRATE WRITER - FEATURE COMPLETENESS MATRIX
===================================================
SHADER TYPES
============
UsdPreviewSurface [████████████████████] 100% COMPLETE
UsdUVTexture [████████████████████] 100% COMPLETE
UsdTransform2d [████████████████████] 100% COMPLETE
UsdPrimvarReader_* [████████████████████] 100% COMPLETE (all 10)
NodeGraph [░░░░░░░░░░░░░░░░░░░░] 0% EMPTY STRUCT
UsdRamp [░░░░░░░░░░░░░░░░░░░░] 0% NOT FOUND
Math Nodes (Add/Mul/Mix) [░░░░░░░░░░░░░░░░░░░░] 0% NOT IMPLEMENTED
SDR Metadata [░░░░░░░░░░░░░░░░░░░░] 0% TODO
GEOMETRY PRIMITIVES
===================
GeomMesh [████████████████████] 100% COMPLETE
GeomBasisCurves [████████████████████] 100% COMPLETE
GeomNurbsCurves [████████████████████] 100% COMPLETE
GeomPoints [████████████████████] 100% COMPLETE
GeomSphere/Cube/etc [████████████████████] 100% COMPLETE
GeomCamera [████████████████████] 100% COMPLETE
GeomSubset [████████████████████] 100% COMPLETE
PointInstancer [████████████████████] 100% COMPLETE
LIGHT TYPES
===========
SphereLight [████████████████████] 100% COMPLETE
RectLight [████████████████████] 100% COMPLETE
DiskLight [████████████████████] 100% COMPLETE
CylinderLight [████████████████████] 100% COMPLETE
DistantLight [████████████████████] 100% COMPLETE
DomeLight [████████████████████] 100% COMPLETE
Light Filters [░░░░░░░░░░░░░░░░░░░░] 0% TODO
GeometryLight [████░░░░░░░░░░░░░░░░] 25% PARTIAL (missing props)
PortalLight [░░░░░░░░░░░░░░░░░░░░] 0% EMPTY STRUCT
PluginLight [░░░░░░░░░░░░░░░░░░░░] 0% EMPTY STRUCT
COMPOSITION SYSTEM
==================
References [████████████████████] 100% COMPLETE
Payloads [████████████████████] 100% COMPLETE
Inherits [████████████████████] 100% COMPLETE
SubLayers [████████████████████] 100% COMPLETE
Over/Overs [████████████████████] 100% COMPLETE
Specializes [░░░░░░░░░░░░░░░░░░░░] 0% TODO
VariantSets (composition) [██████░░░░░░░░░░░░░░] 30% PARTIAL
Active Metadata [░░░░░░░░░░░░░░░░░░░░] 0% TODO
MATERIAL & SHADING
==================
Surface Outputs [████████████████████] 100% COMPLETE
Displacement Outputs [████████████████████] 100% COMPLETE
Volume Outputs [████████████████████] 100% COMPLETE
Material Binding (direct) [████████████████████] 100% COMPLETE
Material Binding (collection) [████████████████████] 100% COMPLETE
Shader Input Connections [████████████████████] 100% COMPLETE
Shader Fallback Values [███████████░░░░░░░░░] 55% PARTIAL
Light Linking [░░░░░░░░░░░░░░░░░░░░] 0% TODO
interfaceOnly Marking [░░░░░░░░░░░░░░░░░░░░] 0% TODO
ANIMATION & TIMESAMPLES
=======================
Attribute TimeSamples [████████████████████] 100% COMPLETE
Visibility TimeSamples [████████████████████] 100% COMPLETE
Shader Input TimeSamples [████████████████████] 100% COMPLETE
Relationship TimeSamples [░░░░░░░░░░░░░░░░░░░░] 0% NOT SUPPORTED
Metadata TimeSamples [░░░░░░░░░░░░░░░░░░░░] 0% NOT SUPPORTED
Indexed Primvar Animation [░░░░░░░░░░░░░░░░░░░░] 0% KNOWN LIMITATION
RELATIONSHIP FEATURES
=====================
Relationship Targets [████████████████████] 100% COMPLETE
Relationship Arrays [████████████████████] 100% COMPLETE
Relationship Metadata [██████████░░░░░░░░░░] 50% PARTIAL
OVERALL COMPLETION
==================
Shader System [████████████░░░░░░░░] 65% (4/8 types)
Light System [██████████████░░░░░░] 75% (6/9 types)
Geometry System [████████████████████] 100% (all major types)
Composition System [███████████░░░░░░░░░] 60% (5/8 arcs)
Material/Shading [███████████░░░░░░░░░] 70% (core done, advanced TODO)
Animation System [████████████████░░░░] 80% (mostly complete)
OVERALL CRATE WRITER [████████████░░░░░░░░] 65-70% COMPLETE
KEY METRICS
===========
Total Features Analyzed: 35
Fully Implemented: 22 (63%)
Partially Implemented: 5 (14%)
Not Implemented: 8 (23%)
Current Test Coverage: 74 tests
Recommended Additional: 16 tests (Tests 75-90)
Total Coverage Target: 90 tests
IMPLEMENTATION CONFIDENCE LEVELS
================================
Tier 1 (Easy - 1-2 days):
- Light Filters
- GeometryLight completion
- SDR Metadata
Tier 2 (Medium - 3-5 days):
- NodeGraph full implementation
- Specialize composition arc
- Additional math shader nodes
Tier 3 (Hard - 5+ days):
- Indexed primvar animation
- Full variant composition
- Complex relationship metadata