use anyhow::Result;
use crate::sdf::{Path, Value, Variability};
use crate::usd::Stage;
pub(super) use crate::schemas::common::{author_uniform_token_vec as author_uniform_token_array, varying_attribute};
pub(super) fn author_uniform_matrix4d_array(
stage: &Stage,
prim: &Path,
name: &str,
matrices: Vec<[f64; 16]>,
) -> Result<()> {
let attr_path = prim.append_property(name)?;
stage
.create_attribute(attr_path, "matrix4d[]")?
.set_variability(Variability::Uniform)?
.set_custom(false)?
.set(Value::Matrix4dVec(matrices))?;
Ok(())
}