Ответ: Фак по Юнити.
Ага, отлично.
Решил, что подобный эффект можно сделать двумя камерами. Первая рендерит всё без, допустим, "красных объектов", а вторая - только "красные" (такие объекты лежат на отдельном слое, контролирую через "Culling Mask"). "Clear Flags" у второй камеры - "Don't Clear". Depth значения первой и второй камеры - 1 и 2 соответственно. Всё хорошо.
Но!
1) Если к первой камере применить "Grayscale Image Effect", а вторую отключить - увидим только серую часть изображения. Отлично, так и должно быть, эффект работает. Но если включить вторую, то вся серость куда-то пропадает. Пост-процесс эффект для первой камеры не выполняется. Нехорошо это. Почему так происходит?
2) Ладно, допустим, пост-процесс эффекты выполняются только для последней по Depth значению камеры, если они лежат ровно "друг на друге". Хорошо. Тогда рендер первой камеры вместе со всеми наложенными на нее эффектами можно запихнуть в "Target Texture". Вопрос: как эту текстуру можно использовать в качестве бэкграунда для второй камеры? Или можно решить это дело другим путем?
3) И последнее: как в Юнити можно оперировать с буфером глубины? Можно ли перекинуть буфер глубины с одной камеры на буфер глубины другой?
4) Ну и самое последнее: как бы Вы делали подобный эффект (с условием, конечно, что все текстуры - цветные)?
|