# Hello World: Load USD and Step

This tutorial shows the smallest end-to-end ovphysx workflow: create an instance, load a USD file, step simulation, and clean up resources. You can use this flow as the starting point for larger integrations.

## Prerequisites

- Install ovphysx and confirm native libraries load in your environment.
- Prepare a readable USD file for the sample call.

## Code Language

::::{tab-set}

:::{tab-item} Python
Install the package first:

```bash
pip install ovphysx
```

```{literalinclude} ../../tests/python_samples/hello_world.py
:language: python
:lines: 8-
```

:::

:::{tab-item} C

**CMakeLists.txt**

Every C sample uses `find_package(ovphysx)` and links against `ovphysx::ovphysx`. Here is the `CMakeLists.txt` for `hello_world_c`:

```{literalinclude} ../../tests/c_samples/hello_world_c/CMakeLists.txt
:language: cmake
```

Build by pointing `CMAKE_PREFIX_PATH` at the installed SDK (see {doc}`quickstart` for details).

**Source**

```{literalinclude} ../../tests/c_samples/hello_world_c/main.c
:language: c
:lines: 13-77
```

:::

::::

## Result

After this tutorial, you can step the simulation from both Python and C and release all resources cleanly.
