3b / 3b-openxr

more-or-less working OpenXR bindings + wrappers for Common Lisp
4 stars 2 forks source link
common-lisp openxr

3b-openxr

More-or-less working OpenXR bindings + wrappers.

API isn't completely finalized, in particular some functions that return plists might be changed to return structs or CLOS instances, and some things may be changed to fill in existing data structures instead of consing new data on every call. Might also store current session in a special var and make session argument implicit. See issue 1 for discussion, and add comments for things you would like to see changed (or not changed) if you intend to use 3b-openxr seriously.

Contains generated low-level binding for (almost) everything in 1.0.27, and wrappers for most of core and some extensions.

Tested with SteamVR's OpenXR runtime on Win32 with OpenGL. Other graphics/windowing APIs aren't implemented yet, but should be simple to add.

see https://github.com/3b/3b-openxr-example for usage examples.

Supported API packages:

Internal package:

General usage: see example.lisp