Объемный трафарет: цены и фото от интернет-магазина Стена-Клавель

Создание объемных орнаментов/узоров с помощью шпатлевки

Елена Кручинина (elenakruchinina)

С помощью техники декупаж можно создавать множество прекрасных работ. Но очень часто для создания работы одной техники недостаточно, поэтому мастера совмещают декупаж с другими техниками декорирования. В данном мастер-классе мы поговорим о создании объемных орнаментов с помощью шпатлевки. Будет много текса и мало картинок!))

Возможно, для тех, кто давно занимается декупажем, я не расскажу ничего нового, но для начинающих мастеров, надеюсь, эта информация окажется полезной!

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

Рассмотрим два способа создания объемного узора.

1.Наиболее простой способ – нанесение шпатлевки через трафарет. Трафареты бывают разные: самоклеющиеся и обычные многоразовые трафареты.

Самоклеющийся трафарет мы просто приклеиваем на поверхность и наносим шпатлевку, заполняя «пустоты» в трафарете.

Такой трафарет я снимаю, подцепив его за один край, постепенно отклеивая от всей поверхности.

Обычный многоразовый трафарет прикладываем к поверхности, и наносим шпатлевку. Но делать это надо очень аккуратно, чтобы трафарет не «ездил» по поверхности. Если декорируемая поверхность ровная, то трафарет сам прижмется под весом шпатлевки, в иных случаях лучше закрепить его края с помощью малярного скотча.

Снимать такой трафарет надо «строго вверх», чтобы рисунок не смазался.

Если шпатлевка чуть попала под трафарет, то оставьте так до высыхания. Все можно будет исправить! Когда все высохнет, аккуратно зубочисткой убираем лишнее, чуть смочив этот участок (совсем немного, прям капелькой воды).

После высыхания объемного орнамента, мы немного проходимся по нему шкуркой, убирая все неровности. Потом повторяем все сначала. Стараясь максимально точно приложить трафарет на то же место, мы снова наносим через него шпатлевку по уже имеющемуся рисунку. Таким образом, объем будет «выше» и ровнее.

После высыхания опять слегка проходимся шкуркой.

Вот, что у нас получилось!

2.Второй способ требует больше времени и аккуратности. Распечатываем на принтере узор, переносим выбранный нами узор с помощью копировальной бумаги на поверхность. Можно нарисовать рисунок карандашом «от руки».

Шпатлевку накладываем в пузырёк с узким носиком (я использовала пузырек от клея ПВА), добавляем несколько капель воды и немного ПВА (для прочности), в итоге должна получиться консистенция «жидкой сметаны». На мой взгляд, с ПВА полученная смесь становится более эластичной и «послушной» в работе. И еще небольшая подсказка, когда будете перекладывать шпатлевку в пузырек, постукивайте дном пузырька о стол, тогда шпатлевка будет сама «проваливаться», иначе ее трудно туда поместить (может это и очевидно, но я почему-то не сразу к этому пришла)))).

Выдавливаем узоры из носика по карандашному рисунку. Каждая сторона сушится строго горизонтально ночь. После высыхания первого слоя можно пройтись в нужных местах ещё шпатлевкой.

Если на каком-то участке получилось очень неаккуратно, то просто стираем этот участок влажной тряпочкой, и наносим узор снова. Можно так же подправить зубочисткой.

После просушки нашего орнаменты, можно переходить к покрасе/тонированию. Но об этом мы поговорим во второй части мастер-класса.

Примеры работ Вы можете посмотреть в моем магазинчике!))

Спасибо Вам за внимание!

Рейтинг

   0.0 (0 голосов)

Елена Кручинина (elenakruchinina)

Россия, Москва

Магазин

Блог (10)

Следите за творчеством мастера

Мастер-классы по теме

Ключевые слова

  • Ключевые слова
  • мастер-класс по декупажу
  • декор
  • декорирование
  • орнамент
  • узор
  • объемный орнамент
  • мастер-класс

Рубрики мастер-классов

Do It Yourself / Сделай сам
Recycle / Вторая жизнь вещей
Tворим с детьми
Бижутерия своими руками
Валяние
Вышивка
Вязание
Декорирование
Декупаж
Дизайн и декор интерьера

