Архитектура нашей программыСтр 1 из 19Следующая ⇒
Урок 1. Простейшее приложение DirectX11 В этом уроке вы узнаете: как установить среду разработки для DirectX; как создавать окно; как инициализировать DirectX и получать доступ к интерфейсу Direct3Ddevice11; как отобразить наше первое окно DirectX. Установка среды разработки DirectX11 Для того, чтобы работать с DirectX, необходимо иметь минимальные базовые навыки программирования под Windows. Более того, нужно быть неплохим программистом под Windows и хорошо знать C++, чтобы освоить DirectX и уже иметь определенный опыт написания программ под эту операционную систему. Для разработки подойдет компилятор MicrosoftVisualStudio2010. В наших примерах мы будем пользоваться MicrosoftDirectXSDK, этот SDK свободно распространяется Microsoft, так что вы легко сможете его найти в Интернете. После установки SDK в ProgramFiles вы найдете папку MicrosoftDirectX SDK. Для того, чтобы работать с нашими примерами, загрузите архив с примером, расположенный тут. Затем распакуйте папку с примером в любое место. Откройте VisualC++ и загрузите в него проект. Вы также можете создать новый проект VisualC++ на основе одних файлов .cpp. О том как это сделать, будет сказано в конце этого урока. Сейчас же разберем наш пример простейшего приложения. Архитектура нашей программы Наше приложение Direct3D как и последующие приложения будет иметь следующую архитектуру: Для каждой отдельной операции мы будем использовать функцию. Большинство из этих функций будут вызываться из WinMain, некоторые из MsgProc. В наших примерах мы будем рассматривать отдельно каждую функцию и её содержимое. Главная функция приложения: WinMain Каждое приложение Windows должно иметь функцию WinMain. Мы будем использовать эту функцию с той-же целью, что и всегда – как главную функцию программы. Рассмотрим исходный текст нашей функции WinMain:
Первое что нужно сделать, это создать главное окно программы. Мы просто сделаем вызов функции InitWindow и создадим окно. В следующих разделах этой статьи мы ознакомимся более детально со всеми функциями, которые мы вызываем из WinMain. Следующая операция – это инициализация устройства: InitDevice. В этой функции мы установим глобальные переменные а также инициализируем объекты, и наконец – в этой функции уже включится наш видеоускоритель. В данном примере мы не будем рассматривать функцию Каждое приложение Windows имеет цикл обработки сообщений. Обработка сообщений нужна для того чтобы отслеживать поступающие в окно сообщения от системы – клавиши, сворачивание и разворачивание окна и т.п. На самом деле отслеживание сообщений будет выполнятся в функции WndProc, однако цикл обработки сообщений – это совершенно необходимая надстройка и часть любого приложения Windows и DirectX. Из этого цикла выполняется функция Render, то есть периодически будет обновятся динамически меняющееся содержимое сцены. Вы можете взглянуть на содержимое Render ниже по тексту и получить уже на 75% представление о том, вообщем, как работает наше приложение, однако архитектура DirectX11 изменена по сравнению с предыдущими версиями, так что нам нужно будет изучить все более детально. Итак, начнем. ©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.
|