Graphics Reference
In-Depth Information
1.1 Direct3D Framework
Direct3D 11 is a native application programming interface (API) which is used to commu-
nicate with and control the video hardware of a computer to create a rendered image. The
term native indicates that the API is designed to be accessed through C/C++, as opposed
to by a managed language. So, the most direct way to use the API is from within a C/C++
application. Although there are a number of different native windowing frameworks, we
will be working with the Win32 API, simply to reduce the number of additional software
technologies needed to get Direct3D 11 up and running.
Even though they are transparent to the application, there are actually a number of
different software layers that reside below Direct3D, which together make up the overall
graphics architecture used in the Windows client environment. In this section we will dis-
cuss how the application and Direct3D fit into this overall architecture and will explore
what the other components are used for, to provide a well-rounded idea of what we are
actually doing when working with the API.
1.1.1 Graphics Architecture
The general graphics architecture used in Windows
is shown in Figure 1.1. In this diagram, we can see
that the application sits at the highest level, and pri-
marily interacts with Direct3D. In the next layer
down, the Direct3D runtime interacts with the user-
mode driver of the video hardware to execute the
commands generated by the application. The driver
then interacts with the DXGI framework, which
is responsible for performing the low level com-
munication with the kernel-mode driver, and for
managing the available hardware resources. With
such an array of different layers and interfaces, it
can be somewhat complex to understand what each
of them is responsible for. However, we will briefly
walk through each of the layers to gain an insight
into what operations each of them perform..
The application is ultimately in control of the
content that will end up being presented to the user
in her application window. Any two-dimensional or
three-dimensional objects, images, text, animations,
Figure 1.1. The various components
of the graphics subsystems used with
Direct3D
Search WWH ::




Custom Search