build#

NyxPyRenderer.build(pair_list)[source]#

Start the native renderer and allocate all GPU buffers.

Must be called exactly once after the Genesis scene has been built and the scene-description JSON has been exported by NyxSceneExporter. Inspects the active Genesis solvers to determine vertex / triangle / camera counts, then:

  1. Starts the Nyx native renderer with the configured viewport size, render mode, and debug view.

  2. Loads the scene description from scene_file_path.

  3. Allocates Nyx scene buffers sized for current geometry.

  4. Allocates and pins this wrapper’s interop CUDA tensors.

  5. Uploads the static deformable data (UVs, triangle indices) for FEM / PBD / MPM-visual entities. MPM-recon meshes are streamed per frame.

Parameters:

pair_list (list of tuple) – (entity, uuid) pairs from NyxSceneExporter._entity_uuid_pairs. Used to populate the rigid- and deformable-geometry reference tables so per-frame transforms can be matched to the right scene instances.

Notes

If any MPM-recon entities are present this also primes the configured reconstruction backend (openvdb or splashsurf) with a one-particle call so missing dependencies fail at build time rather than on the first rendered frame.