Сучасні API для програмування тривимірної графіки, математичні основи. Віртуальна камера, конвеєр візуалізації. Вершинні та піксельні шейдери. Розробка та реалізація ігрового додатку. Система постобробки зображення. Реалізація механіки ігрового процесу.
При низкой оригинальности работы "Засоби технології Microsoft XNA як основа розробки тривимірних ігрових додатків", Вы можете повысить уникальность этой работы до 80-100%
Сучасні компютерні ігри є досить складними програмними додатками, які включають в себе високоякісну тривимірну графіку яка генерується в реальному часі, програмні компоненти які реалізують фізичні властивості віртуальних об’єктів, роботу з різноманітними ресурсами (звук, відео, двовимірні зображення та ін.), та безліч інших компонентів, що складають структуру практично будь-якого ігрового додатку. В свою чергу технологія Microsoft XNA надає доступ програмісту до великого набору спеціальних системних бібліотек та інструментів, спрямованих на поліпшення та спрощення процесу створення високоякісних ігрових додатків для всіх продуктів сімейства Microsoft [1]. Зважаючи на все вищесказане можна зробити висновок, що проектування та розробка ігрових додатків на базі технології Microsoft XNA, а також наборів класів і програмних компонентів які прискорять і полегшать розробку ігрових додатків в наш час має значну актуальність. У відповідності з метою дослідження ставляться наступні завдання: Дослідити та описати поняття тривимірної графіки та математичні основи її побудови. Проаналізувати процес візуалізації тривимірних сцен. Дослідити принцип роботи та можливості використання вершинних та піксельних шейдерів. Розробити набір шейдерних ефектів засобами мови HLSL. Тривимірне зображення на площині відрізняється від двовимірного тим, що включає побудову геометричної проекції тривимірної моделі(сцени) на площину (наприклад, екран компютера) за допомогою спеціалізованих програм. При цьому модель може, як відповідати обєктам з реального світу (автомобілі, людина, планета, астероїд), так і бути повністю абстрактною (проекція чотиривимірного фрактала). Сцена (віртуальний простір моделювання) включає в себе кілька категорій обєктів: геометрія (побудована за допомогою різних технік модель) матеріали (інформація про візуальні властивості моделі, наприклад колір і відбиваюча або заломлююча здатність поверхонь) джерела світла (налаштування, напрямки, потужності спектра освітлення) віртуальні камери (вибір точки та кута побудови проекції) сили та дії (налаштування динамічних спотворень обєктів, застосовується як правило в анімації) додаткові ефекти (обєкти, що імітують атмосферні явища: світло у тумані, хмари, полумя і т.д.) Завдання тривимірного моделювання - описати тривимірні обєкти і розмістити їх у сцені за допомогою геометричних перетворень відповідно вимогам до майбутнього зображення. Таким чином візуалізація перетворює тривимірну векторну структуру даних у плоску матрицю пікселів. Виведення отриманого зображення на пристрій виведення - дисплей або принтер. 1.2 Сучасні API для програмування тривимірної графіки На сьогоднішній день існує два основних API для програмування тривимірної графіки в ігрових додатках : Direct3D, OpenGL. DirectX - це набір API функцій, розроблених для простого і ефективного вирішення завдань, повязаних з ігровим і відео-програмуванням під Microsoft Windows [2]. В цілому, DirectX підрозділяється на: DirectX Graphics, набір інтерфейсів, що раніше (до версії 8.0) ділилися на: DirectDraw - інтерфейс виведення растрової графіки; Direct3D (D3D) - інтерфейс виведення тривимірних примітивів; DirectInput: інтерфейс для обробки даних, що надходять з клавіатури, миші, джойстика тощо ігрових контролерів; DirectPlay: інтерфейс мережевої комунікації ігор; DirectSound: інтерфейс низькорівневої роботи із звуком (формату Wave); DirectMusic: інтерфейс відтворення музики у форматах Microsoft; DirectShow: інтерфейс для вводу/виводу аудіо- і/або відео- даних; DirectSetup: частина, відповідальна за установку DirectX; DirectX Media Objects: реалізує функціональну підтримку потокових обєктів. Взаємозв’язок між додатком, Direct3D і апаратурою компютера показані на (рис. 1.1). Рис. 1.1 - Взаємозв’язок між додатком, Direct3D та апаратурою На рис. 1.1 блок з назвою Direct3D представляє набір документованих інтерфейсів і функцій, які Direct3D надає додаткам і програмістам. Наприклад, дві різні відеокарти можуть зовсім по-різному виконувати очищення екрану. XNA Framework грунтується на реалізації .NET Compact Framework 2.0 для розробки під Xbox 360 і .NET Framework 4.0 на Windows. Вектори забезпечують зручний механізм завдання напряму в тривимірному просторі. Рис. 1.3 - Набір векторів які визначені незалежно від системи координат Оскільки місце розташування не є характеристикою вектора, два вектори які мають однакову довжину і вказують в одному і тому ж напрямку вважаються рівними, навіть якщо вони розташовані в різних місцях. На рис. 1.4 показані вектори, зображені на рис. 1.3, які були переміщені в стандартні позиції. Рис. 1.4 - Вектори в стандартній позиції Існує багато тривимірних систем координат, але в програмуванні тривимірної графіки найбільш розповсюдженими є правостороння та лівостороння системи координат, вони відрізняються лише напрямком осі Z. Ідея полягає в наступному: Ініціалізуються елементи матриці X розміром 4 × 4 таким чином, щоб вони описували необхідне перетворення. FBX - технологія і формат файлів (.fbx) ро
Вы можете ЗАГРУЗИТЬ и ПОВЫСИТЬ уникальность своей работы