
add_subdirectory(RenderFramework/Vulkan)

add_library(RenderFramework STATIC)

target_sources(RenderFramework
PRIVATE
    RenderFramework/Archive.cpp
    RenderFramework/Archive.h
    RenderFramework/Asset.h
    RenderFramework/AssetDatabase.cpp
    RenderFramework/AssetDatabase.h
    RenderFramework/AssetFile.h
    RenderFramework/AssetImporter.h
    RenderFramework/AssetManager.cpp
    RenderFramework/AssetManager.h
    RenderFramework/AssetMetadata.cpp
    RenderFramework/AssetMetadata.h
    RenderFramework/Bounds.h
    RenderFramework/Camera.cpp
    RenderFramework/Camera.h
    RenderFramework/Component.cpp
    RenderFramework/Component.h
    RenderFramework/FatalError.h
    RenderFramework/File.h
    RenderFramework/Filesystem.h
    RenderFramework/ForwardDeclarations.h
    RenderFramework/ForwardListItem.h
    RenderFramework/GameObject.cpp
    RenderFramework/GameObject.h
    RenderFramework/Gizmos.cpp
    RenderFramework/Gizmos.h
    RenderFramework/GizmoVertex.h
    RenderFramework/Guid.h
    RenderFramework/InputArchive.h
    RenderFramework/LEngine.cpp
    RenderFramework/LEngine.h
    RenderFramework/Material.cpp
    RenderFramework/Material.h
    RenderFramework/Mathf.h
    RenderFramework/Mesh.cpp
    RenderFramework/Mesh.h
    RenderFramework/MeshGenerator.cpp
    RenderFramework/MeshGenerator.h
    RenderFramework/MeshRenderer.cpp
    RenderFramework/MeshRenderer.h
    RenderFramework/ModelImporter.h
    RenderFramework/Object.cpp
    RenderFramework/Object.h
    RenderFramework/ObjectsFactory.cpp
    RenderFramework/ObjectsFactory.h
    RenderFramework/ObjMeshLoader.h
    RenderFramework/OutputArchive.h
    RenderFramework/Renderer.cpp
    RenderFramework/Renderer.h
    RenderFramework/RenderOutput.h
    RenderFramework/RenderTargetOutput.cpp
    RenderFramework/RenderTargetOutput.h
    RenderFramework/Scene.cpp
    RenderFramework/Scene.h
    RenderFramework/SceneRenderer.cpp
    RenderFramework/SceneRenderer.h
    RenderFramework/Shader.cpp
    RenderFramework/Shader.h
    RenderFramework/ShaderInclude.h
    RenderFramework/ShaderParametersBlock.h
    RenderFramework/Submesh.h
    RenderFramework/SwapChainOutput.h
    RenderFramework/Texture.h
    RenderFramework/TextureImporter.h
    RenderFramework/Transform.h
    RenderFramework/Vertex.h
    RenderFramework/WindowRenderOutput.cpp
    RenderFramework/WindowRenderOutput.h
)

target_link_libraries(RenderFramework
PUBLIC
    VulkanWrapper
    LMath
)

target_include_directories(RenderFramework
PUBLIC
    ./
)