// SPDX-FileCopyrightText: 2023 Unity Technologies and the Draco for Unity authors
// SPDX-License-Identifier: Apache-2.0
using System;
using UnityEngine;
namespace Draco
{
///
/// Decode setting.
///
[Flags]
public enum DecodeSettings
{
///
/// No setting active.
///
None = 0,
///
/// If this is set to true (or is true), a normals vertex attribute is added
/// regardless whether the Draco data contains actual normals. If they are missing, normals get calculated
/// whenever a is returned. When is used, normals have to be
/// calculated manually afterwards.
///
///
RequireNormals = 1,
///
/// If this is set to true, normals and tangents vertex attributes are added regardless whether the Draco data
/// contains actual normals. If they are missing, normals and tangents get calculated whenever
/// a is returned. When is used, normals and tangents have to be
/// calculated manually afterwards.
///
RequireTangents = 1 << 1,
///
/// Enforces vertex buffer layout with highest compatibility. Enable this if you want to use blend shapes on the
/// resulting mesh.
///
ForceUnityVertexLayout = 1 << 2,
///
/// If true, coordinate space is converted from right-hand (like in glTF) to left-hand (Unity) by inverting the
/// x-axis.
///
ConvertSpace = 1 << 3,
///
/// Require both tangents and normals. Useful since tangents imply requirement for normals.
///
RequireNormalsAndTangents = RequireNormals | RequireTangents,
///
/// Default decode flags. Only space conversion is enabled.
///
Default = ConvertSpace
}
}