Cinema 4D Cinema 4D Prime Менеджер материалов Шейдер Шейдеры каналов
Функция доступна в CINEMA 4D Prime, Visualize, Broadcast, Studio & BodyPaint 3D

Шейдер ChanLum

Общие Параметры

Шейдер ChanLum

Этот шейдер был предоставлен для нас создателем с именем "Naam" (www.happyship.com). ChanLum является эффектом по аналогии с Subsurface Scattering (смотрите Advanced Render), с различием, что эффект при этом будет создан на поверхности или над ней! Для сравнения мы можем использовать персик, поверхность которого закрыта сливой.

Этот шейдер, как правило, будут использован в канале яркости. Вы производите в этот канал импорт шейдера, определяете необходимый цвет, который должен быть добавлен для объекта и устанавливаете режим смешивания на умножение. Вы можете использовать этот шейдер и в других каналах, например в канале цвета. Важным моментом при этом является установка режима смешивания на умножение.

Источники света должны создавать тень! Без этого эффект ChanLum просто не возможно осуществить!

Если вы намерены скомбинировать шейдер ChanLum с определённой текстурой, это тоже является возможным. Для этого вы можете использовать шейдеры Слой или Слияние. Для обоих случаев, режим смешения должен быть установлен на умножение.

На заметку:
Если вы установили ранее оригинальный ChanLum-Plug-in от HappyShip, вам необходимо удалить его, в противном случае возможно возникновение проблем!

Метод функционирования

На этом изображении будет показано, что происходит при просчёте нормальной поверхности. Если Рендер производит просчёт точки "P" на поверхности, углы "a" между поверхностью и источниками освещения, при этом будут просчитаны в сцене. Эти углы будут затем использованы для моделей освещения, таких как Фонг или Oren-Nayar, и определяют показ тенеобразования на основе имеющихся источников освещения.

В случае наличия тумана поверхность не существует. В этом случае, Рендер учитывает только тень источника питания (в случае наличия объёмного тумана).

Идея шейдера ChanLum, это проведение просчёта распределения света на поверхности по аналогии с туманом. Для быстрого просчёта эффекта, шейдер производит перемещения точки образца "S" со смещением "O" вдоль нормалей поверхности точки "P". Значение "O" при этом определяет толщину виртуального тумана.

Посредством перемещения света, шейдер ChanLum приводит к его возможности "заглядывать за угол". Как видно на верхнем изображении, верхняя точка поверхности расположена на левой стороне в тени. Но при условии перемещения точки образца, будет также освещена. Именно это и есть основная идея шейдера ChanLum, которая на этом не заканчивается. Так как сцена при этом будет освещена таким образом, что граница между участками с освещением и без него, будет предоставлена чрезмерно контрастно и не совсем оптимально.

Поэтому шейдер ChanLum производит смешивание нескольких образцов, которые принадлежат для различных точек пространства визуализации. Пи этом имеется две возможности: Первая методика – Вдоль Нормалей – предоставлена на верхнем изображении. Исходные точки образцов будут распределены вдоль нормалей поверхности, что приводит к созданию плавного перехода от светлого к тёмному цвету.

Шейдер ChanLum позволяет обработку образцов. При этом также имеются две возможности: Первая методика Вдоль Нормалей показана выше. Исходя из точки образца, вдоль нормалей будет создан разрез "S", учитывая при этом радиус образца "r", который создаёт плавный переход от светлого к тёмному участку.

При комбинации шейдера ChanLum с эффектом Френеля, можно получить более плавную и сглаженную оптику с абсолютно корректным образованием тени.

Вторая методика Поверхность, позволяет образцам точек распространяться в пределах определённого радиального участка "S" с определённым радиусом образцов "r". Чтобы шейдер ChanLum имел возможность правильного просчета сцены, образцы должны создаваться на поверхности случайным образом. Это придаст для конечного результата незначительную степень шума – зернистости изображения. Это методика позволяет создать переход между участками не только плавным, но и позволяет при этом значительно изменить оптику объекта. Это является особенно заметным, если объект имеет глянец на поверхности и радиус образцов при этом будет повышен.

Здесь можно однозначно различить создаваемый эффект. Выглядит таким образом, что свет при этом не только "заглядывает за угол", но и проникает во внутреннюю структуру объекта. Если радиус образов является выше, чем толщина объекта, образцы освещенной стороны при этом будут использованы для просчёта стороны, расположенной в тени. При установлении направления, вы можете реализовывать на этой основе эффекты свечения воска, парафина или тонких участков кожи.

Шейдер ChanLum как объект концентрации тени

При вставке реальных 3D объектов в фильмы, клипы или изображения, очень часто бывает необходимым произвести изменение тени 3D объекта в соответствии с окружающей обстановкой, и по возможности без видимых различий. Обычно для этого будет использоваться дополнительный объект (Улавливатель тени), который производит захват тени. Этот объект должен быть прозрачным, за исключением его тени. Теперь мы можем использовать шейдер ChanLum. Произведите импорт этого шейдера в канал прозрачности, принадлежащий объекту, используемому как улавливатель теней. В принципе это всё. Всё за исключением тени является невидимым. Плотность тени вы можете при этом определить на закладке Тень для соответствующего источника света.