Живопись и рисование
Керамика
Ковроделие
Косметика ручной работы
Кружевоплетение
Кулинария
Куклы и игрушки
Лепка
Материалы для творчества
Мебель своими руками
Миниатюра
Обувь своими руками
Одежда своими руками
Организация пространства
Пирография
Плетение
Прядение
Работа с бисером
Работа с бумагой
Работа с кожей
Работа с металлом
Работа с мехом
Работа со стеклом
Реставрация
Роспись
Свечи своими руками
Скрапбукинг
Столярное дело
Сумки своими руками
Ткачество
Упаковка своими руками
Флористика
Фотография и видео
Художественная резьба
Шитье

Как сделать объемный трафарет – Арт Трафарет

Приводим мастер-классы по приминению трафаретов для объемного декора.

  • Бордюр с розами
  • Бордюр с ракушками

Объемный декор Бордюр с розами

Для создания рельефа мы взяли:

  • трафарет «Бордюр с розами»
  • тонкую акриловую рельефную пасту
  • акриловую краску (Голубая перламутровая, Деколор) фирмы Таир
  • широкую кисть
  • резиновый шпатель
  • аэрозольный клей 3М

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

Нанесли аэрозольный клей на обратную сторону трафарета. Приложили его к предварительно окрашенной и высушенной поверхности и плотно прижали.

Нанесли акриловую пасту на трафарет, при помощи резинового шпателя. Важно аккуратно заполнить все прорези.

Разгладили пасту шпателем.

Сняли трафарет. Получился невысокий рельеф.

Полное его высыхание происходит в течении 1-5 часов. Когда паста высохла, мы обнаружили, что образовались небольшие кракелюры. В нашем случае они дают дополнительный декоративный эффект. Если же кракелюры нежелательны, надо перед нанесением пасты на трафарет добавить в неё акриловый лак фирмы «Таир».

Аналогичным методом можно делать объемные трафареты цветов, снежинок, звезд и разных других фигур.

Объемный декор Бордюр с ракушками

Для создания рельефа мы выбрали

  • трафарет «Бордюр с ракушками»
  • взяли грубую акриловую рельефную пасту производства фирмы «Таир»
  • акриловые краски Start
  • аэрозольный клей 3М
  • шпатели
  • тарелку для смешивания пасты и красок
  • гребёнку для создания текстуры.

При создании высокого рельефа важно, чтобы трафарет был вырезан из толстой плёнки и не содержал большого количества мелких деталей, а также тонких перемычек и больших незакреплённых элементов.

Мы разбрызгали аэрозольный клей на обратную сторону трафарета, приложили его к поверхности, на которой собираемся делать рельеф и плотно прижали.

Бордюр состоит из двух чередующихся ракушек. Мы решили часть их сделать белыми (натуральный цвет рельефной пасты), а часть – цветными. Для белых ракушек просто нанесли пасту при помощи шпателя на трафарет. Толщина слоя при этом составляет 1-3 мм. Затем при помощи гребёнки создали рельеф.

Чтобы сделать цветные ракушки, надо смешать рельефную пасту с акриловой краской. Мы смешали их на тарелке до однородного состояния. Затем нанесли пасту шпателем, сделали рельеф гребёнкой.

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

Аккуратно сняли трафарет. Можно немного подкорректировать рельеф в течении первых 10-15 минут. Полное высыхание пасты произойдёт через 1-5 часов, в зависимости от толщины слоя.

Stencil Buffer и как его использовать для визуализации пересечений объемов

Визуализация пересечений объемов

Введение

В наши дни модным в рендеринге в реальном времени является трассировка лучей. Однако традиционная растеризация не исчезла и не исчезнет в ближайшем будущем. Я рекомендую эту запись в блоге на тему: Гибридный конвейер рендеринга для рендеринга в реальном времени: (когда) стоит ли трассировка лучей?

Я обнаружил, что одним из самых игнорируемых элементов в конвейере растеризации является Stencil Buffer. Чтобы понять, насколько им пренебрегают, я проверил количество появлений буфера трафарета примерно на 1000 страниц «Визуализации в реальном времени»[1]: он появляется всего 5 раз, и их не более 4 абзаца посвящены этому. По крайней мере, мне сложно разобраться с буфером трафарета, потому что он не полностью программируемый, поэтому я стараюсь его не использовать. Вы можете только настроить его, и для этого вы должны думать о булевой алгебре, но в 3D.

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

