Как добавить файлы шейдеров .fsh / .vsh в Xcode, чтобы они автоматически добавлялись в фазу Copy Bundle Resources? - PullRequest
10 голосов
/ 07 января 2012

Всякий раз, когда я добавляю новый файл шейдера OpenGL ES 2.0 .fsh или .vsh к ресурсам моего проекта, этот файл добавляется на этапе сборки источников компиляции, где он не принадлежит.Затем мне нужно вручную удалить его из этой фазы и вручную добавить его в фазу сборки Copy Bundle Resources.

Можно ли как-нибудь сказать XCode автоматически добавлять файлы с расширениями .fsh и .vshфаза сборки Copy Bundle Resources?

Или возможно ли создать правило сборки, которое будет иметь тот же эффект, что и добавление шейдеров в фазу сборки Copy Bundle Resources?

Я бы предпочел решение, которое работает для всех пользователей проекта / рабочего пространства Xcode, а не для изменения настроек или изменения системы, которые каждый пользователь Xcode должен будет играть индивидуально.

Ответы [ 2 ]

9 голосов
/ 07 января 2012

Ниже приведен обходной путь, который я нашел. Если у кого-то есть другие решения, я все равно буду благодарен за ответ.

То, что вы делаете, чтобы автоматически ввести шейдеры в Copy Bundle Resources , это просто поместить все шейдеры в общую папку (или дерево папок). Я назвал папку "Shaders". Затем при добавлении папки Shaders выберите Создать ссылки на папки для любых добавленных папок .

В качестве ссылки на папку Xcode автоматически предполагает, что файлы являются Bundle Resources. Вам просто нужно быть осторожным, чтобы не помещать в эту папку ненужные файлы и, соответственно, очистить папку перед сборкой релиза. Также при загрузке шейдеров необходимо использовать путь к файлам шейдеров, т.е. «Shaders / examples / Blur.fsh».

8 голосов
/ 16 февраля 2012

Мой обходной путь заключается в том, что я захожу в Файл> Новый файл> Другие> Пустые файлы и называю их shader.vertsh и shader.fragsh .

Я полагаю, Xcode автоматически добавляет файлы с расширением dot 3/4 для фазы компиляции.

А если вам не хватает подсветки синтаксиса, измените тип файла на «OpenGL Shading Language Source»: Xcode change file type

...