// Copyright (c) 2012-2023 Wojciech Figat. All rights reserved.
#pragma once
#include "Types.h"
#if COMPILE_WITH_ASSETS_IMPORTER
#include "Engine/Content/Assets/Material.h"
///
/// Creating materials utility
///
class CreateMaterial
{
public:
struct Options
{
MaterialInfo Info;
struct
{
Color Color = Color::White;
Guid Texture = Guid::Empty;
bool HasAlphaMask = false;
} Diffuse;
struct
{
Color Color = Color::Transparent;
Guid Texture = Guid::Empty;
} Emissive;
struct
{
float Value = 1.0f;
Guid Texture = Guid::Empty;
} Opacity;
struct
{
Guid Texture = Guid::Empty;
} Normals;
Options();
};
///
/// Creates the material asset.
///
/// The importing context.
/// Result.
static CreateAssetResult Create(CreateAssetContext& context);
};
#endif