воскресенье, 30 сентября 2012 г.

Учебник 1: Direct3D 11 Основы


Учебник 1: Direct3D 11 Основы

Резюме

В этом первом уроке мы будем проходить через элементы, необходимые для создания минимального приложения Direct3D 11. Каждое приложение Direct3D 11 должно иметь эти элементы и функционировать должным образом. Элементы включают в себя создание окна и устройство объекта, а затем отображение цветов на окне.

Источник

(папка SDK)\Samples\C++\Direct3D11\Tutorials\Tutorial01

Настройка Direct3D 11 устройства


Первые шаги по созданию окна и цикла обработки сообщений идентичны в Direct3D 9, Direct3D 10 и Direct3D 11. См. Direct3D 10 Учебник 00: Win32 Основы для введения в этом процессе. Теперь у нас есть окно, которое отображает и мы можем продолжить настройку Direct3D 11 устройства. Настройка необходима, если мы хотим показать любую 3D-сцену. Первое, что нужно сделать, это создать три объекта: устройство, непосредственный контекст и своп цепи. Непосредственный контекст является новым объектом в Direct3D 11.

В Direct3D 10 объекты устройства были использованы для выполнения отображения и создания ресурсов. В Direct3D 11 непосредственный контекст, используемый приложением для выполнения визуализации на буфер, а устройство содержит методы для создания ресурсов.


Подкачки цепи, ответственные за принятие буфер, к которому устройство делает, и отображения контента на фактический экран монитора.Подкачки цепь содержит два или более буферов, в основном, передней и задней части. Эти текстуры, к которому устройство делает для того, чтобы отобразить на мониторе. Передний буфер то, что представлено в настоящее время для пользователей. Этот буфер только для чтения и не может быть изменена.Вернуться буфера рендеринга, к которому устройство будет рисовать. После ее завершения операции рисования, своп цепи представит BackBuffer путем замены двух буферов.Задний буфер становится передний буфер, и наоборот.

Чтобы создать своп цепи, мы заполните DXGI_SWAPCHAIN_DESC структуру, описывающую раздел подкачки цепи мы собираемся создать.Несколько полей которых стоит упомянуть. BackBufferUsage является флагом, который рассказывает, как приложение задний буфер будет использоваться. В этом случае, мы хотим сделать на задний буфер, поэтому мы установим BackBufferUsage в DXGI_USAGE_RENDER_TARGET_OUTPUT. Поле OutputWindow представляет окно, что своп цепь будет использовать для представления изображения на экране. SampleDesc используется для включения Multi-Sampling. Так как этот урок не использовать Multi-Sampling, граф SampleDesc установлено в 1 и качество на 0, чтобы иметь Multi-Sampling отключен.

После описания были заполнены, мы можем назвать D3D11CreateDeviceAndSwapChain функции для создания и устройство и своп цепи для нас. Ниже приведен код, чтобы создать устройство и своп цепочке:




Комментариев нет: