Omniverse Hoops Converter [omni.kit.converter.hoops_core]
This extension provides interfaces to convert 3D formats to USD and also supports to convert USD to those assets.
Overview
omni.kit.converter.hoops_core
uses the HOOPS Exchange SDK to convert a variety of CAD data formats to USD.
When this extension loads, it will register itself with the CAD Converter service (omni.services.convert.cad
) if it is available.
Note
As of version 201.1.0, omni.kit.converter.cad_core
has been deprecated. Its functionality has been divided between two extensions: omni.kit.converter.hoops
(UI extension) and omni.kit.converter.hoops_core
(headless extension).
CAD CONVERTER CONFIG FILE INPUTS:
Conversion options are configured by supplying a JSON file. Below are the available configuration options.
JSON Converter Settings:
Format: “setting name” : default value
Converter Option: Instancing
Description: If true the USD model uses instancing by creating USD References. If false, then there is no instancing at all.
Default Value: true Value Ranges: true, false Data Format: bool
Config File Example:
"bInstancing" : true
Converter Option: Global Xforms
Description: When bInstancing is set to false, this flag controls whether globalXforms are composited. If false local transforms are applied.
Default Value: false Value Ranges: true, false Data Format: bool
"bGlobalXforms" : false
Converter Option: Tessellation Level of Detail (LOD)
Description: Tessellation levels of detail presets provide values to define ChordHeightRatio and AngleToleranceDeg; 0 is the lowest level (ExtraLow) while 4 is the highest level (ExtraHigh)
Default Value: 2 Value Ranges: [0, 4]
0,
iTessLOD0
= ExtraLow, ChordHeightRatio=50, AngleToleranceDeg=40,1,
iTessLOD1
= Low, ChordHeightRatio=600, AngleToleranceDeg=40,2,
iTessLOD2
= Medium, ChordHeightRatio=2000, AngleToleranceDeg=40,3,
iTessLOD3
= High, ChordHeightRatio=5000, AngleToleranceDeg=30,4,
iTessLOD4
= ExtraHigh, ChordHeightRatio=10000, AngleToleranceDeg=20. Data Format: integer
"iTessLOD" : 2
Converter Option: Accurate Surface Curvatures
Description: If true, respect surface curvature to control triangles elongation directions.
Default Value: true Value Ranges: true, false Data Format: bool
"bAccurateSurfaceCurvatures" : true
Converter Option: Generate UVs
Description: If true, calls Scene Optimizer Service Kit extension to generate UVs if missing in source data.
NOTE: See Scene Optimizer Service documentation for details: https://docs.omniverse.nvidia.com/kit/docs/omni.services.scene.optimizer/latest/overview.html
Default Value: true Value Ranges: true, false Data Format: bool
Config File Example:
"bOptimize" : true
Converter Option: Dedup Mesh Vertices
Description: If true, weld mesh elements in appropriate groups.
Default Value: true Value Ranges: true, false Data Format: bool
Config File Example:
"bDedup" : true
Converter Option: Use Materials
Description: If true converter creates OmniPBR materials with the color set as an attribute. If false converter will convert colors to USD displayColor
primvars.
Default Value: true Value Ranges: true, false Data Format: bool
Config File Example:
"bUseMaterials" : true
Converter Option: Use Normals
Description: If true then we pass normals to USD. if false, then we do not.
Default Value: true Value Ranges: true, false Data Format: bool
Config File Example:
"bUseNormals" : true
Converter Option: Report Progress
Description: If true then we report import/export progress.
Default Value: true Value Ranges: true, false Data Format: bool
Config File Example:
"bReportProgress" : true
Converter Option: Use Current Stage
Description: If true use currently opened USD.
Default Value: true Value Ranges: true, false Data Format: bool
"bUseCurrentStage" : false
Converter Option: Convert Curves
Description: If true, convert curve elements into USD Basis Curves; else, ignore these elements.
Default Value: false Value Ranges: true, false Data Format: bool
"bConvertCurves" : false,
Converter Option: Convert Metadata
Description: If true then metadata, including PMI, are imported as USD Attributes; else, metadata are ignored.
Default Value: false Value Ranges: true, false Data Format: bool
"bConvertMetadata" : false,
Full sample_config.json
:
{
"bInstancing" : true,
"bGlobalXforms" : false,
"bConvertHidden" : true,
"bOptimize" : true,
"bDedup" : true,
"iTessLOD" : 2,
"bAccurateSurfaceCurvatures" : true,
"bUseNormals" : true,
"bUseMaterials" : true,
"bReportProgress" : true,
"bUseCurrentStage" : false,
"bConvertCurves" : false,
"bConvertMetadata" : false
}
Licensing Terms of Use and Third-Party Notices
The omni.kit.converter.hoops_core
and related CAD converter Extensions are Omniverse Core Extensions.
Do not redistribute or sublicense without express permission or agreement.
Please read the Omniverse License Agreements and the Third_Party_Notices.md for detailed license information.