Конвейер рендеринга растеризации

Конвейер рендеринга растеризации в графическом процессоре. Некоторые этапы полностью программируются, другие настраиваются, а третьи полностью фиксируются.

Практически каждый графический процессор реализует конвейер рендеринга, подобный приведенному выше. В среднем ряду я попытался проиллюстрировать преобразования, которые мы применяем к нашим моделям, пока они не станут изображением на экране. В вершинном шейдере мы получаем треугольники, из которых состоит поверхность нашей 3D-модели. Затем наш вершинный шейдер применит серию матричных умножений к этим треугольникам для преобразования из пространства модели (начало координат вокруг модели) в мировое пространство (начало координат в начале мира), а затем в пространство камеры ( начало координат в камере). Затем мы применяем преобразование проекции (перспективное или ортогональное), чтобы усеченная камера стала единичным кубом. Все, что находится за пределами этого единичного куба, обрезается и сопоставляется с экранными координатами. Затем растеризатор преобразует эти треугольники в пиксели, интерполируя значения цвета между вершинами. Затем мы можем применить операции к пикселю в нашем пиксельном шейдере и смешать результат с буфером кадра, который мы видим на экране, на этапе слияния.

Этап слияния: смешивание, Z-буфер и трафарет

Этот этап слияния выполняет в основном 2 типа операций: смешивание и отбрасывание пикселей. Смешивание, или альфа-смешивание, смешивает цвета пикселей нашего объекта с цветами, уже находящимися в буфере кадра, на основе альфа-значения текстуры объекта. Альфа-значение обычно 8-битное, поэтому возможных значений всего 256. Мы также можем использовать альфа-значение для отбрасывания пикселей в зависимости от порога. Пиксели со значением меньше порога будут отброшены. Это называется альфа-маскированием.

Пиксели также можно отбрасывать благодаря Z-буферу. Z-буфер содержит расстояние (Z) от камеры до объектов сцены. Скажем, мы отрендерили гору с иллюстрации выше, а теперь пытаемся отрендерить дерево за горой. Z-буфер содержит расстояние до камеры для каждого пикселя горы. Мы можем сравнить значения Z дерева и отбросить их, если новое значение Z больше, чем Z, которое у нас уже есть. Дерево не отрисовывается. Обратите внимание, что если мы изменим порядок рендеринга и сначала отрендерим дерево, оно будет отрисовано. Однако, как только мы нарисуем гору, Z-тест не даст сбоев, поэтому гора будет отображаться сверху. Таким образом, некоторые пиксели будут перерисованы несколько раз. Это то, что мы называем overdraw , который можно использовать для измерения эффективности. Сортировка сцены — это способ уменьшить перерисовку.

Наконец, мы можем использовать трафаретный буфер для отбрасывания пикселей. Буфер трафарета обычно представляет собой 8-битный буфер, поэтому возможно 256 различных значений. В простейшей форме его можно использовать как альфа-маску. Скажем, мы видим гору через окно, а все остальное хотим скрыть. Мы можем пометить пиксели, принадлежащие окну, произвольным номером в буфере трафарета, например. 1 означает пиксель из окна, а затем мы настраиваем буфер трафарета на отбрасывание всего, что не помечено как «окно». В сочетании с Z-буфером буфер трафарета можно использовать как мощный инструмент для создания объемных эффектов, как мы увидим в примере позже.

Конфигурация буфера трафарета

Для настройки буфера трафарета у нас есть 3 типа настроек:

  • Функции сравнения . Это функция, используемая для принятия решения об отбрасывании пикселя или нет. Например, «больше» или «меньше». См.: доступные функции трафарета в WebGL.
  • Значения маски . Это 8-битные двоичные маски. Существует 3 типа масок: ссылка, маска чтения и маска записи. В WebGL ссылка и маска чтения устанавливаются с помощью функции трафарета, тогда как маска записи устанавливается с помощью маски трафарета. Ссылка и маска чтения используются вместе с функцией сравнения. Например, если для сравнения задано значение «больше чем», проверка шаблона будет пройдена, если (refMask & readMask) > (stencil & readMask) , где «&» — побитовая двоичная операция И. Маска записи применяется к тому, что мы записываем в буфер трафарета, если тест проходит успешно и мы решаем его обновить.
  • Трафаретные операции . Это действия, которые можно настроить в случае успешного или неудачного теста. Вы можете делать такие вещи, как сохранение текущего значения трафарета, его замена или увеличение. Смотрите: доступные трафаретные операции в WebGL. Действия можно настроить для 3 следующих условий:
    • сбой: тест трафарета не пройден
    • z-fail: z-тест не пройден (см. Z-буфер в предыдущем разделе)
    • z-проход: трафарет и z-тест пройдены.

