着色器模块 - Vulkan-hpp-tutorial #15
Replies: 2 comments
-
|
喵 |
Beta Was this translation helpful? Give feedback.
0 replies
-
|
我建议使用一下的方式,直接将glsl文编译到可执行文件所在的目录中,避免污染源码仓库,同时也能达到直接使用shaders/XXXX.spv的目的。 # 添加所有的shader文件
file(GLOB_RECURSE SHADER_FILES shaders/*)
set(SHADER_OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/shaders)
set(SHADER_FILES_SPV "")
# 添加shader编译目标
foreach(shader_file IN LISTS SHADER_FILES)
get_filename_component(filename ${shader_file} NAME)
set(spv_file ${SHADER_OUTPUT_DIR}/${filename}.spv)
add_custom_command(
OUTPUT ${spv_file}
COMMAND ${Vulkan_GLSLC_EXECUTABLE} ${shader_file} -o ${spv_file}
DEPENDS ${shader_file}
COMMENT "Compiling ${filename} to ${spv_file}"
)
list(APPEND SHADER_FILES_SPV ${spv_file})
endforeach()
add_custom_target(compile_glsl ALL
DEPENDS ${SHADER_FILES_SPV}
COMMENT "Compiling shaders to SPIR-V ..."
)
# 添加依赖
add_dependencies(draw_triangle compile_glsl) |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
着色器模块 - Vulkan-hpp-tutorial
Vulkan 入门教程,使用 C++20 编写,基于官方 Vulkan SDK 的 vulkan-hpp 和 RAII 封装,帮助开发者更现代、安全地学习 Vulkan 图形编程。
http://127.0.0.1:8000/vulkan-hpp-tutorial/md/01/21_shader/
Beta Was this translation helpful? Give feedback.
All reactions