Skip to content

Commit a114476

Browse files
committed
feat: allow non-standard bones
1 parent 5491d98 commit a114476

4 files changed

Lines changed: 142 additions & 136 deletions

File tree

examples/marionette.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ async fn main() -> VMCResult<()> {
1212
for message in vmc::parse(packet)? {
1313
match message {
1414
VMCMessage::BoneTransform(transform) => {
15-
println!("\tTransform bone: {} (pos {:?}; rot {:?})", transform.bone.as_ref(), transform.position, transform.rotation)
15+
println!("\tTransform bone: {} (pos {:?}; rot {:?})", transform.bone, transform.position, transform.rotation)
1616
}
1717
VMCMessage::DeviceTransform(transform) => {
1818
println!("\tTransform device ({:?}): {} (pos {:?}; rot {:?})", transform.device, transform.joint, transform.position, transform.rotation)

examples/performer.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
use std::time::Instant;
22

33
use vmc::{
4-
UnitQuaternion, VMCApplyBlendShapes, VMCBlendShape, VMCBone, VMCBoneTransform, VMCModelState, VMCResult, VMCStandardVRMBlendShape, VMCState, VMCTime,
5-
Vector3
4+
UnitQuaternion, VMCApplyBlendShapes, VMCBlendShape, VMCBoneTransform, VMCModelState, VMCResult, VMCStandardVRM0Bone, VMCStandardVRMBlendShape, VMCState,
5+
VMCTime, Vector3
66
};
77

88
#[tokio::main]
@@ -18,14 +18,14 @@ async fn main() -> VMCResult<()> {
1818
.await?;
1919
socket
2020
.send(VMCBoneTransform::new(
21-
VMCBone::LeftEye,
21+
VMCStandardVRM0Bone::LeftEye,
2222
Vector3::new(-0.016136881, 0.061875343, 0.02154272),
2323
UnitQuaternion::from_euler_angles((start.elapsed().as_secs_f32().cos()) * 0.05, (start.elapsed().as_secs_f32().sin()) * 0.05, 0.)
2424
))
2525
.await?;
2626
socket
2727
.send(VMCBoneTransform::new(
28-
VMCBone::RightEye,
28+
VMCStandardVRM0Bone::RightEye,
2929
Vector3::new(0.016136864, 0.061875224, 0.02154272),
3030
UnitQuaternion::from_euler_angles((start.elapsed().as_secs_f32().cos()) * 0.05, (start.elapsed().as_secs_f32().sin()) * 0.05, 0.)
3131
))

src/lib.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,10 @@ use self::udp::UDPSocketStream;
2525
pub use self::{
2626
error::{VMCError, VMCResult},
2727
message::{
28-
parse, ApplyBlendShapes as VMCApplyBlendShapes, BlendShape as VMCBlendShape, Bone as VMCBone, BoneTransform as VMCBoneTransform,
29-
CalibrationMode as VMCCalibrationMode, CalibrationState as VMCCalibrationState, DeviceTransform as VMCDeviceTransform, DeviceType as VMCDeviceType,
30-
ModelState as VMCModelState, RootTransform as VMCRootTransform, StandardVRMBlendShape as VMCStandardVRMBlendShape, State as VMCState, Time as VMCTime,
31-
TrackingState as VMCTrackingState, VMCMessage
28+
parse, ApplyBlendShapes as VMCApplyBlendShapes, BlendShape as VMCBlendShape, BoneTransform as VMCBoneTransform, CalibrationMode as VMCCalibrationMode,
29+
CalibrationState as VMCCalibrationState, DeviceTransform as VMCDeviceTransform, DeviceType as VMCDeviceType, ModelState as VMCModelState,
30+
RootTransform as VMCRootTransform, StandardVRM0Bone as VMCStandardVRM0Bone, StandardVRMBlendShape as VMCStandardVRMBlendShape, State as VMCState,
31+
Time as VMCTime, TrackingState as VMCTrackingState, VMCMessage
3232
},
3333
osc::{IntoOSCArgs, IntoOSCMessage, IntoOSCPacket, OSCPacket, OSCType}
3434
};

0 commit comments

Comments
 (0)