Записывая это как одну большую логическую операцию, для каждого пикселя новое значение буфера трафарета можно вычислить следующим образом:

 if (refMask & readMask) Сравнение (stencil & readMask): 
    stencil_new = (трафарет и ~writeMask) | (Маска записи и Операция(трафарет))  

Звучит очень абстрактно, не так ли? Как все эти логические операции становятся чем-то полезным? Надеюсь, на примере в следующем разделе вы научитесь настраивать трафарет.

Визуализация пересечений объемов с буфером шаблонов

Визуализация пересечений кубов и задних граней

Постановка задачи

Начнем с постановки задачи. Мы хотим визуализировать пересечения объемов в сетке и любые открытые области сетки. Это быстрый способ визуально определить, является ли сетка водонепроницаемой, т. е. сетка не содержит отверстий и четко определена внутри. Отверстия легко визуализировать, если мы визуализируем объект за 2 прохода. Вершина имеет 2 стороны, переднюю и заднюю. Является ли сторона передней или задней, определяется произвольным порядком намотки вершин (его можно настроить). При рендеринге задние грани обычно не рендерятся, но это отбраковка — это одна из тех вещей, которые можно настроить в конвейере рендеринга. Таким образом, мы можем сделать первый проход, где мы визуализируем только задние грани ярко-зеленым цветом, а затем обычный проход, где мы визуализируем все остальное. Если мы видим зеленый цвет на экране, это означает, что в сетке есть дыра.

Конфигурация для объемного пересечения

Для объемного пересечения все немного сложнее. Я знаю, что трафарет должен быть полезен в этом, но как мы его настроим? Я всегда начинаю записывать на доске все примеры наложения треугольников, которые приходят мне в голову. Затем я знаю, что в конце концов мне нужна трафаретная маска, которая точно отмечает область пересечения в данном примере. Какие операции могут привести меня туда? Есть несколько. Задача состоит в том, чтобы найти тот, который работает для всех примеров, которые вы записали. Должен быть лучший способ нарисовать это, но вот что у меня получилось:

Конфигурация трафарета на примере. Мы пытаемся найти способ создать маску для областей пересечения объемов.

Затем, когда я думаю, что у меня есть все необходимые случаи, я пытаюсь заполнить таблицу всеми конфигурациями трафарета для каждого прохода рендеринга. На картинке выше вы можете видеть, что в том виде, в котором я его разработал, мне потребуется как минимум 3 прохода:

  • один для рендеринга задних граней, где я подсчитываю количество обращенных назад полигонов;
  • второй проход для рендеринга лицевых граней и уменьшения счетчика в случае сбоя z-теста. Мы не будем записывать в Z-буфер, чтобы мы могли различить эти два обведенных кружка случая (где лицевая сторона B визуализируется перед лицевой стороной A). Поскольку во время обратного прохода мы обновляем Z-буфер, Z-буфер перед началом 2-го прохода содержит значение z задней грани ближе к камере. В непересекающемся примере порядок не имеет значения, потому что независимо от того, содержит ли Z-буфер z задней грани или z B, мы можем обнаружить сбой z-теста при попытке нарисовать A и уменьшить прилавок. Но в пересекающемся примере, если мы сначала нарисуем грань B и обновим Z-буфер, при попытке нарисовать грань A z-тест завершится ошибкой, и мы ошибочно уменьшим значение счетчика. Чтобы решить эту проблему без сортировки геометрии, мы остановим все обновления Z-буфера (Z-списание) во время этого прохода.
  • третий проход для создания бинарной маски с областью пересечения.
  • Я могу добавить необязательный 4-й проход для рендеринга освещения непересекающихся объемов.

Вот моя окончательная таблица трафаретов:

