bevy_vrm1 0.5.0

Allows you to use VRM and VRMA in Bevy
Documentation
use bevy::prelude::*;
use serde::{Deserialize, Serialize};

#[derive(Serialize, Deserialize, Debug, Clone, Reflect)]
#[reflect(Serialize, Deserialize)]
pub struct Rotation {
    pub source: usize,
    pub weight: f32,
}

#[derive(Serialize, Deserialize, Debug, Clone, Reflect)]
#[reflect(Serialize, Deserialize)]
pub struct Roll {
    #[serde(rename = "rollAxis")]
    pub roll_axis: String,
    pub source: usize,
    pub weight: f32,
}

#[derive(Serialize, Deserialize, Debug, Clone, Reflect)]
#[reflect(Serialize, Deserialize)]
pub struct Aim {
    #[serde(rename = "aimAxis")]
    pub aim_axis: String,
    pub source: usize,
    pub weight: f32,
}

#[derive(Serialize, Deserialize, Debug, Clone, Reflect)]
#[reflect(Serialize, Deserialize)]
pub struct Constraint {
    pub rotation: Option<Rotation>,
    pub roll: Option<Roll>,
    pub aim: Option<Aim>,
}

#[derive(Serialize, Deserialize, Debug, Clone, Reflect)]
#[reflect(Serialize, Deserialize)]
pub struct VrmcNodeConstraint {
    pub constraint: Constraint,
    #[serde(rename = "specVersion")]
    pub spec_version: String,
}