You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and dots ('.'), can be up to 35 characters long. Letters must be lowercase.
136 lines
4.8 KiB
136 lines
4.8 KiB
/*! |
|
|
|
@page news New features |
|
|
|
@tableofcontents |
|
|
|
|
|
@section news_30 New features in version 3.0 |
|
|
|
@subsection news_30_cmake CMake build system |
|
|
|
GLFW now uses the CMake build system instead of the various makefiles and |
|
project files used by earlier versions. CMake is available for all platforms |
|
supported by GLFW, is present in most package systems and can generate |
|
makefiles and/or project files for most popular development environments. |
|
|
|
For more information on how to use CMake, see the |
|
[CMake manual](http://cmake.org/cmake/help/documentation.html). |
|
|
|
|
|
@subsection new_30_multiwnd Multi-window support |
|
|
|
GLFW now supports the creation of multiple windows, each with their own OpenGL |
|
or OpenGL ES context, and all window functions now take a window handle. Event |
|
callbacks are now per-window and are provided with the handle of the window that |
|
received the event. The @ref glfwMakeContextCurrent function has been added to |
|
select which context is current on a given thread. |
|
|
|
|
|
@subsection news_30_multimon Multi-monitor support |
|
|
|
GLFW now explicitly supports multiple monitors. They can be enumerated with |
|
@ref glfwGetMonitors, queried with @ref glfwGetVideoModes, @ref |
|
glfwGetMonitorPos, @ref glfwGetMonitorName and @ref glfwGetMonitorPhysicalSize, |
|
and specified at window creation to make the newly created window full screen on |
|
that specific monitor. |
|
|
|
|
|
@subsection news_30_unicode Unicode support |
|
|
|
All string arguments to GLFW functions and all strings returned by GLFW use the |
|
UTF-8 encoding. This includes the window title, error string, clipboard text, |
|
monitor and joystick names as well as the extension function arguments (as ASCII |
|
is a subset of UTF-8). |
|
|
|
|
|
@subsection news_30_clipboard Clipboard text I/O |
|
|
|
GLFW now supports reading and writing plain text to and from the system |
|
clipboard, with the @ref glfwGetClipboardString and @ref glfwSetClipboardString |
|
functions. |
|
|
|
|
|
@subsection news_30_gamma Gamma ramp support |
|
|
|
GLFW now supports setting and reading back the gamma ramp of monitors, with the |
|
@ref glfwGetGammaRamp and @ref glfwSetGammaRamp functions. There is also @ref |
|
glfwSetGamma, which generates a ramp from a gamma value and then sets it. |
|
|
|
|
|
@subsection news_30_gles OpenGL ES and EGL support |
|
|
|
GLFW now supports the creation of OpenGL ES contexts, by setting the |
|
`GLFW_CLIENT_API` window hint to `GLFW_OPENGL_ES_API`, where creation of such |
|
contexts are supported. Note that GLFW *does not implement* OpenGL ES, so your |
|
driver must provide support in a way usable by GLFW. Modern nVidia and Intel |
|
drivers support creation of OpenGL ES context using the GLX and WGL APIs, while |
|
AMD provides an EGL implementation instead. |
|
|
|
GLFW now has an (experimental) EGL context creation back end, which can be |
|
selected through CMake options. |
|
|
|
|
|
@subsection news_30_error Error callback |
|
|
|
GLFW now has an error callback, which can provide your application with much |
|
more detailed diagnostics than was previously possible. The callback is passed |
|
an error code and a description string. |
|
|
|
|
|
@subsection news_30_wndptr Per-window user pointer |
|
|
|
Each window object has a user-defined pointer, retrieved with @ref |
|
glfwGetWindowUserPointer and set with @ref glfwSetWindowUserPointer, to make it |
|
easier to integrate GLFW into C++ code. |
|
|
|
|
|
@subsection news_30_iconifyfun Window iconification callback |
|
|
|
Each window object has a callback for iconification and restoration events, which is |
|
set with @ref glfwSetWindowIconifyCallback. |
|
|
|
|
|
@subsection news_30_wndposfun Window position callback |
|
|
|
Each window object has a callback for position events, which is set with @ref |
|
glfwSetWindowPosCallback. |
|
|
|
|
|
@subsection news_30_wndpos Window position query |
|
|
|
The position of a window can now be retrieved using @ref glfwGetWindowPos. |
|
|
|
|
|
@subsection news_30_focusfun Window focus callback |
|
|
|
Windows now have a callback for focus events, which is set with @ref |
|
glfwSetWindowFocusCallback. |
|
|
|
|
|
@subsection news_30_wndtitle Initial window title |
|
|
|
The title of a window is now specified at creation time, as one of the arguments |
|
to @ref glfwCreateWindow. |
|
|
|
|
|
@subsection news_30_hidden Hidden windows |
|
|
|
Windows can now be hidden with @ref glfwHideWindow, shown using @ref |
|
glfwShowWindow and created initially hidden with the `GLFW_VISIBLE` window hint. |
|
This allows for off-screen rendering in a way compatible with most drivers, as |
|
well as moving a window to a specific position before showing it. |
|
|
|
|
|
@subsection news_30_undecorated Undecorated windows |
|
|
|
Windowed mode windows can now be created without decorations, i.e. things like |
|
a frame, a title bar, with the `GLFW_DECORATED` window hint. This allows for |
|
the creation of things like splash screens. |
|
|
|
|
|
@subsection news_30_jsname Joystick names |
|
|
|
The name of a joystick can now be retrieved using @ref glfwGetJoystickName. |
|
|
|
*/
|
|
|