Pass Функция Артикул Маска чтения Маска записи Ошибка? Z-сбой? Пройти? Z-запись
Задняя часть ВСЕГДА 0 0 0xf~f СОХРАНИТЬ ИНКР ИНКР НА
Передний ВСЕГДА 0 0 0xf~f СОХРАНИТЬ ДЕЦБ СОХРАНИТЬ ВЫКЛ
Передняя часть – перекресток МЕНЬШЕ 0x1 0xf~f 0xf~f СОХРАНИТЬ СОХРАНИТЬ СОХРАНИТЬ НА
Передний фонарь ГЕКВАЛ 0x1 0xf~f 0xf~f СОХРАНИТЬ СОХРАНИТЬ СОХРАНИТЬ НА

 

Если вы хотите проверить, как это преобразуется в код, проверьте этот запрос на вытягивание в GitHub: self-intersections for WebGL Model Viewer.

Результаты визуализации

Вот видео просмотра моделей WebGL в действии:

Зеленые области — это задние грани, то есть отверстия в сетке, тогда как красные области — это пересечения объемов. Одно из применений этого — помочь нам выявить проблемы в позах наших аватаров. Если часть руки пересекается с грудью, у нас будут проблемы при попытке одеть аватар рубашкой, потому что рукав также будет пытаться войти в грудь, и симуляция ткани будет давать сбои. См. пример ниже:

Визуализация пересечений объемов (в центре) может предупредить нас о будущих проблемах при моделировании ткани (справа).

 

Заключение

Растеризация по-прежнему является наиболее часто используемым конвейером рендеринга в графике реального времени. Внутри растеризатора Stencil Buffer кажется гадким утенком, с которым никто не хочет связываться, возможно, только для больших графических гуру. Я показал вам на практическом примере, что мы можем использовать трафаретный буфер для визуализации пересечений объемов в реальном времени, и что трафарет не так страшен, если мы описываем проблему на примерах и в табличной форме.

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

Дополнительные сведения о применении буфера трафарета см. в книге «Визуализация в реальном времени» [1] и в статье в Википедии.

Ссылки

[1] Томас Акенин-Мёллер, Эрик Хейнс, Нати Хоффман. Рендеринг в реальном времени, третье издание . A K Peters, 2008.

Трюк с буфером трафарета для объемного отложенного затенения

Известно, что отложенное затенение значительно повышает эффективность рендеринга при обработке большого количества источников света. Механизм очень прост: отделите сложность геометрии от освещения. Для этого G-буферы, формирующие массив текстур, часто включающих положение, цвет материала, нормаль точек для затенения, визуализируются в первом проходе с точки зрения. Затем орфографическая камера используется для рендеринга четырехугольника, который покрывает весь экран. Затем нормализованные (0-1) координаты экрана используются для извлечения данных геометрии/материала в точке экрана, которые передаются в функцию освещения. Таким образом, мы избегаем создания множества фрагментов из проецируемой геометрии сцены, вместо этого визуализируем только те, которые видны.

Однако представьте, что у нас есть большая группа огней. Нам все равно придется пройтись по всему списку источников света для каждого пикселя экрана. С более физически обоснованной моделью освещения, в которой каждый источник света имеет влиятельный радиус (вытекающий из физического факта, что идеальный точечный источник света имеет обратный квадрат падения), фрагменты, которые находятся за пределами влиятельного радиуса определенного источника света, будут тратить время на ожидание перехода других фрагментов в том же пакете в другую ветку. Мы знаем, что ветвление вредно для GPU. Это приводит к серьезному штрафу по времени. Для решения этой проблемы было предложено множество методов. Тайловое отложенное затенение — очень популярный метод, о котором, вероятно, слышали многие из вас. Он разбивает экран на плитки и создает «список источников света» для каждой плитки, используя только те источники света, которые пересекаются с плитками. Это, конечно, элегантный метод. Однако перед созданием новой группы источников света нам всегда нужно будет выполнять предварительную обработку (если в этом есть необходимость).

