3D графіка

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до: навігація, пошук
Приклад 3D-графіки

Тривимірна графіка (3D, 3 Dimensions, укр. 3 виміри) — розділ комп'ютерної графіки, сукупність прийомів та інструментів (як програмних, так і апаратних), призначених для зображення об'ємних об'єктів. Найбільше застосовується для створення зображень на площині екрану або аркуша друкованої продукції в архітектурній візуалізації, кінематографі, телебаченні, відеоіграх, друкованій продукції, а також в науці та промисловості.

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

Для одержання тривимірного зображення на площині потрібні наступні кроки:

  • Моделювання — створення тривимірної математичної моделі сцени і об'єктів в ній.
  • Рендеринг (візуалізація) — побудова проекції відповідно до обраної фізичної моделі.
  • Виведення отриманого зображення на пристрій виведення — дисплей або принтер.

Однак, у зв'язку зі спробами створення 3D-дисплеїв і 3D-принтерів, тривимірна графіка не обов'язково включає в себе проектування на площину.

Моделювання[ред.ред. код]

Сцена (віртуальний простір моделювання) включає в себе кілька категорій об'єктів:

  • Геометрія (побудована за допомогою різних технік модель, наприклад будівля)
  • Матеріали (інформація про візуальні властивості моделі, наприклад колір стін і відбиває / заломлююча здатність вікон)
  • Джерела світла (налаштування напрямки, потужності, спектра освітлення)
  • Віртуальні камери (вибір точки та кута побудови проекції)
  • Сили та дії (налаштування динамічних спотворень об'єктів, застосовується в основному в анімації)
  • Додаткові ефекти (об'єкти, що імітують атмосферні явища: світло у тумані, хмари, полум'я і пр.)

Завдання тривимірного моделювання — описати ці об'єкти і розмістити їх у сцені з допомогою геометричних перетворень відповідно до вимог до майбутнього зображення.

Рендеринг[ред.ред. код]

Докладніше: Рендеринг

На цьому етапі математична (векторна) просторова модель перетворюється на плоску (растрову) картинку. Якщо потрібно створити фільм, то рендериться послідовність таких картинок — кадрів. Як структура даних, зображення на екрані представлено матрицею точок, де кожна точка визначена принаймні трьома числами: інтенсивністю червоного, синього і зеленого кольору. Таким чином рендеринг перетворює тривимірну векторну структуру даних у плоску матрицю піксел ів. Цей крок часто вимагає дуже складних обчислень, особливо коли потрібно створити ілюзію реальності. Найпростіший вид рендеринга — це побудувати контури моделей на екрані комп'ютера за допомогою проекції, як показано вище. Звичайно цього недостатньо і потрібно створити ілюзію матеріалів, з яких виготовлені об'єкти, а також розрахувати спотворення цих об'єктів за рахунок прозорих середовищ (наприклад, рідини в склянці).

Існує декілька технологій візуалізації, часто комбінованих разом. Наприклад:

  • Z-буфер (використовується в OpenGL і DirectX 10);
  • Сканлайн (scanline) — він же Ray casting («кидання променя», спрощений алгоритм зворотного трасування променів) — розрахунок кольору кожної точки картинки побудовою променя з точки зору спостерігача через уявне отвір в екрані на місці цього пікселя "в сцену "до перетину з першою поверхнею. Колір пікселя буде таким же, як колір цієї поверхні (іноді з урахуванням освітлення і т. д.);
  • Трасування променів (рейтрейсінг, англ. raytracing) — те ж, що і сканлайн, але колір пікселя уточнюється за рахунок побудови додаткових променів (відображених, заломлених і т. д.) від точки перетину променя погляду. Незважаючи на назву, застосовується тільки зворотний трасування променів (тобто саме від спостерігача до джерела світла), пряма вкрай неефективна і споживає занадто багато ресурсів для отримання якісної картинки;
  • Глобальне освітлення (англ. global illumination,radiosity) — розрахунок взаємодії поверхонь і середовищ у видимому спектрі випромінювання за допомогою інтегральних рівнянь.

Грань між алгоритмами трасування променів в наш час[Коли?] практично стерлася. Так, в 3D Studio Max стандартний візуалізатор називається Default scanline renderer, але він вважає не лише внесок дифузного, відбитого та власного (кольори самосвеченія) світла, але і згладжені тіні. З цієї причини, частіше поняття Raycasting відноситься до зворотної трасуванні променів, а Raytracing — до прямої.

Найпопулярнішими системами рендеринга є:

Внаслідок великого обсягу однотипних обчислень рендеринг можна розбивати на потоки (распараллелівать). Тому для візуалізації вельми актуальне використання багатопроцесорних систем. Останнім часом активно ведеться розробка систем візуалізації використовують GPU замість CPU, і вже сьогодні їх ефективність для таких обчислень набагато вище. До таких систем відносяться:

Багато виробників систем візуалізації для CPU також планують ввести підтримку GPU (LuxRender, YafaRay, mental images iray).

Найпередовіші досягнення та ідеї тривимірної графіки (і комп'ютерної графіки загалом) доповідаються і обговорюються на щорічному симпозіумі SIGGRAPH, традиційно проводиться в США.

Програмне забезпечення[ред.ред. код]

Програмні пакети, що дозволяють створювати тривимірну графіку, тобто моделювати об'єкти віртуальної реальності і створювати на основі цих моделей зображення, дуже різноманітні. Останні роки стійкими лідерами в цій галузі є комерційні продукти: такі як 3ds Max, Maya, Lightwave 3D, SoftImage XSI, Sidefx Houdini, Maxon Cinema 4D, Realsoft 3D і порівняно нові Rhinoceros 3D, modo, Nevercenter Silo або ZBrush. Крім того, існують і відкриті продукти, поширювані вільно, наприклад, пакет Blender (дозволяє робити і виробництво моделей, і подальший рендерінг), K-3D і Wings3D (тільки створення моделей з можливістю подальшого використання їх іншими програмами). Деякий час тому Caligari закрила розробки з trueSpace і вона стала безкоштовною.

SketchUp[ред.ред. код]

Безкоштовна програма SketchUp дозволяє створювати моделі, сумісні з географічними ландшафтами ресурсу Google Планета Земля, а також переглядати в інтерактивному режимі на комп'ютері користувача кілька тисяч архітектурних моделей, які викладені на безкоштовному постійно поповнюється ресурсі Google Cities in Development (видатні будівлі світу), створені спільнотою користувачів.

Тривимірна графіка активно застосовується в системах автоматизації проектних робіт (САПР) для створення твердотільних елементів: будівель, деталей машин, механізмів, а також в архітектурної візуалізації (сюди відноситься і так звана «віртуальна археологія»). Широко застосовується 3D графіка і в сучасних системах медичної візуалізації.

Зв'язок з фізичним представленням тривимірних об'єктів[ред.ред. код]

Тривимірна графіка зазвичай оперує віртуальним, уявним тривимірним простором, який відображається на плоскій, двовимірній поверхні дисплея або аркуша паперу. В наш час[Коли?] відомо кілька способів відображення тривимірної інформації в об'ємному вигляді, хоча більшість з них представляє об'ємні характеристики досить умовно, оскільки працюють з стереообладнанням. З цієї області можна відзначити стереоокуляри, віртуальні шоломи, 3D-дисплеї, здатні демонструвати тривимірне зображення. Декілька виробників продемонстрували готові до серійного виробництва тривимірні дисплеї. Але щоб насолодитися об'ємною картинкою, глядачеві необхідно розташуватися строго по центру. Крок вправо, крок вліво, так само як і необережний поворот голови, спричиняє втрату тривимірності і спостереження дещо неякісного зображення. Вирішення цієї проблеми вже визріло в наукових лабораторіях. Німецький Інститут Фраунгофера демонстрував 3D-дисплей, який за допомогою двох камер відслідковує положення очей глядача і відповідним способом підлаштовує зображення, в цьому році пішов ще далі. Тепер відстежується положення не тільки ока, але і пальця, яким можна «натискати» тривимірні кнопки. А команда дослідників Токійського Університету створили систему що дозволяє відчути зображення. Випромінювач фокусується на точці де знаходиться палець людини і залежно від його положення змінює силу акустичного тиску. Таким чином, стає можливим не тільки бачити об'ємну картинку, але й взаємодіяти із зображеними на ній предметами.

Однак і 3D-дисплеї, як і раніше не дозволяють створювати повноцінної фізичної, відчутної копії математичної моделі, створюваної методами тривимірної графіки.

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

Тривимірні дисплеї[ред.ред. код]

Тривимірні, або стереоскопічні дисплеї, (3D displays, 3D screens) — дисплеї, за допомогою стереоскопічного або будь-якого іншого[1] ефекту створюють ілюзію реального обсягу у демонстрованих зображень.

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

Стереоскопічні дисплеї[ред.ред. код]

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

Існує також відносно новий клас стереодісплеев, що не вимагають використання додаткових пристроїв, але мають масу обмежень. Зокрема, це кінцеве і дуже невелика кількість ракурсів, в яких стереозображення зберігає чіткість. Стереодісплеі, виконані на базі технології New Sight x3d, забезпечують вісім ракурсів, Philips WOWvx — дев'ять ракурсів. У жовтні 2008 року компанія Philips представила прототип стереодісплея з роздільною здатністю 3840 × 2160 пікселів і з рекордними 46 ракурсами «безпечного» перегляду. Незабаром після цього, однак, Philips оголосив про припинення розробок і досліджень в області стереодісплеев.[2]

Ще одна проблема стереодісплеев — це мала величина зони «комфортного перегляду» (діапазон відстаней від глядача до дисплея, в якому зображення зберігає чіткість). У середньому вона обмежена діапазоном від 3 до 10 метрів.

Стереодісплеі самі по собі не мають прямого відношення до тривимірної графіки. Плутанина виникає внаслідок використання в західних ЗМІ терміна 3D у відношенні як графіки, так і пристроїв, що експлуатують стереоефект, і некоректність перекладу при публікації в російських виданнях запозичених матеріалів.

Існує також технологія WOWvx, за допомогою якої можна отримати ефект 3D без використання спеціальних окулярів. Використовується технологія лентикулярні лінз, яка дає можливість великій кількості глядачів широку свободу руху без втрати сприйняття ефекту 3D. Шар прозорих лінз закріплюється перед рідкокристалічним дисплеєм. Цей шар направляє різні картинки кожному оці. Мозок, обробляючи комбінацію цих картинок створює ефект об'ємного зображення. Прозорість лінзового шару забезпечує повну яскравість, чіткий контраст і якісну передачу кольору картинки.

Світлодіодні 3D-дисплеї[ред.ред. код]

Існує технологія відображення тривимірного відео та графіки на великих світлодіодних екранах, яка застосовується зокрема при обладнанні спортивних фан-зон.

28 травня 2011 року в Гетеборзі (Швеція) у клубі Trädgår'n було встановлено великий світлодіодний екран, який транслював футбольний матч у прямому ефірі у форматі 3D. У цей час (липень 2011 року) цей екран є найбільшим у світі світлодіодним телевізором. Екран розроблено і виготовлено української компанією ЕКТА на власному заводі у м. Житомир.[3][4] Відеотрансляцію забезпечувала компанія Viasat-Швеція.[5] Світовий рекорд зафіксовано в Книзі рекордів Гіннеса.[6]

Інші дисплеї[ред.ред. код]

У цей час (червень 2010 р) існують декілька експериментальних технологій, що дозволяють добитися об'ємного зображення без стереоскопії. Ці технології використовують швидку розгортку променя лазера, яка розсіюється на частинках диму або відбиваються від швидко обертається пластини.

Існують також пристрої, в яких на швидко обертається пластині закріплені світлодіоди.

Такі пристрої нагадують перші спроби створити механічну телевізійну розгортку. Мабуть, в майбутньому варто очікувати появу повністю електронного пристрою, що дозволяє імітувати світловий потік від об'ємного предмета в різних напрямках, щоб людина могла обійти навколо дисплея і навіть дивитися на зображення одним оком без порушення об'ємності зображення.

Тривимірні кінотеатри[ред.ред. код]

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

На сьогоднішній день перегляд фільмів у форматі «3D» став дуже популярним явищем.

Основні використовувані в наш час[Коли?] технології показу стереофільмів[7]:

Доповнена реальність і 3D[ред.ред. код]

Своєрідним розширенням 3D-графіки є «доповнена реальність». Використовуючи технологію розпізнавання зображень (маркерів), програма доповненої реальності добудовує віртуальний 3D-об'єкт у реальній фізичній середовищі. Користувач може взаємодіяти з маркером: повертати в різні боки, по-різному висвітлювати, закривати деякі його частини — і спостерігати зміни, що відбуваються з 3D-об'єктом на екрані монітора комп'ютера.

Поштовхом до широкого розповсюдження технологій послужило створення в 2008 році відкритої бібліотеки FLARToolKit для технології Adobe Flash.

Див. також[ред.ред. код]

Примітки[ред.ред. код]

Література[ред.ред. код]

  • Дж. Лі, Б. Уер. Тривимірна графіка та анімація. — 2-е вид. — М.: Вільямс, 2002. — 640 с.
  • Д. Херн, М. П. Бейкер. Комп'ютерна графіка й стандарт OpenGL. — 3-е вид. — М.: Вільямс, 2005. — 1168 с.
  • Е. Енджел. Інтерактивна комп'ютерна графіка. Вступний курс на базі OpenGL. — 2-е вид. — М.: Вільямс, 2001. — 592 с.
  • Г. Снук. 3D-ландшафти в реальному часі на C + + і DirectX 9. — 2-е вид. — М.: Кудиц-прес, 2007. — 368 с. — ISBN 5 -9579-0090-7
  • В. П. Іванов, А. С. Батраков. Тривимірна комп'ютерна графіка / Під ред. Г. М. Поліщука. — М.: Радіо та зв'язок, 1995. — 224 с. — ISBN 5-256-01204-5

Посилання[ред.ред. код]