Знайте, Intuit, лекция, триизмерни графики с помощта на Direct3D

Анотация: В тази глава се обсъжда как да се работи с триизмерна графика с помощта на Direct3D графична библиотека. Показва се и обсъдени подробно схемата на графични тръбопровод, както и методите изпълнение с помощта на C ++ и Pascal

Движеща сила на графичната тръбопровода

В този раздел, ние обсъждаме принципи на триизмерни сцени, като използвате Direct3D графична библиотека. Първо, трябва да се запознаят със схемата на графични газопровода. Graphics тръбопровод е един вид хардуер и софтуер, устройство, което се превежда на обектите, описани в триизмерното пространство, XYZ. като се вземе предвид позицията на наблюдател, в множество пиксели на екрана на монитора. По-долу е схема на графика тръбопровод поток.

Знайте, Intuit, лекция, триизмерни графики с помощта на Direct3D

"Живот" оглавява започва, когато те влязат в графика тръбопровода от приложения. В първия етап на графични газопровода всички върховете на обекти, изложени на афинни трансформации - ротация, увеличение и преместване. По време на тази стъпка съответства на блокова трансформация и осветление, или Shader на върха. В действителност, те изпълняват една и съща работа за превръщането на върха, но блок преобразува и осветление строго определя правила за обработка, а Shader вертекс е програмируем елемент в тази стъпка. Тук идва изчисляването на осветление във върховете в зависимост от броя, местоположението и се видове източници на светлина. Vertex Shader получава като вход на връх като координати в локалната координатна система, и ги извежда като, но се трансформира в системата координати на наблюдателя (камера).

Подстригване невидими лица "премахва" всички триъгълници от сцената, които са разположени nelitsevymi страни към камерата (наблюдател). Програмистът може да определя реда на пресичане триъгълник върховете на (по часовниковата стрелка / обратно на часовниковата стрелка), в които библиотеката ще блокират изхода на тези примитиви.

Потребителят може да инсталирате допълнителни клипинг самолети, което ще отреже върховете и триъгълници, които са в негативните половин равнини.

Клипинг очевидно обем определя гледане пирамида и примитиви, които са извън пирамидата ще бъдат подрязани.

В следващата стъпка графика тръбопровода т.нар хомогенна трансформация, в която х. у. Z координати на върховете са разделени в четвърти компонент, наречен хомогенен множител. След превръщането, координатите ще бъдат нормализирани триъгълници и обем (пирамида) видимостта се трансформира в ортогонална куб единица.

Сега нормализирани координати са показани в пространството на екрана. В тази стъпка "живота" на върха в графика газопровода свършва.

Следващата стъпка започва с растеризиране на триъгълници и ги получаването от подредба на пикселите. Където всеки един пиксел растеризиран има същите атрибути (цвят, текстура координати и т.н.), както и че след връх Shader преработвателната връх. Стойностите на атрибутите на пикселите са изчислени въз основа на линейна интерполация примитивни върхове.

Multitexture стъпка може да се извърши чрез механизъм, който да работи с текстури, или с помощта на пикселните шейдъри. На пиксели могат да се разглеждат като програмируем обработка механизъм пиксел. Освен това, методът и в резултат на тази обработка зависи от програмист. Тя е с на пиксели, приготвени визуални ефекти, сравними с филм подобни (симулация на вода тревно покритие, кожа, молец и осветление на пиксел и др.).