///|
#module("three/addons/utils/BufferGeometryUtils.js")
extern "js" fn merge_geometries_ffi(
geometries : FixedArray[BufferGeometry],
use_groups : Bool,
) -> Nullable[BufferGeometry] = "mergeGeometries"
///|
/// Inputs must have compatible attributes and indexing. Incompatible inputs return None.
pub fn merge_geometries(
geometries : FixedArray[BufferGeometry],
use_groups : Bool,
) -> BufferGeometry? {
if geometries.length() == 0 {
return None
}
merge_geometries_ffi(geometries, use_groups).to_option()
}
///|
#module("three/addons/utils/BufferGeometryUtils.js")
pub extern "js" fn merge_vertices(
geometry : BufferGeometry,
tolerance : Double,
) -> BufferGeometry = "mergeVertices"
///|
#module("three/addons/utils/BufferGeometryUtils.js")
pub extern "js" fn to_creased_normals(
geometry : BufferGeometry,
crease_angle : Double,
) -> BufferGeometry = "toCreasedNormals"