use gltf_derive::Validate; use serde_derive::{Deserialize, Serialize}; #[cfg(feature = "extensions")] use serde_json::{Map, Value}; /// A camera's projection. /// /// A node can reference a camera to apply a transform to place the camera in the /// scene. #[derive(Clone, Debug, Default, Deserialize, Serialize, Validate)] pub struct Camera { #[cfg(feature = "extensions")] #[serde(default, flatten)] pub others: Map, } /// Values for an orthographic camera. #[derive(Clone, Debug, Default, Deserialize, Serialize, Validate)] pub struct Orthographic { #[cfg(feature = "extensions")] #[serde(default, flatten)] pub others: Map, } /// Values for a perspective camera. #[derive(Clone, Debug, Default, Deserialize, Serialize, Validate)] pub struct Perspective { #[cfg(feature = "extensions")] #[serde(default, flatten)] pub others: Map, }