Научная статья на тему 'Особенности текстурирования земной поверхностив задаче повышения реалистичности синтезированных ландшафтов'

Особенности текстурирования земной поверхностив задаче повышения реалистичности синтезированных ландшафтов Текст научной статьи по специальности «Математика»

CC BY
63
19
i Надоели баннеры? Вы всегда можете отключить рекламу.
Область наук
Ключевые слова
ТЕКСТУРА / ТРИАНГУЛИРОВАННАЯ СИНТЕЗИРОВАННАЯ ЗЕМНАЯ ПОВЕРХНОСТЬ / ИРРЕГУЛЯРНАЯ СЕТКА / TEXTURE / TRIANGULATED SYNTHESIZED LANDSCAPE / IRREGULAR NET

Аннотация научной статьи по математике, автор научной работы — Мортин Константин Владимирович, Карасев Олег Евгеньевич

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

LANDSCAPE TEXTURING FEATURES FOR SYNTHESIZED SURFACE IMPROVING1GBOU SPO IN MTRP

In this work new texturing method for triangulated synthesized landscape is presented. It uses texturing algorithm for dynamic irregular netand provides better results than known texturing methods.

Текст научной работы на тему «Особенности текстурирования земной поверхностив задаче повышения реалистичности синтезированных ландшафтов»

ОСОБЕННОСТИ ТЕКСТУРИРОВАНИЯ ЗЕМНОЙ ПОВЕРХНОСТИ В ЗАДАЧЕ ПОВЫШЕНИЯ РЕАЛИСТИЧНОСТИ СИНТЕЗИРОВАННЫХ ЛАНДШАФТОВ

Мортин Константин Владимирович

преподаватель, ГБОУ СПО ВО МТРП, г. Муром

E-mail: mortinkv@ya. ru

Карасев Олег Евгеньевич

канд. техн наук, доцент МИ (филиал) ВлГУ, г. Муром

LANDSCAPE TEXTURING FEATURES FOR SYNTHESIZED SURFACE IMPROVING

Konstantin Mortin

teacher of GBOUSPO INMTRP, Murom

Oleg Karasev

сandidate. Technical., Associate Professor of MI (branch) of VLGU,

Murom

АННОТАЦИЯ

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

ABSTRACT

In this work new texturing method for triangulated synthesized landscape is presented. It uses texturing algorithm for dynamic irregular net and provides better results than known texturing methods.

Ключевые слова: текстура; триангулированная синтезированная земная поверхность; иррегулярная сетка

Keywords: texture, triangulated synthesized landscape; irregular net.

Текстура представляет собой изображение с собственной системой координат. Пиксели текстуры (тексели) являются узловыми точками с координатами (8^) (рис. 1).

' и

:

о злы соо I > гвет г А СТВ’’ ют

' Л,' пике еля> о

Рис. 1. Битовая карта текстуры

Определим трёхмерную сцену в системе координат 0ХУ2 (рис. 2). Ось 02 пересекает центр экрана в точке г = 1.

Рис. 2. Пример треугольника в системе координат наблюдателя

Для текстурирования поверхности необходимо задать соответствие координат (8^) текстуры координатам (х,у,г) поверхности.

Введём ортогональную систему координат (р,д) с осями, параллельными сторонам экрана. Пикселями экрана будем считать квадраты между соседними четвёрками с целочисленными координатами р и д (рис. 3).

Координаты текселей на карте текстуры являются целочисленными величинами, а координаты (8^) — вещественными,

и текселю не соответствуют. Поэтому необходимо преобразовать вещественные координаты (8,1) в значение цвета экранного пикселя.

Рис. 3. Пиксель в координатах ( p,q) и его образ в координатах (s,t)

При наложении текстуры методом множественного отображения (MIP Mapping) необходимо определить подходящий уровень

детализации (LOD, Level of Details) [1]. Уровень LOD должен быть таким, чтобы размер образа экранного пикселя на текстуре и размер текселя текстуры были максимально близки. Размер текселя заданного уровня LOD можно вычислить следующим образом.

Рассмотрим пиксель как квадрат. Его образ в координатах (s,t)

