Updated:2024/01/16Tatsuya Yamagishi

Created:2024/01/15 Tatsuya Yamagishi

※ 記事の内容に一切の責任を持ちません。

動作していたスクリプトが、エラーを出し正常に動作しなくなった。


Code Examples:

問題:

Maya PythonでUSDをStageで読み込むと(Importの方ではなく、USD Layerとして読み込み)Unresolved reference prim path と表示され、USDがインポートできない

解決:

Houdiniから出力する際にdefaultPrim を指定する事で、問題なく動作するようになった。

Untitled

再現:

HoudiniからUSD ROPのデフォルト値で出力

Untitled

defaultPrim が記述されない

#usda 1.0
(
    endTimeCode = 1
    framesPerSecond = 24
    metersPerUnit = 1
    startTimeCode = 1
    timeCodesPerSecond = 24
    upAxis = "Y"
)

def Cube "cube1"
{
    float3[] extent = [(-1, -1, -1), (1, 1, 1)]
    double size = 2
    matrix4d xformOp:transform = ( (1, 0, 0, 0), (0, 1, 0, 0), (0, 0, 1, 0), (0, 0, 0, 1) )
    uniform token[] xformOpOrder = ["xformOp:transform"]
}

MayaPythonでusd referenceを作成しようとするとエラーで読めない

Untitled

Default Prim Pathを指定

Untitled

defaultPrim = "cube1"が記載される

#usda 1.0
(
    defaultPrim = "cube1"
    endTimeCode = 1
    framesPerSecond = 24
    metersPerUnit = 1
    startTimeCode = 1
    timeCodesPerSecond = 24
    upAxis = "Y"
)

def Cube "cube1"
{
    float3[] extent = [(-1, -1, -1), (1, 1, 1)]
    double size = 2
    matrix4d xformOp:transform = ( (1, 0, 0, 0), (0, 1, 0, 0), (0, 0, 1, 0), (0, 0, 0, 1) )
    uniform token[] xformOpOrder = ["xformOp:transform"]
}

無事読めるように

Untitled

課題

Houdini

Houdini Refereceノードは Primitiveを読み込み時に指定出来る。

Untitled

参考:

Add a Reference — Omniverse Developer Guide latest documentation

Dirty propagation issues on basic scenes · Autodesk/maya-usd · Discussion #2254

MayaからUSDを普通のオブジェクトのように In/Export する際はこちら

Maya2022のUSDを触ってみよう - いろいろExportする

defaultPrimについて

usdviewでキッチンセットを詳しく見てみよう(2)