4

根据此 MSDN 博客条目,建议在构建过程中使用 fxc 编译 .fx 效果文件。给定一个 fx 文件列表,我如何告诉 cmake 添加一些到我的项目文件(VS2010)?

4

1 回答 1

4

用于find_program查找fxcadd_custom_command构建:

find_program(FXC fxc DOC "fx compiler")
if(NOT FXC)
message(SEND_ERROR "Cannot find fxc.")
endif(NOT FXC)

add_custom_target(fx ALL)

foreach(FILE foo.fx bar.fx baz.fx)
  get_filename_component(FILE_WE ${FILE} NAME_WE)
  add_custom_command(OUTPUT ${FILE_WE}.obj
                     COMMAND ${FXC} /Fo ${FILE_WE}.obj ${FILE} 
                     MAIN_DEPENDENCY ${FILE}
                     COMMENT "Effect-compile ${FILE}"
                     VERBATIM)
  add_dependencies(fx ${FILE_WE}.obj)
endforeach(FILE)

不是 Windows 用户,我不确定这是否是正确的调用方式fxc,但您可以修改它。另请注意,这不会将目标文件链接到它们需要去的任何地方。此邮件列表帖子可能会对您有所帮助。

于 2012-08-13T00:37:47.913 回答