Що нас чекає найближчим часом у світі 3D графіки
Потім виробляються обчислення, у результаті яких визначаються характеристики освітленості сцени, включаючи визначення того, чи є світло від джерела висвітлення що розсіюється чи спрямованим, з урахуванням таких параметрів освітлюваних поверхонь, як чи поглинання відображення світла, обчислюється відстань від джерела (джерел) світла до освітлюваного об'єкта. Також відбувається поділ даних про відстані і спрямованість для зручності їхнього подальшого використання. На останній стадії геометричного етапу виробляються обчислення, у результаті яких визначається те, як будуть виглядати полігони у всіх трьох вимірах, і отримані дані зберігаються для використання на етапі рендеринга. Проходження всіх етапів геометричного конвеєра залежить від максимального використання всієї доступної обчислювальної потужності і повинне відбуватися з найменшими затримками, наскільки це можливо. Широке використання буферів FIFO (First In First Out, тобто першими обробляються ті дані, що раніш надійшли) забезпечує безперервність роботи, тобто жоден із кроків конвеєра не може викликати простою на інших кроках конвеєра. Для того, щоб етап геометричних обчислень не став вузьким місцем 3D графічні конвеєри необхідно використовувати процесор з могутнім блоком операцій з речовинними числами (FPU, Floating Point Unit). До речі, саме через слабку продуктивність FPU у процесорів K6-2/K6-III від AMD ігри, що не використовують набір 3DNow! виконуються повільніше, ніж на системах із процесорами від Intel. Не виключене, що поява 3D акселераторів зі спеціалізованим геометричним співпроцесором послужить гарну службу усім власникам систем на базі процесорів від AMD. Справа в тім, що при операціях з цілими числами процесори K6-2/K6-III продуктивніше, ніж процесори від Intel при порівнянних робочих частотах, а убудований у процесори блок FPU більше не буде критично важливою ланкою в іграх. Ресурси, що вивільнилися, можна буде задіяти і на інші мети, крім розрахунку геометрії, у будь-якому випадку -і час покаже.
Другим є етап рендеринга (rendering stage), у процесі якого інформація про полігони перетвориться в інформацію про пикселях для відображення на екрані монітора. Цей процес може містити в собі такі процедури, як затінення (shading), текстурирование і застосування спеціальних ефектів до даних про полігони, отриманих після завершення геометричного етапу конвеєра. Помітимо, що при використанні акселератора геометрії ресурси, що вивільняються, CPU можна використовувати, наприклад, для реалізації більш прогресивних технік затінення, таких, як затінення Фонга. Зараз цей тип затінення практично не застосовується саме через недостачу обчислювальних потужностей. Усі ці обчислення завершують формування зображення, генерація якого відбулася на геометричному етапі, забезпечуючи йому високий рівень реалізму. На відміну від геометричного етапу, що залежить від обчислювальної потужності процесора, що виконує всі обчислення, етап рендеринга інтенсивно використовує ресурси пам'яті, тобто прямо залежить від того, скільки у вас мається доступної для використання пам'яті (текстурних буферів). До слова, поява AGP було зв'язано насамперед з тим, що проблема обмежених обсягів локальної відеопам'яті була вирішена розширенням їхній за рахунок системної пам'яті комп'ютера. Правда, вартість локальної пам'яті настільки упала, що сучасні відеоакселератори мають її стільки ж, скільки мали системної пам'яті могутні комп'ютери тих часів.
Після завершення обох етапів 3D графічні конвеєри отримані в результаті дані можуть бути відображені на екрані монітора. Хоча все це виглядає досить довгою і складною процедурою, але процес одержання даних для кожного пикселя, відображуваного на екрані, відбувається дуже швидко. Для цього потрібно період часу менший, чим одна секунда. Коли ми говоримо про частоту зміни кадрів у грі (frame rate), те, насправді, мова йде про величину, що показує, як багато разів у секунду кожен виведений на екран кадр зображення обновляється після обробки даних на етапах 3D графічні конвеєри (геометричному і рендеринга) протягом кожної секунди.Якщо всі обчислення, необхідні на етапах 3D графічні конвеєри, виконуються одним CPU системи, то в результаті ми одержимо на екрані монітора непоказну і повільну графіку, тому що центральний процесор системи повинний займатися ще і керуванням всіх апаратних пристроїв, операційною системою і додатками. Коли на ринку з'явився перший 3D графічний акселератор, його чип виконував на апаратному рівні всі обчислення етапу рендеринга, а центральний процесор системи виконував всі обчислення на геометричному етапі. Цей метод уже протягом п'яти років є кращим способом відображення 3D графіки. Однак в іграх і додатках використовується усе більш і більш деталізована графіка у високих дозволах, у результаті центральний процесор ставати вузьким місцем системи, тому що геометричний етап дуже сильно залежить від обчислювальної потужності CPU. Для розвантаження CPU на деяких професійних OpenGL і спеціалізованих графічних прискорювачах (Heidi, RenderGL) застосовуються геометричні співпроцесори, тобто на цих відеокартах апаратно виконуються всі обчислення обох етапів (геометричного і рендеринга) 3D графічні конвеєри. Для приклада можна назвати відеоадаптери RealiZm II від Intergraph, Oxygen від 3Dlabs і Visualize-fx6 від Hewlett Packard. Завдяки тому, що CPU займається керуванням тільки апаратними пристроями системи, операційною системою і додатками, що вивільняються обчислювальні ресурси можуть використовуватися для візуалізації більш природної і деталізованої графіки.
Помітимо, що використання геометричного акселератора не означає, що робота з розрахунку геометрії буде цілком знята з CPU системи. Навпаки, при грамотно реалізованій технології і відповідних драйверах удається домогтися високоефективного паралелізму обчислень. У цьому випадку і CPU, і геометричний акселератор виконують ту саму роботу, але паралельно. За рахунок цього продуктивність може бути істотно підвищена і збережеться масштабованість усієї графічної підсистеми. Чи буде такий метод застосовуватися в картах на базі Voodo4 і NV10 -і поки неясно, можна тільки підкреслити, що реалізація такої технології -і дуже складна задача. Отут варто згадати про SSE і новий варіант 3DNow! (додана ще 21 інструкція). Застосування цих розширень дозволить більш ефективно використовувати обчислювальні потужності CPU, а саме: використання потенціалу SIMD дозволить одночасно перетворювати кілька просторових координат і паралельно розраховувати координати декількох джерел світла. Головне, щоб можливість використання потенціалу SIMD була реалізована в драйверах відеоакселераторів. Застосування геометричних акселераторів створить ситуацію, коли CPU більше не буде вузьким місцем у системі, а виходить, Intel і AMD зможуть успішно просувати свої нові, ще більш могутні процесори. У цьому випадку заміна одного CPU на більш новий процесор, імовірно, дозволить реально відчути зміни, а не просто вірити на слово.