// Copyright (c) 2012-2023 Wojciech Figat. All rights reserved.
#pragma once
#include "Types.h"
#if COMPILE_WITH_ASSETS_IMPORTER
#if COMPILE_WITH_PHYSICS_COOKING
#include "Engine/Physics/CollisionCooking.h"
#endif
///
/// Creating collision data asset utility
///
class CreateCollisionData
{
public:
///
/// Creates the CollisionData.
///
/// The creating context.
/// Result.
static CreateAssetResult Create(CreateAssetContext& context);
#if COMPILE_WITH_PHYSICS_COOKING
///
/// Cooks the mesh collision data and saves it to the asset using format.
///
/// The output path.
/// The input argument data.
/// True if failed, otherwise false. See log file to track errors better.
static bool CookMeshCollision(const String& outputPath, CollisionCooking::Argument& arg);
#endif
};
#endif