stringtranslate.com

Процедурная текстура

Процедурно генерируемые текстуры тайлов.

В компьютерной графике процедурная текстура [1] — это текстура , созданная с использованием математического описания (т.е. алгоритма ), а не непосредственно сохраненных данных. Преимущество этого подхода — низкая стоимость хранения, неограниченное разрешение текстур и простое наложение текстур . [2] Эти виды текстур часто используются для моделирования поверхности или объемных изображений природных элементов, таких как дерево , мрамор , гранит , металл , камень и другие.

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

Твердое текстурирование

Твердое текстурирование — это процесс, в котором функция генерации текстуры оценивается в каждой видимой точке поверхности модели, поэтому результирующие свойства материала (такие как цвет, блеск или нормальность) зависят только от их трехмерного положения, а не от параметризованного положения двухмерной поверхности, как в традиционном методе. 2D текстурирование. Следовательно, на твердые текстуры не влияют искажения пространства параметров поверхности, которые можно наблюдать вблизи полюсов сферы. Кроме того, не вызывает беспокойства непрерывность параметризации поверхности соседних участков. Твердые текстуры останутся единообразными и будут иметь постоянный размер независимо от искажений в системах координат поверхности. [3] Первоначально эти функции были основаны на простой комбинации функций процедурного шума, таких как симплексный шум или шум Перлина . В настоящее время доступен обширный арсенал техник: от структурированной регулярной текстуры (например, кирпичной стены) до структурированных нерегулярных текстур (например, каменной стены) и чисто стохастических текстур. [4]

Клеточное текстурирование

Клеточная текстура

Ячеистое текстурирование отличается от большинства других процедурных методов генерации текстур, поскольку оно не зависит от шумовых функций в качестве своей основы, хотя часто используется в качестве дополнения к этому методу. Ячеистые текстуры основаны на характерных точках, разбросанных по трехмерному пространству. Эти точки затем используются для разделения пространства на небольшие, случайно выложенные плитками области, называемые ячейками. Эти клетки часто выглядят как «чешуя ящерицы», «камешки» или «плитки». Несмотря на то, что эти области дискретны, сама клеточная базисная функция непрерывна и может быть вычислена в любой точке пространства. [5] Шум Уорли — распространенный тип клеточной текстуры.

Генетические текстуры

Генератор генетических текстур — это экспериментальный подход к созданию текстур. Это автоматизированный процесс, управляемый модератором-человеком. Поток управления обычно предполагает, что компьютер генерирует набор кандидатов на текстуру. Из них пользователь выбирает вариант. Затем компьютер генерирует другой набор текстур путем мутации и пересечения элементов выбранных пользователем текстур. [6] Для получения дополнительной информации о том, как именно достигается этот метод мутации и перекрестной генерации, см. Генетический алгоритм . Процесс продолжается до тех пор, пока не будет сгенерирована подходящая для пользователя текстура. Поскольку результат трудно контролировать, этот метод обычно используется только для экспериментальных или абстрактных текстур.

Самоорганизующиеся текстуры

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

Программы для создания текстур

Помимо специализированных программ, другие, такие как Blender , CorelDRAW , [7] содержат подсистемы процедурных текстур, которые можно использовать для генерации текстур.

Смотрите также

Рекомендации

  1. ^ Анализ и синтез текстур Стэнфордской лаборатории компьютерной графики (1994-2020 гг.)
  2. ^ «Определение процедурной текстуры».
  3. ^ Эберт и др.: Текстурирование и моделирование процедурного подхода , стр. 10. Морган Кауфманн, 2003.
  4. ^ Пьетрони, Нико; Чиньони, Паоло; Мигель А., Отадуй; Роберто, Скопиньо (2010). «Обзор синтеза твердых текстур» (PDF) . IEEE Компьютерная графика и приложения . 30 (4): 74–89. дои : 10.1109/MCG.2009.153. PMID  20650730. S2CID  18074521.
  5. ^ Эберт и др.: Текстурирование и моделирование процедурного подхода , стр. 135. Морган Кауфманн, 2003.
  6. ^ Эберт и др.: Текстурирование и моделирование процедурного подхода , стр. 547. Морган Кауфманн, 2003.
  7. ^ «страница 380» (PDF) .