audionimbus 0.13.0

A safe wrapper around Steam Audio that provides spatial audio capabilities with realistic occlusion, reverb, and HRTF effects, accounting for physical attributes and scene geometry.
Documentation
use super::Vector3;

/// A ray in 3D space.
#[derive(Default, Debug, Copy, Clone, PartialEq)]
pub struct Ray {
    /// Origin of the ray.
    pub origin: Vector3,

    /// Unit vector direction of the ray.
    pub direction: Vector3,
}

impl From<Ray> for audionimbus_sys::IPLRay {
    fn from(ray: Ray) -> Self {
        Self {
            origin: ray.origin.into(),
            direction: ray.direction.into(),
        }
    }
}

impl From<audionimbus_sys::IPLRay> for Ray {
    fn from(ray: audionimbus_sys::IPLRay) -> Self {
        Self {
            origin: ray.origin.into(),
            direction: ray.direction.into(),
        }
    }
}