ВУЗ:
Составители:
Рубрика:
22
Функция отображения определяется пользователем и может быть как
линейной, так и нелинейной. Например, для случая, показанного на рисунке 2.1,
соответствие между системами координат примитива и текстуры может быть
задано парой линейных уравнений
,CBvAus
+
+
= (2.3)
,FEvDut
+
+
=
(2.4)
где
A,…,F – шесть числовых коэффициентов функции отображения. Для их
отыскания необходимо сформулировать ограничения на численные значения
координат и представить их в виде шести уравнений с этими коэффициентами. В
качестве ограничений для примера на рисунке 2.1 установим соответствие
элементов примитива и текстуры, обозначенных одинаковыми буквами –
a,b и c:
для точки
a выражение (2.3) – 0=A·0+B·0+C, выражение (2.4) – 0=D·0+E·0+F,
для точки
b выражение (2.3) – 0.5=A·0+B·1+C, выражение (2.4) – 1=D·0+E·1+F,
для точки
c выражение (2.3) – 1=A·1+B·0+C, выражение (2.4) – 0=D·1+E·0+F.
Решение уравнений дает значения коэффициентов: A=E=1, B=0.5, C=D=F=0. В
итоге функция отображения принимает вид
s=u+0.5v,
t=v,
позволяющий вычислить текстурные координаты для любой точки примитива.
Линейная функция отображения реализуется наиболее просто и не требует
от вычислительной системы больших ресурсных затрат. Но она дает и самое
низкое качество текстурирования. Более качественное, но более медленное
текстурирование дает интерполяция текстурных координат квадратичной
параболой и сплайн-функцией.
Для криволинейных примитивов, например,
поверхностей второго порядка,
функция отображения принципиально является нелинейной. Ее вычисление
нужно выполнить для каждого элемента поверхности-примитива, что требует
довольно много вычислительного времени. Кроме того, с целью повышения
реалистичности отображения в современных графических системах применяют
мультитекстурирование, то есть смешивание на одном примитиве нескольких
22 Функция отображения определяется пользователем и может быть как линейной, так и нелинейной. Например, для случая, показанного на рисунке 2.1, соответствие между системами координат примитива и текстуры может быть задано парой линейных уравнений s = Au + Bv + C , (2.3) t = Du + Ev + F , (2.4) где A,…,F – шесть числовых коэффициентов функции отображения. Для их отыскания необходимо сформулировать ограничения на численные значения координат и представить их в виде шести уравнений с этими коэффициентами. В качестве ограничений для примера на рисунке 2.1 установим соответствие элементов примитива и текстуры, обозначенных одинаковыми буквами – a,b и c: для точки a выражение (2.3) – 0=A·0+B·0+C, выражение (2.4) – 0=D·0+E·0+F, для точки b выражение (2.3) – 0.5=A·0+B·1+C, выражение (2.4) – 1=D·0+E·1+F, для точки c выражение (2.3) – 1=A·1+B·0+C, выражение (2.4) – 0=D·1+E·0+F. Решение уравнений дает значения коэффициентов: A=E=1, B=0.5, C=D=F=0. В итоге функция отображения принимает вид s=u+0.5v, t=v, позволяющий вычислить текстурные координаты для любой точки примитива. Линейная функция отображения реализуется наиболее просто и не требует от вычислительной системы больших ресурсных затрат. Но она дает и самое низкое качество текстурирования. Более качественное, но более медленное текстурирование дает интерполяция текстурных координат квадратичной параболой и сплайн-функцией. Для криволинейных примитивов, например, поверхностей второго порядка, функция отображения принципиально является нелинейной. Ее вычисление нужно выполнить для каждого элемента поверхности-примитива, что требует довольно много вычислительного времени. Кроме того, с целью повышения реалистичности отображения в современных графических системах применяют мультитекстурирование, то есть смешивание на одном примитиве нескольких
Страницы
- « первая
- ‹ предыдущая
- …
- 20
- 21
- 22
- 23
- 24
- …
- следующая ›
- последняя »