— есть произвольный четырехугольник. Изменение координаты s вдоль образа горизонтальной стороны пикселя вычисляется по формуле

—(в _ центре _ пикселя )х горизонтальный _ размер _ пикселя = — (в _ центре _ пикселя). dp dp

Аналогично изменение координаты t вдоль образа

горизонтальной стороны пикселя вычисляется через

dt ( )

—(в _ центре _ пикселя ) ■ dp

Заменяя в формулах p на q, можно легко получить соотношения и для вертикальной стороны пикселя. Производные обычно приближаются конечными разностями значений на сторонах пикселей или соседей.

Используя аппроксимацию, можно применить следующие операции над пикселями:

f

BLUR:LOD = MAX

V

_ +—— — +—— — даёт размытое

дp дp V дq дq

' /

изображение;

(

ds_2 + dt_2 2 + dt_2 N

SHARP:LOD = MIN

dp dp ’ у dq dq

дает резкое

V

изображение;

(

LOCHEED : LOD = MAX

является

V

объединением предыдущих двух методов.

Объединяя эти три операции, можно добиться хорошего качества изображения. Вычисление производных и координат (5, t) в каждом пикселе производится также, как и в алгоритме быстрого отображения.

Переходим к проблеме вычисления значения цвета.

Для каждого пикселя экранной проекции можно вычислить трёхмерные координаты прообраза пикселя на поверхности треугольника, а по ним рассчитать координаты на текстуре. Обращение перспективного преобразования требует умножения на матрицу размера 4х4 для каждого пикселя проекции [2].

Для последовательности точек из отрезка значение линейной функции в любой из них вычислялось индуктивно, на базе значения функции в предыдущей точке.

Пусть мы движемся вдоль заданного на экране отрезка [рь р2]. Прообраз отрезка [рь р2] — отрезок [Рь Р2] в пространстве, координаты концов которого (хь 7і), (х2, 72) нам известны (рис. 4).

Восстановим по точке р = р + ґх (р2 — р) = р1 + Ар её прообраз Р с координатами (х, ¿) = (х + Ах, ^ + А¿).

Рис. 4. Система координат OXZ, отрезок [Р.1, P2], проекция на экран — отрезок [р1, р2], точка Р и её проекция р

Запишем уравнение прямой, содержащей отрезок [Р1, Р2]: Лх+Бг+С=0.

При проективном преобразовании экранная координата р

вычисляется как р = Х, откуда Х= рг. г

Подставляя выражение для х в уравнение отрезка [Р1, Р2],

с

получим (Ар + В)г+ С= 0 или г =

і + Аг=

Выразим из

С

Лр + б

этого соотношения

і =

С

Ар + В

Ар + Ар)+В

Введём вспомогательную величину і = —.

г

тт - А В

Для нее г = — р.+ —,

^ С 1 С

- Л- А Л Л В і + Аі=— (р1 + Ар) +—

что

С

С

позволяет выразить Д2 следующим образом: д^ = —дп.

С

Воспользовавшись последним соотношением, координаты точки

(Хг):

2 = 21 + А = 21 +—Ар г = г, + Аг = 2—

х = х1 + Ах = (р1 + Ар )(г1 + Аг) = рг

найдем

(1)

а

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Если не исключать из модели оси OY и q, то в системе (1) добавилось бы уравнение

y= y + 4у= (q + Aq)(z + Az> = qz • (2)

Пользуясь соотношениями (1) и (2), можно реализовать эффект перспективы в алгоритме быстрого наложения текстуры. Сохраняя величину Z вместо z, мы сокращаем число отрезков, образующих треугольник.

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

Текстура поверхности — это детализация её строения, учитывающая микрорельеф и особенности окраски.

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

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

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

Список литературы:

1. Hoppe H. Smooth View-Dependent Level-of-Detail Control and its Application to Terrain Rendering // IEEE Visualization 1998 Conference. — P. 35—42.

2. Suen P, Healey G. The Analysis and Reconstruction of Real-World Textures in Three Dimensions // IEEE Transactions of Pattern Analysis and Machine Intelligence. — 2000. — Vol. 22. — No. 5. — P. 491—503.

i Надоели баннеры? Вы всегда можете отключить рекламу.