nsi-trait 0.3.0

Core traits and types for the Nodal Scene Interface – ɴsɪ.
Documentation
  • Coverage
  • 88.24%
    135 out of 153 items documented0 out of 8 items with examples
  • Size
  • Source code size: 45.52 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 1.42 MB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 9s Average build duration of successful builds.
  • all releases: 9s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • Homepage
  • virtualritz/nsi
    16 1 1
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • virtualritz

nsi-trait

Core traits and types for the Nodal Scene Interface (ɴsɪ).

This crate defines the renderer-agnostic abstractions used by the rest of the nsi ecosystem:

  • TypeNSIType_t mirror (F32, F64, I32, I64, Color, Point, Vector, Normal, MatrixF32, MatrixF64, …) with values binary-compatible with the C header.
  • FfiParam — a repr(C) parameter struct, layout-compatible with NSIParam_t.
  • FlagsNSIParam_t.flags bits.
  • Action / StoppingStatus / ErrorLevel — render-control enums.
  • Parameter trait — what a single typed parameter looks like.
  • Nsi trait — the renderer surface (create, delete, connect, set_attribute, …).
  • NodeType — every standard ɴsɪ node type, including mesh, curves, nurbs, volume, the cameras, outputdriver, outputlayer, etc.

This crate is no_std-friendly except for the optional ustr feature, which switches the Name alias to ustr::Ustr for cheap interned handles.

License

Licensed under either of

  • Apache License, Version 2.0
  • MIT license
  • zlib License

at your option.