awsm 0.0.11

Wrappers for WASM
Documentation
pub struct Material {
  metallic_roughness_values: [f32;2],
  base_color_factor: [f32;4],
  base_color_sampler_index: Option<u32>,
  metallic_roughness_sampler_index: Option<u32>,
  normal: Option<NormalMaterial>,
  occlusion: Option<OcclusionMaterial>,

  emissive_factor: Option<[f32;3]>,
  emissive_sampler_index: Option<u32>,

  alpha_mode: Option<AlphaMode>, 
  alpha_cutoff: Option<f32>,
  double_sided: Option<bool>,
}

pub struct NormalMaterial {
    scale: f64,
    sampler_index: u32,
}

pub struct OcclusionMaterial {
    strength: f64,
    sampler_index: u32,
}

pub enum AlphaMode {
    Opaque,
    Mask,
    Blend
}

pub struct TextureInfo {
    index: Option<u32>,
    coord: Option<f32>,
}

pub struct PbrMetallicRoughnessMaterial {
    base_color_factor: Option<[f32;4]>,
    base_color_texture: Option<TextureInfo>,
    metallic_factor: Option<f32>,
    roughness_factor: Option<f32>,
    metallic_roughness_texture: Option<TextureInfo>
}

pub struct NormalTextureInfo {
    texture_info: TextureInfo,
    scale: Option<f32>
}

pub struct OcclusionTextureInfo {
    texture_info: TextureInfo,
    strength: Option<f32>
}