"Історія розвитку комп’ютерної графіки"
Поняття комп’ютерної графіки
Усі зображення, що зберігаються на матеріальних носіях, намальовані людиною або є знімками реального світу. Перший спосіб отримання зображень, малювання, відомий з найдавніших часів, а другий — з XIX століття, коли винайшли фотографію. Комп'ютерна графіка поєднала два способи отримання зображень і відкрила нові методи їх обробки, не відомі ані у фотографії, ані у традиційному образотворчому мистецтві. Термін «комп'ютерна графіка» має кілька значень. У найбільш широкому розумінні — це галузь людської діяльності.
Комп'ютерна графіка — галузь людської діяльності, пов'язана з використанням комп'ютерів для створення зображень і обробки візуальної інформації, отриманої з реального світу.
У вужчому розумінні комп'ютерною графікою називають результат такої діяльності. В інформатиці як науці комп'ютерна графіка виділена в окрему галузь, яка вивчає методи і засоби створення, обробки та використання зображень за допомогою програмно-апаратних засобів.
Основні сфери застосування технологій комп'ютерної графіки такі:
графічний інтерфейс користувача; спецефекти, кінематографія й телебачення; цифрове телебачення, Інтернет, відеоконференції; обробка цифрових фотографій; комп'ютерні ігри, системи віртуальної реальності. (1)
Історія розвитку комп’ютерної графіки
Комп'ютерна графіка в початковий період свого виникнення була далеко не такою ефектною, якою вона стала в нинішні дні. В ті роки комп'ютери знаходилися на ранній стадії розвитку і були здатні відтворювати тільки найпростіші контури (лінії). Ідея комп'ютерної графіки не відразу була підхоплена, але її можливості швидко росли, і поступово вона стала займати одну з найважливіших позицій в інформаційних технологіях.
Першою офіційно визнаною спробою використання дисплея для виведення зображення з ЕОМ з'явилося створення в Массачусетському технологічному університеті машини Whirlwind - I в 1950 р.. Таким чином, виникнення комп'ютерної графіки можна віднести до 1950-х років. Сам же термін "комп'ютерна графіка" придумав в 1960 р. співробітник компанії Boeing У. Феттер.
Перше реальне застосування комп'ютерної графіки зв'язують з ім'ям Дж. Уітні. Він займався кіновиробництвом в 50-60-х роках і уперше використовував комп'ютер для створення титрів до кінофільму.
Батьком-засновником 3D графіки можна назвати Івана Сазерленда - цей талановитий чоловік за часів роботи в університеті аспірантом у 1961 році створив додаток SketchPad. SketchPad - невелика, але революційна програма в світі комп'ютерних технологій, яка дозволяла виробляти на світ перші 3D об'єкти. Програма використовувала світлове перо для зображення простих фігур на екрані. Отримані картинки можна було зберігати і відновлювати. У цій програмі було розширене коло основних графічних примітивів, зокрема, окрім ліній і точок був введений прямокутник, який задавали розмірами і розташуванням. Саме SketchPad стала тим самим «поштовхом», який послужив бурхливому розвитку тривимірного зображення - саме завдяки SketchPad ми маємо таке 3D, яке воно є.
У тому ж 1961 р. студент Стів Рассел створив першу комп'ютерну відеогру Spacewar ("Зоряна війна"), а науковий співробітник Bell Labs Едвард Зеджек створив анімацію "Simulation of a two - giro gravity control system".
Захистивши свою дисертацію, що розповідає про світ, яким би він був у 3D (тоді ще ця абревіатура не застосовувалася), спільно з доктором Девідом Евансом Іван запускає в громадськість свій новий проект - першу в світі кафедру комп'ютерних технологій, а саме векторної і растрової графіки. Переслідують Еванс і Сазерленд при цьому тільки благородні цілі - прилучення талановитих вчених до розробки та вивченню сучасних комп'ютерних та інформаційних технологій. Не встигнувши розігнатися на своєму новому терені, вони знайшли нового союзника - колишнього в той час студентом Еда Катмулла (сьогодні він є технічним директором знаменитої мультиплікаційної студії Pixar). Його безумовним досягненням є те, що саме Ед вперше зміг зробити тривимірний об'єкт. Цим об’єктом була модель його власної кінцівки - кисть руки. Тоді це було дуже великим досягненням, і прираховувалося до технологій майбутнього. В 1969 році співпраця Івана з Едом виросла у їх першу власну компанію, що займається розробкою і масовим виробництвом CG (розшифровується, як computer graphics - комп'ютерна графіка). Назвали її досить просто - «Еванс і Сазерленд».
Спочатку комп'ютерна графіка була векторною, тобто зображення формувалося з тонких ліній. Ця особливість була пов'язана з технічною реалізацією комп'ютерних дисплеїв. Надалі ширше застосування отримала растрова графіка, заснована на представленні зображення на екрані у вигляді матриці однорідних елементів (пікселів). Одна з перших ЕОМ для роботи з комп’ютерною графікою.png
У середині 60-х кількома талановитими фізиками була організована компанія «Вищих Математичних Технологій», яка повинна була займатися вивченням радіаційних полів. Саме вони зробили наступний широкий крок вперед - їх ПЗ Synthavision, запущене для вивчення радіації перенесло ряд змін - після глобальної адаптації, Synthavision стало можливим застосовувати для рендерингу та як основу «трасування променів» - саме способом трасування променів стало можливим прораховувати геометричні об'єкти, відображення, різні відблиски і т.д. Результат роботи програми Synthavision.png
Євген Трубецькой і англієць Карл Людвіг внесли, мабуть, найбільший внесок у розвиток "ray-tracing", внісши велику кількість різних змін і налагодивши її роботу до дрібниць. Незважаючи на те, що тогочасні комп'ютери були колосально великими - графіка, відтворена ними, була дуже незграбною. Комп'ютери в той час відрізнялися досить скромними технічними характеристиками, що й перешкоджало просуванню і роботі 3D графіки. Принцип роботи "ray-tracing".png
Необхідний був прийнятний результат, а отже, і більш потужні робочі станції. Джим Кларк - один з професорів кафедри CG Стенфордського університету - об'єднавшись з Еббі Сільверстоуном, відкриває в Наприкінці 1981 року компанію, відому як «Силіконова графіка». Випустивши IRIS 1000 - сучасну за тими мірками і дуже потужну машину, Джим і Еббі вирішили продовжити свою діяльність. І вже через кілька місяців, у світ виходить кілька комп'ютерів, оснащених ОС Unix.
Університет штату Юта стає центром досліджень в області комп'ютерної графіки завдяки Д. Евансу і А. Сазерленду, які в цей час були найпомітнішими фігурами в цій області. Пізніше їх коло стало швидко розширюватися. Учнем Сазерленда став Е. Кетмул, майбутній творець алгоритму видалення невидимих поверхонь з використанням Z-буфера (1978). Тут також працювали Дж.Варнок, автор алгоритму видалення невидимих граней на основі розбиття області (1969) і засновник Adobe System (1982), Дж.Кларк, майбутній засновник компанії Silicon Graphics (1982). Усі ці дослідники дуже сильно просунули алгоритмічну сторону комп'ютерної графіки.
У 1970-і роки відбувся різкий стрибок в розвитку обчислювальної техніки завдяки винаходу мікропроцесора, внаслідок чого почалася мініатюризація комп'ютерів і швидке зростання їх продуктивності. І в цей же час починає інтенсивно розвиватися індустрія комп'ютерних ігор. Одночасно комп'ютерна графіка починає широко використовуватися на телебаченні і в кіноіндустрії. Дж.Лукас створює відділення комп'ютерної графіки на Lucasfilm.
У 1977 р. з'являється новий журнал "Computer Graphics World".
В середині 1970-х років графіка продовжує розвиватися у бік все більшої реалістичності зображень. Е. Кетмул в 1974 р. створює перші алгоритми текстурування криволінійних поверхонь. У 1975 р. з'являється згаданий раніше метод зафарбовування Фонга. У 1977 г. Дж.Блін пропонує алгоритми реалістичного зображення шорстких поверхонь (мікрорельєфів); Ф. Кроу розробляє методи усунення ступінчастого ефекту при зображенні контурів (антиелайзінг). Дж.Брезенхем створює ефективні алгоритми побудови растрових образів відрізків, кіл і еліпсів. Рівень розвитку обчислювальної техніки до цього часу вже дозволив використовувати "жадібні" алгоритми, що вимагають великих об'ємів пам'яті, і в 1978 р. Кетмул пропонує метод Z -буфера, в якому використовується область пам'яті для зберігання інформації про "глибину" кожного пікселя екранного зображення. У цьому ж році Сайрус і Бек розвивають алгоритми відсікання ліній. А в 1979 р. Кей і Грінберг уперше реалізують зображення напівпрозорої поверхні.
У 1980 р. Т. Уіттед розробляє загальні принципи трасування променів, що включають віддзеркалення, заломлення, затінювання і методи антиелайзингу. У 1984 р. групою дослідників (Горел, Торренс, Грінберг та ін.) була запропонована модель випромінювання, одночасно розвиваються методи прямокутного відсікання областей.
У 1980-і роки з'являється цілий ряд компаній, що займаються прикладними розробками в області комп'ютерної графіки. У 1982 г. Дж.Кларк створює Silicon Graphics, тоді ж виникає Ray Tracing Corporation, Adobe System, в 1986 р. компанія Pixar відгалужується від Lukasfilm.
У ці роки комп'ютерна графіка вже міцно впроваджується в кіноіндустрію, розвиваються додатки до інженерних дисциплін. У 1990-і роки у зв'язку з виникненням мережі Internet у комп'ютерної графіки з'являється ще одна сфера застосування. Знімок екрану програми Power Animator.jpeg
У вітчизняній науці теж були свої розробки, серед яких можна назвати ряд технічних реалізацій дисплеїв, виконаних в різні роки:
1968, ВЦ АН СРСР, машина БЭСМ- 6, ймовірно, перший вітчизняний растровий дисплей з відеопам'яттю на магнітному барабані;
1972, Інститут автоматики і електрометрії (ИАиЭ), векторний дисплей "Символ";
1973, ИАиЭ, векторний дисплей "Дельта";
1977, ИАиЭ, векторний дисплей ЭПГ- 400;
1982, Київ, НДІ периферійного устаткування, векторний дисплей СМ- 7316, 4096 символів, роздільна здатність 2048х2048;
1979-1984, Інститут прикладної фізики, серія растрових кольорових півтонових дисплеїв "Гамма". Останні дисплеї цієї серії мали таблицю колірності, підтримували вікна, плавне масштабування.
Таким чином, в процесі розвитку комп'ютерної графіки можна виділити декілька етапів.
У 1960-1970-і роки вона формувалася як наукова дисципліна. В цей час розроблялися основні методи і алгоритми : відсікання, растрова розгортка графічних примітивів, зафарбовування візерунками, реалістичне зображення просторових сцен (видалення невидимих ліній і граней, трасування променів, випромінюючі поверхні), моделювання освітленості.
У 1980-і графіка розвивається більш як прикладна дисципліна. Розробляються методи її застосування в самих різних областях людської діяльності.
У 1990-і роки методи комп'ютерної графіки стають основним засобом організації діалогу "людина-комп'ютер" і залишаються такими по теперішній час.
У 1993 році компанією Silicon Graphics запропонований стандарт OpenGL (SGI Graphical Language), який широко використовується в даний час. У цих системах використовуються графічні формати для обміну даними, що представляють собою опис зображення у функціях віртуального графічного пристрою (у термінах примітивів і атрибутів). Графічний формат (метафайл) забезпечує можливість запам'ятовувати графічну інформацію єдиним чином, передавати її між різними системами і інтерпретувати для виведення на різні пристрої. Такими форматами стали CGM - Computer Graphics Metafile, PostScript - Adobe Systems 'Language, GEM - GEM Draw File Format та ін..
Роботи по стандартизації були спрямовані на розширення функціональності графічних мов і систем, включення до них засобів опису не тільки даних креслень і 3D- моделей, а й інших властивостей і характеристик виробів. В області автоматизації проектування уніфікація основних операцій геометричного моделювання призвела до створення інваріантних геометричних ядер, призначених для застосування в різних САПР. Найбільшого поширення набули два геометричних ядра Parasolid (продукт фірми Unigraphics Solutions) і ACIS (компанія Spatial Technology). Ядро Parasolid розроблено в 1988 р. і в наступному році стає ядром твердотільного моделювання для CAD / CAM Unigraphics, а з 1996 р. - промисловим стандартом. (2) Сфери застосування компютерної графіки
Основні сфери застосування технологій комп’ютерної графіки: - графічний інтерфейс користувача; - спецефекти, кінематографія, телебачення; - цифрове телебачення, Інтернет, відеоконференції; - обробка цифрових фотографій; - комп'ютерні ігри, системи віртуальної реальності.
Комп'ютерна графіка застосовується для візуалізації даних у різних сферах людської діяльності: у медицині - комп'ютерна томографія; в науці - наприклад, для наочного зображення складу речовини, побудови графіків; в дизайні - для реклами, поліграфії, моделювання, та ін.
Комп'ютерна графіка складає цілий ряд напрямків і має різне застосування. За допомогою КГ вирішують багато графічних задач. У комп'ютері синтезуються прості і складні об'єкти: поверхні, тіла, структури. Без швидкого і точного рішення графічних і геометричних задач не можна освоювати космос, конструювати складні механізми і машини, будувати інженерні спорудження, розвивати медицину і т.п..
Комп'ютерну графіку широко застосовують при рішенні актуальної проблеми підвищення продуктивності і точності інженерної роботи. Цього досягають автоматизацією розрахунково-графічних робіт, вирішуючи різноманітні задачі в області машинобудування, літакобудування, профілювання складного різального інструмента і т.д.(2)