Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/msub2/aframe-exokit-avatars
A wrapper for the Exokit Avatars system in an A-Frame component.
https://github.com/msub2/aframe-exokit-avatars
avatar avatars exokit vr webxr
Last synced: 14 days ago
JSON representation
A wrapper for the Exokit Avatars system in an A-Frame component.
- Host: GitHub
- URL: https://github.com/msub2/aframe-exokit-avatars
- Owner: msub2
- License: mit
- Created: 2022-04-17T07:09:00.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-03-08T03:01:48.000Z (over 1 year ago)
- Last Synced: 2024-10-28T17:38:46.726Z (19 days ago)
- Topics: avatar, avatars, exokit, vr, webxr
- Language: JavaScript
- Homepage: https://msub2.github.io/aframe-exokit-avatars/examples/
- Size: 2.92 MB
- Stars: 19
- Watchers: 4
- Forks: 6
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-metaverse - Exokit Avatar Component - Importing full IK avatars into aframe (Social VR / Open Source Frameworks)
README
# A-Frame Exokit Avatars
This A-Frame component provides an easy way to integrate a full-body IK avatar in WebXR through [my fork](https://github.com/msub2/avatars) of the [Exokit Avatars](https://github.com/exokitxr/avatars) system.
## Usage
The following is the most basic scene setup that will load in an avatar:
```html
A-Frame Exokit Avatars
```
## Considerations
- If implementing some form of touchpad or thumbstick movement, ensure your avatar is not parented under the player/camera rig object, as this will prevent the leg IK from functioning properly.
- By default, the `tracked-controls` component in A-Frame reports controller pose based on target ray space by default instead of grip space (refer to the [WebXR Device API](https://immersive-web.github.io/webxr/#dom-xrinputsource-targetrayspace) for more details). It's more than likely there might be some noticeable offset in the hand positions from where your controllers are. There is currently an [open PR](https://github.com/aframevr/aframe/pull/5040) to let grip space be used for pose reporting, but in the meantime you may want to apply some manual offset to your controller pose to compensate.## Schema
| Property | Type | Description | Default Value |
| ----------- | -------- | ---------------------------------------------------------------- | ------------- |
| model | model | A selector or path to an avatar model | |
| thirdPerson | boolean | Whether this is an avatar for a different player than the user | false |
| player | selector | An element representing the player/camera rig | #player |
| head | selector | An element representing the main camera of the scene | #head |
| leftHand | selector | An element representing the tracked left hand | #leftHand |
| rightHand | selector | An element representing the tracked right hand | #rightHand |
| fingers | bool | Whether or not to animate finger poses (point, grip) | true |
| hair | bool | Whether or not to animate hair | true |
| decapitate | bool | Whether or not to remove the head of the model | false |
| visemes | bool | Whether or not to animate visemes on the model (mouth, blinking) | true |
| muted | bool | Whether or not to passthrough mic audio into the page. | true |
| debug | bool | Whether or not to render debug meshes. | false |