{"id":17825407,"url":"https://github.com/thebutlah/ovr_overlay","last_synced_at":"2025-03-18T17:30:49.944Z","repository":{"id":41876991,"uuid":"472186799","full_name":"TheButlah/ovr_overlay","owner":"TheButlah","description":"Rust OpenVR bindings using an up-to-date OpenVR and autocxx","archived":false,"fork":false,"pushed_at":"2023-08-13T04:31:44.000Z","size":63,"stargazers_count":7,"open_issues_count":8,"forks_count":9,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-08T18:52:37.073Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://docs.rs/ovr_overlay","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/TheButlah.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-03-21T04:33:15.000Z","updated_at":"2024-03-07T08:17:29.000Z","dependencies_parsed_at":"2024-10-27T18:24:47.656Z","dependency_job_id":"b6875d5a-c54a-461c-8fec-6a0231e823d9","html_url":"https://github.com/TheButlah/ovr_overlay","commit_stats":{"total_commits":37,"total_committers":3,"mean_commits":"12.333333333333334","dds":"0.29729729729729726","last_synced_commit":"9bead69aa514f8e1da273642cbc2a5e5589a7a26"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheButlah%2Fovr_overlay","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheButlah%2Fovr_overlay/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheButlah%2Fovr_overlay/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheButlah%2Fovr_overlay/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TheButlah","download_url":"https://codeload.github.com/TheButlah/ovr_overlay/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243945543,"owners_count":20372896,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-27T18:05:29.540Z","updated_at":"2025-03-18T17:30:49.939Z","avatar_url":"https://github.com/TheButlah.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ovr_overlay\nAn alternative to the [`openvr`](https://github.com/rust-openvr/rust-openvr)\ncrate that uses [`autocxx`](docs.rs/autocxx) instead of bindgen, and focuses on providing support for\noverlays.\n\n## Goals\nNew applications should probably seek to use `OpenXR` instead of `OpenVR`. However,\nthere are still some things that you can't do in `OpenXR` that you *can* do in `OpenVR`,\nnamely, creating overlays.\n\nThis binding allows you to create an OpenVR overlay with rust, but doesnt necessarily\nprovide bindings to the rest of the OpenVR API. If you find missing functionality\n(and you *will* find missing functionality), submit a PR!\n\n### Why not build bindings on the C API?\nThe C API is straight up broken in the official repository. The latest release\ndoesn't even compile, and hasn't for [over two years](https://github.com/ValveSoftware/openvr/issues/1642).\nWhats more, the C bindings don't have the same safety features as the C++ API,\neschewing the use of `const`, etc. Furthermore, the C API is autogenerated from\nthe C++ one, and isn't documented like the C++ one is.\n\n### Why not use the existing `openvr` crate?\nThat crate hasn't been updated in over 2 years. And I don't blame them, time is better\nspent getting first class support for OpenXR in Rust, as OpenVR is on its way out.\n\nUnfortunately, that crate is missing all of the overlay functionality, and since I'm\nreally just focused on overlays right now, I need an alternative.\n\n## SemVer\nWe make no SemVer guarantees until we reach version 0.1.0 or greater. Until then,\neverything and anything may change in a breaking way.\n\n## Building\nWe vendor the `OpenVR` library as a git submodule. So either clone with `--recursive`\nor run `git submodule update --init` after cloning.\n\nYou will also need `libclang` installed, as its required by the `cxx` and `autocxx`\ncrates to generate the bindings.\n\n## License\nAll code in this repository is dual-licensed under either:\n\n- MIT License ([LICENSE-MIT](docs/LICENSE-MIT) or http://opensource.org/licenses/MIT)\n- Apache License, Version 2.0 ([LICENSE-APACHE](docs/LICENSE-APACHE) or http://www.apache.org/licenses/LICENSE-2.0)\n\nat your option. This means you can select the license you prefer! This dual-licensing approach is the de-facto standard in the Rust ecosystem and there are very good reasons to include both.\n\nUnless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthebutlah%2Fovr_overlay","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthebutlah%2Fovr_overlay","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthebutlah%2Fovr_overlay/lists"}