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.
		
		
		
		
		
			
		
			
				
					
					
						
							173 lines
						
					
					
						
							5.8 KiB
						
					
					
				
			
		
		
	
	
							173 lines
						
					
					
						
							5.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 now 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 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. | 
						|
 | 
						|
 | 
						|
@subsection news_30_egl (Experimental) EGL support | 
						|
 | 
						|
GLFW now has an experimental EGL context creation back end that can be selected | 
						|
through CMake options. | 
						|
 | 
						|
 | 
						|
@subsection news_30_hidpi High-DPI support | 
						|
 | 
						|
GLFW now supports high-DPI monitors on both Windows and OS X, giving windows full | 
						|
resolution framebuffers where other UI elements are scaled up.  To achieve this, | 
						|
@ref glfwGetFramebufferSize and @ref glfwSetFramebufferSizeCallback have been | 
						|
added.  These work with pixels, while the rest of the GLFW API work with screen | 
						|
coordinates. | 
						|
 | 
						|
 | 
						|
@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 now 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 now has a callback for iconification and restoration events, | 
						|
which is set with @ref glfwSetWindowIconifyCallback. | 
						|
 | 
						|
 | 
						|
@subsection news_30_wndposfun Window position callback | 
						|
 | 
						|
Each window now 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 | 
						|
 | 
						|
Each windows now has a callback for focus events, which is set with @ref | 
						|
glfwSetWindowFocusCallback. | 
						|
 | 
						|
 | 
						|
@subsection news_30_enterleave Cursor enter/leave callback | 
						|
 | 
						|
Each window now has a callback for when the mouse cursor enters or leaves its | 
						|
client area, which is set with @ref glfwSetCursorEnterCallback. | 
						|
 | 
						|
 | 
						|
@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_keymods Modifier key bit masks | 
						|
 | 
						|
[Modifier key bit mask](@ref mods) parameters have been added to the | 
						|
[mouse button](@ref GLFWmousebuttonfun) and [key](@ref GLFWkeyfun) callbacks. | 
						|
 | 
						|
 | 
						|
@subsection news_30_scancode Platform-specific scancodes | 
						|
 | 
						|
A scancode parameter has been added to the [key callback](@ref GLFWkeyfun). Keys | 
						|
that don't have a [key token](@ref keys) still get passed on with the key | 
						|
parameter set to `GLFW_KEY_UNKNOWN`.  These scancodes will vary between machines | 
						|
and are intended to be used for key bindings. | 
						|
 | 
						|
 | 
						|
@subsection news_30_jsname Joystick names | 
						|
 | 
						|
The name of a joystick can now be retrieved using @ref glfwGetJoystickName. | 
						|
 | 
						|
 | 
						|
@subsection news_30_doxygen Doxygen documentation | 
						|
 | 
						|
You are reading it. | 
						|
 | 
						|
*/
 | 
						|
 |