NatNet's client/server architecture allows client applications to run on the same system as the tracking software (Motive, ARENA or Tracking Tools), on separate system(s), or both. The SDK integrates seamlessly with standard APIs (C/C++/.NET), tools (Microsoft Visual Studio) and protocols (UDP/Unicast/Multicast). Using the NatNet SDK, developers can quickly integrate OptiTrack motion tracking data into new and existing applications, including custom plugins to third-party applications and engines for real-time streaming.
Native C++ networking library [headers, static library (.lib) and dynamic import library (.lib/.dll)]
Managed .NET assembly (NatNetML.dll) for use in .NET compatible clients.
Sample projects and executables designed to be quickly integrated into your own code.
.NET interface and sample program (MatNet.m) for live streaming markers, rigid bodies, or skeletons. The MatNet sample program works directly with MATLAB core, requiring no additional MATLAB modules.
A class for communicating with a NatNet Server such as Motive, Arena or Tracking Tools.
A class for implementing a NatNet server and sending NatNet formatted data packets. Useful for testing your NatNet integration without access to OptiTrack motion capture software.
Structures encapsulating data encoded in NatNet packets.
A managed (.NET) class library that can be called by .NET components. The NatNet assembly wraps the underlying native NatNet library, exposing the NatNetClient and NatNet Data Types for use in .NET compatible environments (e.g. VB.NET, C#, MatLab).
A named collection of identified markers and their positions (X,Y,Z).
A named segment with a unique ID, position, and orientation data, and the collection of identified markers used to define it.
A named, hierarchical collection of rigid bodies.