Graphics Reference
In-Depth Information
5.
By the value of
EGL_SAMPLE_BUFFERS
in ascending order.
6.
By the number of
EGL_SAMPLES
in ascending order.
7.
By the value of
EGL_DEPTH_SIZE
in ascending order.
8.
By the value of the
EGL_STENCIL_SIZE
in ascending order.
9.
By the value of the
EGL_ALPHA_MASK_SIZE
(which is applicable only
to OpenVG surfaces).
10.
By the
EGL_NATIVE_VISUAL_TYPE
in an implementation-dependent
manner.
11. By the value of the
EGL_CONFIG_ID
in ascending order.
Parameters not mentioned in this list are not used in the sorting process.
Note:
Because of the third sorting rule, to get the best format that matches
what you specified, you will need to add extra logic to go through
the returned results. For example, if you ask for “565” RGB format,
then the “888” format will appear in the returned results first.
As mentioned in Example 3-3, if
eglChooseConfig
returns successfully,
we have enough information to continue to create something to draw
into. By default, if you do not specify which type of rendering surface
type you would like (by specifying the
EGL_SURFACE_TYPE
attribute), EGL
assumes you want an on-screen window.
The EGL Window
Once we have a suitable
EGLConfig
that meets our requirements for
rendering, we are ready to create our window. To create a window, call the
following function:
EGLSurface
eglCreateWindowSurface
(EGLDisplay
display
,
EGLConfig
config
,
EGLNativeWindowType
window
,
const EGLint *
attribList
)
display
specifies the EGL display connection
config
specifies the configuration
window
specifies the native window
attribList
specifies the list of window attributes; may be
NULL