Feature: ID:001 - Minimal - Base#

Description#

The minimal placeable visual feature comprises a list of requirements that enable the digital representation of a real world object to be visualized in a broad range of applications.

It additionally provides a list of requirements to ensure that the scale, units and placement of the object may be correctly represented, so that the object can be placed and aggregated with other objects in a scene.

Neutral Format#

Version 0.1.0#

Details

Property

Value

Internal ID

FET001_BASE_NEUTRAL

Used in Profiles#

This version is used in the following profiles:

Requirements#

Pipelines Supported for this Feature#

Source file type:

  • .blend

    • Via Blender SimReady Add-ons

  • .mjcf

    • Via Blender SimReady Add-ons + MJCF2USD Tool

  • .step

    • Via Blender SimReady Add-ons + CAD Converter

Samples#

Test Process#

  • Obtain the usd sdk

  • Confirm your asset in question has passed validation

  • In your commandline type:

    • path/to/usdsdk/scripts/usdrecord <path to usdfile.usd> <path to output.png>

  • Open up path/to/output.png

  • Expected Result:

    • Confirm it is NOT empty or completely black

    • Example image: image1

Version 1.0.0#

Details

Requirements#

Samples#

Test Process#

Runtime Validation with SimReady Testing Framework#

The Minimal Placeable Visual feature includes automated runtime tests using the SimReady Foundation testing framework. The tests verify:

  • Asset loads without warnings or errors (AA.002)

  • Proper camera framing of geometry (VG.002)

  • Correct transformation and positioning (HI.001, HI.003, HI.004)

  • Valid renderable geometry (VG.MESH.001, VG.027)

  • Correct winding order and normals (VG.028, VG.029)

  • Proper origin positioning (VG.025)

Prerequisites:

  • Configure runner info in local_run/runners_info.toml with paths to Isaac Sim or Kit engine

  • See local_run/runners_info_setup.md for setup instructions

Configuring Test Segments:

The runtime test is divided into segments that can be enabled/disabled in nv_core/testing_tools/test_definitions/kit_test/feature_vis_fet_001.toml:

  • S0: Presence check (verifies asset has visible geometry) - enabled by default

  • S1: Light response test (validates VG.027, VG.028, VG.029) - produces video

  • S2: Backface culling Z-axis test (validates VG.029 winding order) - produces videos

  • S3: Backface culling X-axis test (validates VG.029 winding order) - produces videos

  • S4: Pivot positioning test (validates VG.025 origin placement) - produces videos

  • S5: Normal direction test (validates VG.028 normals validity) - produces videos

To enable all segments, edit the [TestConfig] section in the TOML file:

[TestConfig]
# Enable all segments for full MPV validation
segments = "S0,S1,S2,S3,S4,S5"

Note: S0 only validates presence and does not produce video outputs. To get visual validation videos, enable S1-S5.

To run runtime tests:

  1. Generate test batch for specific assets (Manual mode):

    cd nv_core/testing_tools/testing_framework/source
    
    # Test a specific asset
    python batch_maker/batch_maker.py \
      --project_root "C:\path\to\simready_foundation" \
      --tests "feature_vis_fet_001" \
      --manual_assets "sample_content/common_assets/props_general/my_asset/my_asset.usd"
    

    Or generate tests for all conforming assets (uses search functions):

    python batch_maker/batch_maker.py \
      --project_root "C:\path\to\simready_foundation"
    
  2. Execute tests locally:

    python job_runner/job_runner.py "..\..\..\..\..\_testing\batch_jobs\local_test_windows.json"
    
  3. Generate HTML report:

    python report_generator/report_generator.py --output_dir "..\..\..\..\..\_testing"
    
  4. View results: Open _testing\index.html in a web browser

For detailed documentation, see nv_core/testing_tools/testing_framework/source/REPORT_USAGE.md