SDL2-FFI

 view release on metacpan or  search on metacpan

lib/SDL2/hints.pm  view on Meta::CPAN

functions.  The contents of the hint should be a valid URL. For example,
L<http://www.example.com>.

The default value is an empty string (C<>), which will prevent SDL from adding
a privacy policy link to the Settings charm. This hint should only be set
during app init.

The label text of an app's "Privacy Policy" link may be customized via another
hint, C<SDL_HINT_WINRT_PRIVACY_POLICY_LABEL>.

Please note that on Windows Phone, Microsoft does not provide standard UI for
displaying a privacy policy link, and as such,
SDL_HINT_WINRT_PRIVACY_POLICY_URL will not get used on that platform.
Network-enabled phone apps should display their privacy policy through some
other, in-app means.

=item C<SDL_HINT_XINPUT_ENABLED>

A variable that lets you disable the detection and use of Xinput gamepad
devices

The variable can be set to the following values:

    0   Disable XInput detection (only uses direct input)
    1   Enable XInput detection (default)

=item C<SDL_HINT_XINPUT_USE_OLD_JOYSTICK_MAPPING>

A variable that causes SDL to use the old axis and button mapping for XInput
devices.

This hint is for backwards compatibility only and will be removed in SDL 2.1

The default value is C<0>.  This hint must be set before C<SDL_Init( ... )>

=item C<SDL_HINT_QTWAYLAND_WINDOW_FLAGS>

Flags to set on QtWayland windows to integrate with the native window manager.

On QtWayland platforms, this hint controls the flags to set on the windows. For
example, on Sailfish OS, C<OverridesSystemGestures> disables swipe gestures.

This variable is a space-separated list of the following values (empty = no
flags):

=over

=item C<OverridesSystemGestures>

=item C<StaysOnTop>

=item C<BypassWindowManager>

=back

=item C<SDL_HINT_QTWAYLAND_CONTENT_ORIENTATION>

A variable describing the content orientation on QtWayland-based platforms.

On QtWayland platforms, windows are rotated client-side to allow for custom
transitions. In order to correctly position overlays (e.g. volume bar) and
gestures (e.g. events view, close/minimize gestures), the system needs to know
in which orientation the application is currently drawing its contents.

This does not cause the window to be rotated or resized, the application needs
to take care of drawing the content in the right orientation (the framebuffer
is always in portrait mode).

This variable can be one of the following values:

=over

=item C<primary> (default)

=item C<portrait>

=item C<landscape>

=item C<inverted-portrait>

=item C<inverted-landscape>

=back

=item C<SDL_HINT_RENDER_LOGICAL_SIZE_MODE>

A variable controlling the scaling policy for C<SDL_RenderSetLogicalSize>.

This variable can be set to the following values:

=over

=item C<0> or C<letterbox>

Uses letterbox/sidebars to fit the entire rendering on screen.

=item C<1> or C<overscan>

Will zoom the rendering so it fills the entire screen, allowing edges to be
drawn offscreen.

=back

By default letterbox is used.

=item C<SDL_HINT_VIDEO_EXTERNAL_CONTEXT>

A variable controlling whether the graphics context is externally managed.

This variable can be set to the following values:

    0   SDL will manage graphics contexts that are attached to windows.
    1   Disable graphics context management on windows.

By default SDL will manage OpenGL contexts in certain situations. For example,
on Android the context will be automatically saved and restored when pausing
the application. Additionally, some platforms will assume usage of OpenGL if
Vulkan isn't used. Setting this to C<1> will prevent this behavior, which is
desirable when the application manages the graphics context, such as an
externally managed OpenGL context or attaching a Vulkan surface to the window.

lib/SDL2/hints.pm  view on Meta::CPAN


=over

=item L<https://docs.microsoft.com/en-us/windows/win32/direct3darticles/graphics-apis-in-windows-vista#direct3d-9ex>

=item L<https://docs.microsoft.com/en-us/windows/win32/direct3darticles/direct3d-9ex-improvements>

=back

This variable can be set to the following values:

=over

=item C<0>

Use the original Direct3D 9 API (default)

=item C<1>

Use the Direct3D 9Ex API on Vista and later (and fall back if D3D9Ex is
unavailable)

=back

=item C<SDL_HINT_VIDEO_DOUBLE_BUFFER>

Tell the video driver that we only want a double buffer.

By default, most lowlevel 2D APIs will use a triple buffer scheme that wastes
no CPU time on waiting for vsync after issuing a flip, but introduces a frame
of latency. On the other hand, using a double buffer scheme instead is
recommended for cases where low latency is an important factor because we save
a whole frame of latency. We do so by waiting for vsync immediately after
issuing a flip, usually just after eglSwapBuffers call in the backend's
*_SwapWindow function.

Since it's driver-specific, it's only supported where possible and implemented.
Currently supported the following drivers:

=over

=item KMSDRM (kmsdrm)

=item Raspberry Pi (raspberrypi)

=back

=item C<SDL_HINT_KMSDRM_REQUIRE_DRM_MASTER>

Determines whether SDL enforces that DRM master is required in order to
initialize the KMSDRM video backend.

The DRM subsystem has a concept of a "DRM master" which is a DRM client that
has the ability to set planes, set cursor, etc. When SDL is DRM master, it can
draw to the screen using the SDL rendering APIs. Without DRM master, SDL is
still able to process input and query attributes of attached displays, but it
cannot change display state or draw to the screen directly.

In some cases, it can be useful to have the KMSDRM backend even if it cannot be
used for rendering. An app may want to use SDL for input processing while using
another rendering API (such as an MMAL overlay on Raspberry Pi) or using its
own code to render to DRM overlays that SDL doesn't support.

This hint must be set before initializing the video subsystem.

This variable can be set to the following values:

=over

=item C<0>

SDL will allow usage of the KMSDRM backend without DRM master

=item C<1>

SDL Will require DRM master to use the KMSDRM backend (default)

=back

=item C<SDL_HINT_OPENGL_ES_DRIVER>

A variable controlling what driver to use for OpenGL ES contexts.

On some platforms, currently Windows and X11, OpenGL drivers may support
creating contexts with an OpenGL ES profile. By default SDL uses these
profiles, when available, otherwise it attempts to load an OpenGL ES library,
e.g. that provided by the ANGLE project. This variable controls whether SDL
follows this default behaviour or will always load an OpenGL ES library.

Circumstances where this is useful include

=over

=item Testing an app with a particular OpenGL ES implementation, e.g ANGLE, or emulator, e.g. those from ARM, Imagination or Qualcomm.

=item Resolving OpenGL ES function addresses at link time by linking with the OpenGL ES library instead of querying them at run time with C<SDL_GL_GetProcAddress( )>.

=back

Caution: for an application to work with the default behaviour across different
OpenGL drivers it must query the OpenGL ES function addresses at run time using
C<SDL_GL_GetProcAddress( )>.

This variable is ignored on most platforms because OpenGL ES is native or not
supported.

This variable can be set to the following values:

=over

=item C<0>

Use ES profile of OpenGL, if available. (Default when not set.)

=item C<1>

Load OpenGL ES library using the default library names.

=back

=item C<SDL_HINT_AUDIO_RESAMPLING_MODE>



( run in 1.818 second using v1.01-cache-2.11-cpan-39bf76dae61 )