Unable to render basic skeletal animation using hydra 2.0

I am unable to view the HumanFemaleWalk anim from the UsdSkel examples using hydra 2.0. The model displays in T-pose as opposed to a walking pose.

        auto _rootLayer = SdfLayer::FindOrOpen("HumanFemale.walk.usd");
        _stage = UsdStage::Open(_rootLayer);
        sceneIndex = UsdImagingStageSceneIndex::New();
        sceneIndex->SetStage(_stage); //warning occurs here
        sceneIndex->SetTime(101);

        ....


        engine.Execute(index, &tasks);

I get the following warning when I call sceneIndex->SetStage

Warning: in GetImagingSubprims at line 84 of ***/OpenUSD/pxr/usdImaging/usdImaging/primAdapter.cpp -- Datasource support not yet added for adapter 'UsdSkelImagingSkelRootAdapter'

HumanFemale.walk.usd

#usda 1.0
(
    defaultPrim = "HumanFemale_Group"
    endTimeCode = 129
    startTimeCode = 101
    upAxis = "Z"
)

def "HumanFemale_Group" (
    prepend apiSchemas = ["SkelBindingAPI"]
    prepend references = @./HumanFemale.usd@
)
...

After reading the changelog and source code, it seems like UsdImagingStageSceneIndex does not yet support UsdSkel.

Will I be able to resolve this issue if I write my own scene index that has the correct adapters to read UsdSkel?

Hi Rishflab,

UsdImagingStageSceneIndex is missing prim adapters to read UsdSkel binding data into the scene index format, and it’s also missing the logic to convert those into deferred executions (for GL) or resolve them inline (for some of our raytracers). We’re actively working on UsdSkel support right now, so expect official support to land soon.

Thanks,
Tom

1 Like

Hi Tom

Thanks for your response.

Do you have rough time estimate on when UsdSkel support will be added to UsdImagingStageSceneIndex? Is this something to expect in the next release?

I can’t give a time estimate but our hope is to land it soon. We have an engineer working full time on it; and since we can re-use the existing render delegate support, we’re hopeful that the work involved in parsing the UsdSkel schemas into residual computations will be straightforward.

1 Like