https://github.com/manorajesh/usdcat
terminal-based viewer for USD scenes
https://github.com/manorajesh/usdcat
ascii terminal usd
Last synced: 5 months ago
JSON representation
terminal-based viewer for USD scenes
- Host: GitHub
- URL: https://github.com/manorajesh/usdcat
- Owner: manorajesh
- License: mit
- Created: 2025-12-23T09:17:47.000Z (5 months ago)
- Default Branch: master
- Last Pushed: 2026-01-01T19:30:28.000Z (5 months ago)
- Last Synced: 2026-01-04T13:29:35.002Z (5 months ago)
- Topics: ascii, terminal, usd
- Language: C++
- Homepage:
- Size: 90.8 KB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# usdcat
[](https://github.com/manorajesh/usdcat/actions/workflows/build.yml)
A lightweight C++ terminal-based viewer for USD (Universal Scene Description) scenes. Renders USD files as ASCII/Unicode art directly in your terminal.
## Features
- Fast terminal rendering using ncurses
- Real-time 3D visualization in ASCII/Unicode
- Interactive camera controls
- Minimal dependencies
## Dependencies
- CMake 3.10+
- C++17 compiler
- Eigen3
- ncurses
- USD (Universal Scene Description)
## Building
```bash
mkdir build && cd build
cmake ..
make
```
## Usage
```bash
./build/usdcat
```
## Debug
To enable debugging with symbol information on MacOS, ensure that the debug symbols in the executable and the dSYM bundle match. You can verify this using the following commands:
```bash
# generate one if missing
dsymutil ./usdcat -o ./usdcat.dSYM
# verify UUIDs match (they MUST match)
dwarfdump --uuid ./usdcat ./usdcat.dSYM
```
Profile in Instruments for example by attaching to a running process.
### Controls
- Arrow keys: Rotate camera
- `w`/`s`: Zoom in/out
- `q`: Quit
## License
MIT