// 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