docs.unity3d.com
    Show / Hide Table of Contents

    Class UnityTypeConverter

    Inheritance
    Object
    IntrinsicTypeConverter
    UnityTypeConverter
    Inherited Members
    IntrinsicTypeConverter.MakeValidIdentifier(String)
    IntrinsicTypeConverter.JoinNamespace(String, String)
    IntrinsicTypeConverter.ToVtArray(String[])
    IntrinsicTypeConverter.ListToVtArray(List<String>)
    IntrinsicTypeConverter.ListFromVtArray(VtTokenArray)
    IntrinsicTypeConverter.FromVtArray(VtTokenArray)
    IntrinsicTypeConverter.FromVtArray(VtTokenArray, String[])
    IntrinsicTypeConverter.ToVtArray(SdfAssetPath[])
    IntrinsicTypeConverter.ListToVtArray(List<SdfAssetPath>)
    IntrinsicTypeConverter.ListFromVtArray(SdfAssetPathArray)
    IntrinsicTypeConverter.FromVtArray(SdfAssetPathArray)
    IntrinsicTypeConverter.FromVtArray(SdfAssetPathArray, SdfAssetPath[])
    IntrinsicTypeConverter.ToVtArray(Boolean[])
    IntrinsicTypeConverter.FromVtArray(VtBoolArray)
    IntrinsicTypeConverter.FromVtArray(VtBoolArray, Boolean[])
    IntrinsicTypeConverter.ListToVtArray(List<Boolean>)
    IntrinsicTypeConverter.ListFromVtArray(VtBoolArray)
    IntrinsicTypeConverter.ToVtArray(Byte[])
    IntrinsicTypeConverter.ListToVtArray(List<Byte>)
    IntrinsicTypeConverter.ListFromVtArray(VtUCharArray)
    IntrinsicTypeConverter.FromVtArray(VtUCharArray)
    IntrinsicTypeConverter.FromVtArray(VtUCharArray, Byte[])
    IntrinsicTypeConverter.ListToVtArray(List<Int32>)
    IntrinsicTypeConverter.ListFromVtArray(VtIntArray)
    IntrinsicTypeConverter.ToVtArray(Int32[])
    IntrinsicTypeConverter.FromVtArray(VtIntArray)
    IntrinsicTypeConverter.FromVtArray(VtIntArray, Int32[])
    IntrinsicTypeConverter.ListToVtArray(List<UInt32>)
    IntrinsicTypeConverter.ListFromVtArray(VtUIntArray)
    IntrinsicTypeConverter.ToVtArray(UInt32[])
    IntrinsicTypeConverter.FromVtArray(VtUIntArray)
    IntrinsicTypeConverter.FromVtArray(VtUIntArray, UInt32[])
    IntrinsicTypeConverter.ListToVtArray(List<Int64>)
    IntrinsicTypeConverter.ListFromVtArray(VtInt64Array)
    IntrinsicTypeConverter.ToVtArray(Int64[])
    IntrinsicTypeConverter.FromVtArray(VtInt64Array)
    IntrinsicTypeConverter.FromVtArray(VtInt64Array, Int64[])
    IntrinsicTypeConverter.ListToVtArray(List<UInt64>)
    IntrinsicTypeConverter.ListFromVtArray(VtUInt64Array)
    IntrinsicTypeConverter.ToVtArray(UInt64[])
    IntrinsicTypeConverter.FromVtArray(VtUInt64Array)
    IntrinsicTypeConverter.FromVtArray(VtUInt64Array, UInt64[])
    IntrinsicTypeConverter.ListToVtArray(List<Single>)
    IntrinsicTypeConverter.ListFromVtArray(VtFloatArray)
    IntrinsicTypeConverter.ToVtArray(Single[])
    IntrinsicTypeConverter.FromVtArray(VtFloatArray)
    IntrinsicTypeConverter.ListToVtArray(List<Double>)
    IntrinsicTypeConverter.ListFromVtArray(VtDoubleArray)
    IntrinsicTypeConverter.ToVtArray(Double[])
    IntrinsicTypeConverter.FromVtArray(VtDoubleArray)
    Object.ToString()
    Object.Equals(Object)
    Object.Equals(Object, Object)
    Object.ReferenceEquals(Object, Object)
    Object.GetHashCode()
    Object.GetType()
    Object.MemberwiseClone()
    Namespace: USD.NET.Unity
    Syntax
    public class UnityTypeConverter : IntrinsicTypeConverter

    Fields

    basisChange

    Configurable matrix used for change of basis from USD to Unity and vice versa (change handedness).

    Declaration
    public static Matrix4x4 basisChange
    Field Value
    Type Description
    Matrix4x4
    Remarks

    Allows global configuration of the change of basis matrix, which e.g. is used to make the USD importer conform to the legacy FBX import convention in Unity, swapping the X-axis instead of the Z-axis. By default this matrix is set to change handedness by swapping the Z-axis.

    inverseBasisChange

    Declaration
    public static Matrix4x4 inverseBasisChange
    Field Value
    Type Description
    Matrix4x4

    Methods

    BoundsFromVtArray(VtValue)

    Declaration
    public static Bounds BoundsFromVtArray(VtValue vtBounds)
    Parameters
    Type Name Description
    VtValue vtBounds
    Returns
    Type Description
    Bounds

    BoundsFromVtArray(VtValue, Vector3[])

    Declaration
    public static Bounds BoundsFromVtArray(VtValue vtBounds, Vector3[] bbox)
    Parameters
    Type Name Description
    VtValue vtBounds
    Vector3[] bbox
    Returns
    Type Description
    Bounds

    BoundsToVtArray(Bounds)

    Declaration
    public static VtVec3fArray BoundsToVtArray(Bounds input)
    Parameters
    Type Name Description
    Bounds input
    Returns
    Type Description
    VtVec3fArray

    ChangeBasis(Matrix4x4)

    Converts to and from the USD transform space. This method should be applied to all Unity matrices before being written and all USD matrices after being read, unless the USD file is stored in the Unity transform space (though doing so will result in a non-standard USD file).

    Declaration
    public static Matrix4x4 ChangeBasis(Matrix4x4 input)
    Parameters
    Type Name Description
    Matrix4x4 input
    Returns
    Type Description
    Matrix4x4

    ChangeBasis(Vector3)

    Declaration
    public static Vector3 ChangeBasis(Vector3 point)
    Parameters
    Type Name Description
    Vector3 point
    Returns
    Type Description
    Vector3

    Color32FromVtArray(VtVec4fArray)

    Declaration
    public static Color32[] Color32FromVtArray(VtVec4fArray input)
    Parameters
    Type Name Description
    VtVec4fArray input
    Returns
    Type Description
    Color32[]

    Color32ToVec4f(Color32)

    Declaration
    public static GfVec4f Color32ToVec4f(Color32 c)
    Parameters
    Type Name Description
    Color32 c
    Returns
    Type Description
    GfVec4f

    ColorFromVtArray(VtVec4fArray)

    Declaration
    public static Color[] ColorFromVtArray(VtVec4fArray input)
    Parameters
    Type Name Description
    VtVec4fArray input
    Returns
    Type Description
    Color[]

    ColorFromVtArray(VtVec4fArray, ref Color[])

    Declaration
    public static Color[] ColorFromVtArray(VtVec4fArray input, ref Color[] output)
    Parameters
    Type Name Description
    VtVec4fArray input
    Color[] output
    Returns
    Type Description
    Color[]

    ColorToVec4f(Color)

    Declaration
    public static GfVec4f ColorToVec4f(Color c)
    Parameters
    Type Name Description
    Color c
    Returns
    Type Description
    GfVec4f

    Decompose(Matrix4x4, out Vector3, out Quaternion, out Vector3)

    Decompose the given matrix into translation, rotation, and scale, accounting for potential handedness changes in the matrix. Returns false if the matrix is singular.

    Declaration
    public static bool Decompose(Matrix4x4 matrix, out Vector3 translation, out Quaternion rotation, out Vector3 scale)
    Parameters
    Type Name Description
    Matrix4x4 matrix
    Vector3 translation
    Quaternion rotation
    Vector3 scale
    Returns
    Type Description
    Boolean
    Remarks

    Note that for a change of handedness, all scales will invert and a corrective rotation will be aded, which will not match the original TSR values, but will be correct in terms of orientation, position and scale.

    ExtractAlpha(Color[])

    Declaration
    public static float[] ExtractAlpha(Color[] colors)
    Parameters
    Type Name Description
    Color[] colors
    Returns
    Type Description
    Single[]

    ExtractAlpha(Color32[])

    Declaration
    public static float[] ExtractAlpha(Color32[] colors)
    Parameters
    Type Name Description
    Color32[] colors
    Returns
    Type Description
    Single[]

    ExtractRgb(Color[])

    Declaration
    public static Vector3[] ExtractRgb(Color[] colors)
    Parameters
    Type Name Description
    Color[] colors
    Returns
    Type Description
    Vector3[]

    ExtractRgb(Color32[])

    Declaration
    public static Vector3[] ExtractRgb(Color32[] colors)
    Parameters
    Type Name Description
    Color32[] colors
    Returns
    Type Description
    Vector3[]

    ExtractTrs(Matrix4x4, ref Vector3, ref Quaternion, ref Vector3)

    Extracts the local position, rotation and scale from the given Matrix4x4.

    Declaration
    public static void ExtractTrs(Matrix4x4 transform, ref Vector3 localPosition, ref Quaternion localRotation, ref Vector3 localScale)
    Parameters
    Type Name Description
    Matrix4x4 transform
    Vector3 localPosition
    Quaternion localRotation
    Vector3 localScale

    FromMatrix(GfMatrix4d)

    Declaration
    public static Matrix4x4 FromMatrix(GfMatrix4d gfMat)
    Parameters
    Type Name Description
    GfMatrix4d gfMat
    Returns
    Type Description
    Matrix4x4

    FromVtArray(VtMatrix4dArray)

    Declaration
    public static Matrix4x4[] FromVtArray(VtMatrix4dArray input)
    Parameters
    Type Name Description
    VtMatrix4dArray input
    Returns
    Type Description
    Matrix4x4[]

    FromVtArray(VtQuatfArray)

    Declaration
    public static Quaternion[] FromVtArray(VtQuatfArray input)
    Parameters
    Type Name Description
    VtQuatfArray input
    Returns
    Type Description
    Quaternion[]

    FromVtArray(VtVec2fArray)

    Declaration
    public static Vector2[] FromVtArray(VtVec2fArray input)
    Parameters
    Type Name Description
    VtVec2fArray input
    Returns
    Type Description
    Vector2[]

    FromVtArray(VtVec3fArray)

    Declaration
    public static Vector3[] FromVtArray(VtVec3fArray input)
    Parameters
    Type Name Description
    VtVec3fArray input
    Returns
    Type Description
    Vector3[]

    FromVtArray(VtVec3fArray, VtFloatArray)

    Declaration
    public static Color[] FromVtArray(VtVec3fArray rgbIn, VtFloatArray alphaIn)
    Parameters
    Type Name Description
    VtVec3fArray rgbIn
    VtFloatArray alphaIn
    Returns
    Type Description
    Color[]

    FromVtArray(VtVec3fArray, ref Vector3[])

    Declaration
    public static void FromVtArray(VtVec3fArray input, ref Vector3[] output)
    Parameters
    Type Name Description
    VtVec3fArray input
    Vector3[] output

    FromVtArray(VtVec4fArray)

    Declaration
    public static Vector4[] FromVtArray(VtVec4fArray input)
    Parameters
    Type Name Description
    VtVec4fArray input
    Returns
    Type Description
    Vector4[]

    GetLocalToParentXf(Transform)

    Declaration
    public static Matrix4x4 GetLocalToParentXf(Transform unityXf)
    Parameters
    Type Name Description
    Transform unityXf
    Returns
    Type Description
    Matrix4x4

    GetPath(Transform)

    Returns a valid UsdPath for the given Unity GameObject.

    Declaration
    public static string GetPath(Transform unityObj)
    Parameters
    Type Name Description
    Transform unityObj
    Returns
    Type Description
    String
    Remarks

    Note that illegal characters are converted into legal characters, so invalid names may collide in the USD namespace.

    GetPath(Transform, Transform)

    Returns a valid UsdPath for the given Unity GameObject, relative to the given root. For example: obj = /Foo/Bar/Baz, root = /Foo the result will be /Bar/Baz

    Declaration
    public static string GetPath(Transform unityObj, Transform unityObjRoot)
    Parameters
    Type Name Description
    Transform unityObj
    Transform unityObjRoot
    Returns
    Type Description
    String
    Remarks

    Note that illegal characters are converted into legal characters, so invalid names may collide in the USD namespace.

    GetUniqueName(Transform)

    Declaration
    public static string GetUniqueName(Transform transform)
    Parameters
    Type Name Description
    Transform transform
    Returns
    Type Description
    String

    ListFromVtArray(VtMatrix4dArray)

    Declaration
    public static List<Matrix4x4> ListFromVtArray(VtMatrix4dArray input)
    Parameters
    Type Name Description
    VtMatrix4dArray input
    Returns
    Type Description
    List<Matrix4x4>

    ListFromVtArray(VtQuatfArray)

    Declaration
    public static List<Quaternion> ListFromVtArray(VtQuatfArray input)
    Parameters
    Type Name Description
    VtQuatfArray input
    Returns
    Type Description
    List<Quaternion>

    ListFromVtArray(VtVec2fArray)

    Declaration
    public static List<Vector2> ListFromVtArray(VtVec2fArray input)
    Parameters
    Type Name Description
    VtVec2fArray input
    Returns
    Type Description
    List<Vector2>

    ListFromVtArray(VtVec3fArray)

    Declaration
    public static List<Vector3> ListFromVtArray(VtVec3fArray input)
    Parameters
    Type Name Description
    VtVec3fArray input
    Returns
    Type Description
    List<Vector3>

    ListFromVtArray(VtVec4fArray)

    Declaration
    public static List<Vector4> ListFromVtArray(VtVec4fArray input)
    Parameters
    Type Name Description
    VtVec4fArray input
    Returns
    Type Description
    List<Vector4>

    ListToVtArray(List<Matrix4x4>)

    Declaration
    public static VtMatrix4dArray ListToVtArray(List<Matrix4x4> input)
    Parameters
    Type Name Description
    List<Matrix4x4> input
    Returns
    Type Description
    VtMatrix4dArray

    ListToVtArray(List<Quaternion>)

    Declaration
    public static VtQuatfArray ListToVtArray(List<Quaternion> input)
    Parameters
    Type Name Description
    List<Quaternion> input
    Returns
    Type Description
    VtQuatfArray

    ListToVtArray(List<Vector2>)

    Declaration
    public static VtVec2fArray ListToVtArray(List<Vector2> input)
    Parameters
    Type Name Description
    List<Vector2> input
    Returns
    Type Description
    VtVec2fArray

    ListToVtArray(List<Vector3>)

    Declaration
    public static VtVec3fArray ListToVtArray(List<Vector3> input)
    Parameters
    Type Name Description
    List<Vector3> input
    Returns
    Type Description
    VtVec3fArray

    ListToVtArray(List<Vector4>)

    Declaration
    public static VtVec4fArray ListToVtArray(List<Vector4> input)
    Parameters
    Type Name Description
    List<Vector4> input
    Returns
    Type Description
    VtVec4fArray

    QuaternionToQuatf(Quaternion)

    Declaration
    public static GfQuatf QuaternionToQuatf(Quaternion quaternion)
    Parameters
    Type Name Description
    Quaternion quaternion
    Returns
    Type Description
    GfQuatf

    QuatfToQuaternion(GfQuatf)

    Declaration
    public static Quaternion QuatfToQuaternion(GfQuatf quat)
    Parameters
    Type Name Description
    GfQuatf quat
    Returns
    Type Description
    Quaternion

    RectToVtVec4(Rect)

    Declaration
    public static GfVec4f RectToVtVec4(Rect rect)
    Parameters
    Type Name Description
    Rect rect
    Returns
    Type Description
    GfVec4f

    SetTransform(Matrix4x4, Transform)

    Sets the local transform matrix on the given Unity Transform given a Matrix4x4.

    Declaration
    public static void SetTransform(Matrix4x4 localXf, Transform transform)
    Parameters
    Type Name Description
    Matrix4x4 localXf
    Transform transform

    ToGfMatrix(Matrix4x4)

    Declaration
    public static GfMatrix4d ToGfMatrix(Matrix4x4 unityMat4)
    Parameters
    Type Name Description
    Matrix4x4 unityMat4
    Returns
    Type Description
    GfMatrix4d

    ToGfMatrix(Transform)

    Declaration
    public static GfMatrix4d ToGfMatrix(Transform unityXf)
    Parameters
    Type Name Description
    Transform unityXf
    Returns
    Type Description
    GfMatrix4d

    ToVtArray(List<Color>)

    Declaration
    public static VtVec4fArray ToVtArray(List<Color> input)
    Parameters
    Type Name Description
    List<Color> input
    Returns
    Type Description
    VtVec4fArray

    ToVtArray(List<Color>, out VtVec3fArray, out VtFloatArray)

    Declaration
    public static void ToVtArray(List<Color> input, out VtVec3fArray rgb, out VtFloatArray alpha)
    Parameters
    Type Name Description
    List<Color> input
    VtVec3fArray rgb
    VtFloatArray alpha

    ToVtArray(List<Color32>)

    Declaration
    public static VtVec4fArray ToVtArray(List<Color32> input)
    Parameters
    Type Name Description
    List<Color32> input
    Returns
    Type Description
    VtVec4fArray

    ToVtArray(List<Color32>, out VtVec3fArray, out VtFloatArray)

    Declaration
    public static void ToVtArray(List<Color32> input, out VtVec3fArray rgb, out VtFloatArray alpha)
    Parameters
    Type Name Description
    List<Color32> input
    VtVec3fArray rgb
    VtFloatArray alpha

    ToVtArray(Color[])

    Declaration
    public static VtVec4fArray ToVtArray(Color[] input)
    Parameters
    Type Name Description
    Color[] input
    Returns
    Type Description
    VtVec4fArray

    ToVtArray(Color[], out VtVec3fArray, out VtFloatArray)

    Declaration
    public static void ToVtArray(Color[] input, out VtVec3fArray rgb, out VtFloatArray alpha)
    Parameters
    Type Name Description
    Color[] input
    VtVec3fArray rgb
    VtFloatArray alpha

    ToVtArray(Color32[])

    Declaration
    public static VtVec4fArray ToVtArray(Color32[] input)
    Parameters
    Type Name Description
    Color32[] input
    Returns
    Type Description
    VtVec4fArray

    ToVtArray(Color32[], out VtVec3fArray, out VtFloatArray)

    Declaration
    public static void ToVtArray(Color32[] input, out VtVec3fArray rgb, out VtFloatArray alpha)
    Parameters
    Type Name Description
    Color32[] input
    VtVec3fArray rgb
    VtFloatArray alpha

    ToVtArray(Matrix4x4[])

    Declaration
    public static VtMatrix4dArray ToVtArray(Matrix4x4[] input)
    Parameters
    Type Name Description
    Matrix4x4[] input
    Returns
    Type Description
    VtMatrix4dArray

    ToVtArray(Quaternion[])

    Declaration
    public static VtQuatfArray ToVtArray(Quaternion[] input)
    Parameters
    Type Name Description
    Quaternion[] input
    Returns
    Type Description
    VtQuatfArray

    ToVtArray(Vector2[])

    Declaration
    public static VtVec2fArray ToVtArray(Vector2[] input)
    Parameters
    Type Name Description
    Vector2[] input
    Returns
    Type Description
    VtVec2fArray

    ToVtArray(Vector3[])

    Declaration
    public static VtVec3fArray ToVtArray(Vector3[] input)
    Parameters
    Type Name Description
    Vector3[] input
    Returns
    Type Description
    VtVec3fArray

    ToVtArray(Vector4[])

    Declaration
    public static VtVec4fArray ToVtArray(Vector4[] input)
    Parameters
    Type Name Description
    Vector4[] input
    Returns
    Type Description
    VtVec4fArray

    Vec2fToVector2(GfVec2f)

    Declaration
    public static Vector2 Vec2fToVector2(GfVec2f value)
    Parameters
    Type Name Description
    GfVec2f value
    Returns
    Type Description
    Vector2

    Vec3fToVector3(GfVec3f)

    Declaration
    public static Vector3 Vec3fToVector3(GfVec3f v3)
    Parameters
    Type Name Description
    GfVec3f v3
    Returns
    Type Description
    Vector3

    Vec4fToColor(GfVec4f)

    Declaration
    public static Color Vec4fToColor(GfVec4f v)
    Parameters
    Type Name Description
    GfVec4f v
    Returns
    Type Description
    Color

    Vec4fToColor32(GfVec4f)

    Declaration
    public static Color32 Vec4fToColor32(GfVec4f v)
    Parameters
    Type Name Description
    GfVec4f v
    Returns
    Type Description
    Color32

    Vec4fToRect(GfVec4f)

    Declaration
    public static Rect Vec4fToRect(GfVec4f v4)
    Parameters
    Type Name Description
    GfVec4f v4
    Returns
    Type Description
    Rect

    Vec4fToVector4(GfVec4f)

    Declaration
    public static Vector4 Vec4fToVector4(GfVec4f v4)
    Parameters
    Type Name Description
    GfVec4f v4
    Returns
    Type Description
    Vector4

    Vector2ToVec2f(Vector2)

    Declaration
    public static GfVec2f Vector2ToVec2f(Vector2 vec2)
    Parameters
    Type Name Description
    Vector2 vec2
    Returns
    Type Description
    GfVec2f

    Vector3ToVec3f(Vector3)

    Declaration
    public static GfVec3f Vector3ToVec3f(Vector3 vec3)
    Parameters
    Type Name Description
    Vector3 vec3
    Returns
    Type Description
    GfVec3f

    Vector4ToVec4f(Vector4)

    Declaration
    public static GfVec4f Vector4ToVec4f(Vector4 vector4)
    Parameters
    Type Name Description
    Vector4 vector4
    Returns
    Type Description
    GfVec4f
    Back to top
    Copyright © 2023 Unity Technologies
    • Legal
    • Privacy Policy
    • Cookies
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)
    "Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
    Generated by DocFX on Thursday, October 19, 2023