Я не понимаю команду source_group в моем CMakeLists.txt. Когда я делаю это работает:source_group Команда CMake не работает
file(GLOB INPUT_HEAD KeyBoard.h Mouse.h)
source_group("Header Files\\Input" FILES ${INPUT_HEAD})
Но это не работает:
file(GLOB SHADERS ../Shaders/*.txt)
source_group("Source Files\\Shaders" FILES ${SHADERS})
Любые предложения о том, как решить эту проблему? (Я прочитал документацию для этой команды, я не понимаю, почему это не работает)
Ahh .. Но шейдерные файлы не являются ни библиотекой, ни исполняемым. Как включить эти файлы в проект визуальной студии? Должен ли я просто оставить их и заставить пользователя открывать их в отдельном текстовом редакторе? – Edvin
Пока они не имеют расширения, которое заставляет Visual Studio пытаться их создать, я пытаюсь включить ВСЕ файлы с целью, потому что мне нравится иметь доступ к ним из среды IDE, когда я использую источник. Я просто помещаю их в отдельную папку. У меня не было проблем с конфликтующими расширениями, но если вы это сделаете, я думаю, что должно быть какое-то [свойство источника] (http://www.cmake.org/cmake/help/v3.3/manual/cmake-properties. 7.html # properties-on-source-files), вы можете установить (SYMBOLIC или LANGUAGE), чтобы предотвратить интерпретацию файлов VS. – Phil
Если это не ошибка, в вызове source_group «/» слэш ведет себя иначе, чем «\\», по крайней мере, с помощью Visual Studio. Использование «/» создает один фильтр верхнего уровня, называемый «верхний/средний/нижний», тогда как «\\» дает «верхний», содержащий «средний», содержащий «нижний» иерархически. – qdin