Відмінності між версіями «Шейдер.Види»

Матеріал з Вікі ЦДУ
Перейти до: навігація, пошук
(Створена сторінка: Шейдер (англ. Shader) — це програма для одного із ступенів графічного конвеєра, що використо...)
 
Рядок 2: Рядок 2:
  
 
Програмовані шейдери гнучкі та ефективні. Складні на вигляд поверхні можуть бути візуалізовані за допомогою простих геометричних форм. Наприклад, шейдери можуть бути використані для малювання поверхні із тривимірної керамічної плитки на абсолютно плоскій поверхні.
 
Програмовані шейдери гнучкі та ефективні. Складні на вигляд поверхні можуть бути візуалізовані за допомогою простих геометричних форм. Наприклад, шейдери можуть бути використані для малювання поверхні із тривимірної керамічної плитки на абсолютно плоскій поверхні.
 +
 +
Типи шейдерів
 +
 +
В даний час шейдери поділяються на чотири типи: вершинні, геометричні, параллаксні і фрагментні (піксельні).
 +
[ред.] Вершинні шейдери (Vertex Shader)
 +
 +
Вершинний шейдер оперує даними вершин Багатогранників. До таких даних, зокрема, відносяться координати вершини в просторі, текстурні координати, тангенс-вектор, вектор бінормалі, вектор нормалі. Вершинний шейдер може бути використаний для видового і перспективного перетворення вершин, генерації текстурних координат, розрахунку освітлення і т. д.
 +
[ред.] Геометричні шейдери (Geometry Shader)
 +
 +
Геометричний шейдер, на відміну від вершинного, здатний обробити не лише одну вершину, але і цілий примітив. Це може бути відрізок (дві вершини) і трикутник (три вершини), а за наявності інформації про суміжних вершинах (adjacency) може бути оброблено до шести вершин для трикутного примітиву. Крім того геометричний шейдер здатний генерувати примітиви «на льоту», не залучаючи при цьому центрального процесора. Вперше почав використовуватися на відеокартах Nvidia серії 8.
 +
[ред.] Фрагментні (Піксельні) шейдери (Pixel Shader)
 +
 +
Фрагментний Шейдер працює з фрагментами зображення. Під фрагментом зображення в даному випадку розуміється піксель, якому поставлено у відповідність деякий набір атрибутів, таких як колір, глибина, текстурні координати. Фрагментний Шейдер використовується на останній стадії графічного конвеєра для формування фрагмента зображення.

Версія за 11:46, 16 січня 2012

Шейдер (англ. Shader) — це програма для одного із ступенів графічного конвеєра, що використовується в тривимірній графіці для визначення остаточних параметрів об'єкта чи зображення. Вона може включати в себе довільної складності опис поглинання та розсіювання світла, накладення текстури, віддзеркалення і заломлення, затінення, зміщення поверхні і ефекти пост-обробки.

Програмовані шейдери гнучкі та ефективні. Складні на вигляд поверхні можуть бути візуалізовані за допомогою простих геометричних форм. Наприклад, шейдери можуть бути використані для малювання поверхні із тривимірної керамічної плитки на абсолютно плоскій поверхні.

Типи шейдерів

В даний час шейдери поділяються на чотири типи: вершинні, геометричні, параллаксні і фрагментні (піксельні). [ред.] Вершинні шейдери (Vertex Shader)

Вершинний шейдер оперує даними вершин Багатогранників. До таких даних, зокрема, відносяться координати вершини в просторі, текстурні координати, тангенс-вектор, вектор бінормалі, вектор нормалі. Вершинний шейдер може бути використаний для видового і перспективного перетворення вершин, генерації текстурних координат, розрахунку освітлення і т. д. [ред.] Геометричні шейдери (Geometry Shader)

Геометричний шейдер, на відміну від вершинного, здатний обробити не лише одну вершину, але і цілий примітив. Це може бути відрізок (дві вершини) і трикутник (три вершини), а за наявності інформації про суміжних вершинах (adjacency) може бути оброблено до шести вершин для трикутного примітиву. Крім того геометричний шейдер здатний генерувати примітиви «на льоту», не залучаючи при цьому центрального процесора. Вперше почав використовуватися на відеокартах Nvidia серії 8. [ред.] Фрагментні (Піксельні) шейдери (Pixel Shader)

Фрагментний Шейдер працює з фрагментами зображення. Під фрагментом зображення в даному випадку розуміється піксель, якому поставлено у відповідність деякий набір атрибутів, таких як колір, глибина, текстурні координати. Фрагментний Шейдер використовується на останній стадії графічного конвеєра для формування фрагмента зображення.