Skip to content

novaphy.UsdAnimationTrack

USD animation track for a single attribute on a UsdPrim. Each track holds either vec3 samples (e.g. xformOp:translate) or vec4 samples (e.g. quaternion rotation), keyed by USD timeCode.

Attributes

Attribute Description
property_name Animated USD attribute name (e.g. "xformOp:translate", "xformOp:orient").
vec3_samples List of (time, Vec3) samples. Populated for translate / scale tracks.
vec4_samples List of (time, Vec4) samples. Populated for orientation (quaternion) tracks.

Example

import novaphy

# The common "#usda 1.0" header needs an explicit compatibility threshold;
# the importer's default minimum is 21.08.
stage = novaphy.OpenUsdImporter(min_supported_version=1.0).import_file("anim.usda")
for prim in stage.prims:
    for track in prim.tracks:
        if track.property_name == "xformOp:translate":
            for t, p in track.vec3_samples:
                print(prim.path, t, p)

Notes

  • A given track is either vec3 or vec4 — the unused list is empty.
  • Time values are authored USD timeCode values. The lightweight importer does not currently parse or expose timeCodesPerSecond; obtain that metadata separately if you need a wall-clock conversion.
  • NovaPhy does not currently bake animation into a Model automatically; treat tracks as input data for your own keyframe playback layer.

See Also