Более простое решение — отложенное затенение объема. Нам просто нужно отрендерить «объемы света» для каждого источника света, который, как вы могли догадаться, может быть сферой с радиусом, равным радиусу влияния источника света. Например, в OpenGL нам просто нужно создать список вершин/индексов сферы и подготовить матрицу модели для каждого источника света (это просто масштабирование и перемещение). Во время рендеринга мы выполняем вызов отрисовки n раз, где n — количество источников света. Один такой световой объем будет создавать фрагменты, покрывающие определенную область на экране, где фрагменты могут быть затенены светом. Конечно, делая это, мы теряем измерение глубины. Мы должны явно протестировать фрагменты и убедиться, что они находятся примерно в той же области глубины света (что является лишь необходимым условием). Конечно, тайловый рендеринг тоже требует такого тестирования, но если в очень «глубокой» сцене у нас повсюду разбросаны источники света, тестируемых источников света будет значительно меньше. Однако, поскольку предварительная обработка не требуется, объемное отложенное затенение в большинстве случаев имеет вполне конкурентоспособную производительность.

Подождите! Мы не должны рендерить проходы! Вместо этого лучше использовать функцию создания экземпляров, которая поддерживается каждой современной видеокартой, чтобы избежать задержки, вызванной большим объемом связи между ЦП и ГП. Еще одна важная вещь: запись глубины должна быть отключена, а аддитивное смешивание должно быть включено. Причина, по которой запись глубины должна быть отключена, заключается в том, что легкие объемы не являются реальной геометрией. Хотя два источника света расположены близко друг к другу и освещают одну и ту же область сцены, мы не хотим, чтобы они перекрывали друг друга так, чтобы какая-то часть была затенена только одним из источников света.

Если вы выполните отложенное затенение объема, описанное выше, напрямую, мы немедленно обнаружим, что что-то пошло не так. Когда вы приближаетесь к источнику света (с движущейся камерой), в какой-то момент экран внезапно становится темным. Это связано с тем, что независимо от того, включаете ли вы отсечение задней поверхности, вы столкнетесь с дилеммой: либо визуализировать пиксели в два раза ярче, когда вы находитесь вне светового объема, либо ничего не визуализировать, когда вы находитесь внутри светового объема.

Оказывается, эту ситуацию можно легко решить, переключив режим culling на фронтальный culling. Однако этого недостаточно. На самом деле мы можем сохранить Z-буфер, созданный рендерингом G-буферов, и использовать эту информацию для некоторой отбраковки фрагментов, которые не пересекаются световыми объемами. Вот хороший трюк с буфером трафарета, представленный Юрием О’Доннеллом (2009 г.). Что он делает, так это использует буфер трафарета в качестве счетчика для записи того, находится ли передняя грань светового объема за видимой геометрией сцены (чтобы у нее не было шанса затенить пиксель). Это достигается за счет рендеринга только передних граней (с отключенной записью в цветовой буфер) в первом проходе и добавления 1 к трафарету Z-неудачных пикселей. Другая ситуация заключается в том, что обратная сторона светового объема находится перед видимой геометрией сцены, что решается вторым проходом — рендеринг только задних граней и использование z-теста «Больше/равно» для продолжения фильтрации конечных пикселей из пикселей с нулевым значением. значение трафарета (уже пройден первый тест). Таким образом, мы можем оставить только те пиксели объема света, которые «не прошли» z-тест (исходный тест «МЕНЬШЕ»), что интуитивно соответствует пикселям, сгенерированным геометрией сцены, которые пересекаются с объемом света. Обратите внимание, что этот трюк также работает, когда вы находитесь внутри светового объема, и в этом случае передние грани не будут визуализированы (нелогично, что тот факт, что мы находимся внутри светового объема и что передняя грань находится за видимой геометрией, сохраняется в точке). одновременно!), оставив нулевое значение трафарета, что позволяет нам использовать тест «Большая/равная глубина» только для фильтрации затеняемых пикселей. Конечно, в любом проходе нам нужно отключить Z-запись. Конечно, мы не хотим, чтобы световые объемы натыкались друг на друга.

Оригинальная диаграмма, использованная Юрием О’Доннеллом.

Хотя этот трюк определенно увеличивает эффективность, особенно когда ситуация с освещением очень сложная, мы можем сделать что-то лучше. Часто при моделировании детализированной сферы в виде многоугольника создается большое количество вершин, которые загромождают конвейер. Вместо этого мы можем использовать очень грубую многоугольную сферу (например, с 4 вертикальными/горизонтальными срезами) с немного большим радиусом, чтобы обеспечить правильное ограничение светового объема.

Вам может понравится

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *