set(hdrs
    include/pw/visual/framebuffer.hpp
    include/pw/visual/shader.hpp
    include/pw/visual/pipeline.hpp
    include/pw/visual/texture.hpp
    include/pw/visual/mesh_renderer.hpp
    include/pw/visual/material.hpp
    )

set(srcs
    src/framebuffer.cpp
    src/shader.cpp
    src/context.cpp
    src/pass.cpp
    src/pipeline.cpp
    src/target.cpp
    src/texture.cpp
    src/mesh_renderer.cpp
    src/material.cpp
    )


set(srcs_shader
    src/shader/unlit_vs.glsl
    src/shader/unlit_fs.glsl
    )

add_library(pwvisual
    STATIC
    ${hdrs}
    ${srcs}
    ${srcs_shader}
    )

target_include_directories(
    pwvisual
    PUBLIC
    include
    )

target_link_libraries(pwvisual pwscene glad)

#add_subdirectory(tests)