diff --git a/standalone/build/win32/Tracy.vcxproj b/standalone/build/win32/Tracy.vcxproj index fee553eb..fbc31ce2 100755 --- a/standalone/build/win32/Tracy.vcxproj +++ b/standalone/build/win32/Tracy.vcxproj @@ -52,7 +52,7 @@ ..\..\libs\glfw\include;..\..\libs\gl3w;..\..\..\imgui;%(AdditionalIncludeDirectories) - ws2_32.lib;opengl32.lib;..\..\libs\glfw\lib-vc2010-64\glfw3.lib;%(AdditionalDependencies) + ws2_32.lib;opengl32.lib;..\..\libs\glfw\lib-vc2015\glfw3.lib;%(AdditionalDependencies) Windows @@ -69,7 +69,7 @@ true true - ws2_32.lib;opengl32.lib;..\..\libs\glfw\lib-vc2010-64\glfw3.lib;%(AdditionalDependencies) + ws2_32.lib;opengl32.lib;..\..\libs\glfw\lib-vc2015\glfw3.lib;%(AdditionalDependencies) Windows diff --git a/standalone/libs/glfw/COPYING.txt b/standalone/libs/glfw/COPYING.txt index b30c7015..ad16462a 100755 --- a/standalone/libs/glfw/COPYING.txt +++ b/standalone/libs/glfw/COPYING.txt @@ -1,5 +1,5 @@ Copyright (c) 2002-2006 Marcus Geelnard -Copyright (c) 2006-2010 Camilla Berglund +Copyright (c) 2006-2016 Camilla Berglund This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/standalone/libs/glfw/include/GLFW/glfw3.h b/standalone/libs/glfw/include/GLFW/glfw3.h index f8ca3d61..95caa955 100755 --- a/standalone/libs/glfw/include/GLFW/glfw3.h +++ b/standalone/libs/glfw/include/GLFW/glfw3.h @@ -3,7 +3,7 @@ * A library for OpenGL, window and input *------------------------------------------------------------------------ * Copyright (c) 2002-2006 Marcus Geelnard - * Copyright (c) 2006-2010 Camilla Berglund + * Copyright (c) 2006-2016 Camilla Berglund * * This software is provided 'as-is', without any express or implied * warranty. In no event will the authors be held liable for any damages @@ -115,11 +115,14 @@ extern "C" { #define GLFW_CALLBACK_DEFINED #endif /* CALLBACK */ -/* Most Windows GLU headers need wchar_t. - * The OS X OpenGL header blocks the definition of ptrdiff_t by glext.h. +/* Include because most Windows GLU headers need wchar_t and + * the OS X OpenGL header blocks the definition of ptrdiff_t by glext.h. * Include it unconditionally to avoid surprising side-effects. */ #include + +/* Include because it is needed by Vulkan and related functions. + */ #include /* Include the chosen client API headers. @@ -226,7 +229,7 @@ extern "C" { * API changes. * @ingroup init */ -#define GLFW_VERSION_REVISION 0 +#define GLFW_VERSION_REVISION 1 /*! @} */ /*! @name Boolean values @@ -655,6 +658,7 @@ extern "C" { #define GLFW_OPENGL_PROFILE 0x00022008 #define GLFW_CONTEXT_RELEASE_BEHAVIOR 0x00022009 #define GLFW_CONTEXT_NO_ERROR 0x0002200A +#define GLFW_CONTEXT_CREATION_API 0x0002200B #define GLFW_NO_API 0 #define GLFW_OPENGL_API 0x00030001 @@ -680,6 +684,9 @@ extern "C" { #define GLFW_RELEASE_BEHAVIOR_FLUSH 0x00035001 #define GLFW_RELEASE_BEHAVIOR_NONE 0x00035002 +#define GLFW_NATIVE_CONTEXT_API 0x00036001 +#define GLFW_EGL_CONTEXT_API 0x00036002 + /*! @defgroup shapes Standard cursor shapes * * See [standard cursor creation](@ref cursor_standard) for how these are used. @@ -1178,6 +1185,7 @@ typedef struct GLFWgammaramp /*! @brief Image data. * * @sa @ref cursor_custom + * @sa @ref window_icon * * @since Added in version 2.1. * @glfw3 Removed format and bytes-per-pixel members. @@ -1735,6 +1743,10 @@ GLFWAPI void glfwWindowHint(int hint, int value); * screen windows, including the creation of so called _windowed full screen_ * or _borderless full screen_ windows, see @ref window_windowed_full_screen. * + * Once you have created the window, you can switch it between windowed and + * full screen mode with @ref glfwSetWindowMonitor. If the window has an + * OpenGL or OpenGL ES context, it will be unaffected. + * * By default, newly created windows use the placement recommended by the * window system. To create the window at a specific position, make it * initially invisible using the [GLFW_VISIBLE](@ref window_hints_wnd) window @@ -1771,9 +1783,10 @@ GLFWAPI void glfwWindowHint(int hint, int value); * @remark @win32 Window creation will fail if the Microsoft GDI software * OpenGL implementation is the only one available. * - * @remark @win32 If the executable has an icon resource named `GLFW_ICON,` - * it will be set as the icon for the window. If no such icon is present, the - * `IDI_WINLOGO` icon will be used instead. + * @remark @win32 If the executable has an icon resource named `GLFW_ICON,` it + * will be set as the initial icon for the window. If no such icon is present, + * the `IDI_WINLOGO` icon will be used instead. To set a different icon, see + * @ref glfwSetWindowIcon. * * @remark @win32 The context to share resources with must not be current on * any other thread. @@ -1799,8 +1812,6 @@ GLFWAPI void glfwWindowHint(int hint, int value); * a custom `Info.plist` template for this, which can be found as * `CMake/MacOSXBundleInfo.plist.in` in the source tree. * - * @remark @x11 There is no mechanism for setting the window icon yet. - * * @remark @x11 Some window managers will not respect the placement of * initially hidden windows. * @@ -1942,8 +1953,8 @@ GLFWAPI void glfwSetWindowTitle(GLFWwindow* window, const char* title); * returns. * * @remark @osx The GLFW window has no icon, as it is not a document - * window, but the dock icon will be the same as the application bundle's icon. - * For more information on bundles, see the + * window, so this function does nothing. The dock icon will be the same as + * the application bundle's icon. For more information on bundles, see the * [Bundle Programming Guide](https://developer.apple.com/library/mac/documentation/CoreFoundation/Conceptual/CFBundles/) * in the Mac Developer Library. * @@ -2049,13 +2060,16 @@ GLFWAPI void glfwGetWindowSize(GLFWwindow* window, int* width, int* height); /*! @brief Sets the size limits of the specified window. * * This function sets the size limits of the client area of the specified - * window. If the window is full screen, the size limits only take effect if + * window. If the window is full screen, the size limits only take effect * once it is made windowed. If the window is not resizable, this function * does nothing. * * The size limits are applied immediately to a windowed mode window and may * cause it to be resized. * + * The maximum dimensions must be greater than or equal to the minimum + * dimensions and all must be greater than or equal to zero. + * * @param[in] window The window to set limits for. * @param[in] minwidth The minimum width, in screen coordinates, of the client * area, or `GLFW_DONT_CARE`. @@ -2066,8 +2080,8 @@ GLFWAPI void glfwGetWindowSize(GLFWwindow* window, int* width, int* height); * @param[in] maxheight The maximum height, in screen coordinates, of the * client area, or `GLFW_DONT_CARE`. * - * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref - * GLFW_PLATFORM_ERROR. + * @errors Possible errors include @ref GLFW_NOT_INITIALIZED, @ref + * GLFW_INVALID_VALUE and @ref GLFW_PLATFORM_ERROR. * * @remark If you set size limits and an aspect ratio that conflict, the * results are undefined. @@ -2290,6 +2304,9 @@ GLFWAPI void glfwRestoreWindow(GLFWwindow* window); * * @param[in] window The window to maximize. * + * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref + * GLFW_PLATFORM_ERROR. + * * @par Thread Safety * This function may only be called from the main thread. * @@ -2381,8 +2398,8 @@ GLFWAPI void glfwFocusWindow(GLFWwindow* window); * in full screen on. * * @param[in] window The window to query. - * @return The monitor, or `NULL` if the window is in windowed mode or an error - * occurred. + * @return The monitor, or `NULL` if the window is in windowed mode or an + * [error](@ref error_handling) occurred. * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED. * @@ -2427,7 +2444,8 @@ GLFWAPI GLFWmonitor* glfwGetWindowMonitor(GLFWwindow* window); * or video mode. * @param[in] height The desired height, in screen coordinates, of the client * area or video mode. - * @param[in] refreshRate The desired refresh rate, in Hz, of the video mode. + * @param[in] refreshRate The desired refresh rate, in Hz, of the video mode, + * or `GLFW_DONT_CARE`. * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref * GLFW_PLATFORM_ERROR. @@ -2836,7 +2854,7 @@ GLFWAPI void glfwWaitEventsTimeout(double timeout); /*! @brief Posts an empty event to the event queue. * * This function posts an empty event from the current thread to the event - * queue, causing @ref glfwWaitEvents to return. + * queue, causing @ref glfwWaitEvents or @ref glfwWaitEventsTimeout to return. * * If no windows exist, this function returns immediately. For synchronization * of threads in applications that do not create windows, use your threading @@ -2849,6 +2867,7 @@ GLFWAPI void glfwWaitEventsTimeout(double timeout); * * @sa @ref events * @sa glfwWaitEvents + * @sa glfwWaitEventsTimeout * * @since Added in version 3.1. * @@ -3117,10 +3136,6 @@ GLFWAPI void glfwGetCursorPos(GLFWwindow* window, double* xpos, double* ypos); * @errors Possible errors include @ref GLFW_NOT_INITIALIZED and @ref * GLFW_PLATFORM_ERROR. * - * @remark @x11 Due to the asynchronous nature of X11, it may take a moment for - * the window focus event to arrive. This means you may not be able to set the - * cursor position directly after window creation. - * * @thread_safety This function must only be called from the main thread. * * @sa @ref cursor_pos @@ -3348,7 +3363,7 @@ GLFWAPI GLFWcharfun glfwSetCharCallback(GLFWwindow* window, GLFWcharfun cbfun); * @param[in] cbfun The new callback, or `NULL` to remove the currently set * callback. * @return The previously set callback, or `NULL` if no callback was set or an - * error occurred. + * [error](@ref error_handling) occurred. * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED. * @@ -3527,8 +3542,10 @@ GLFWAPI int glfwJoystickPresent(int joy); * * @param[in] joy The [joystick](@ref joysticks) to query. * @param[out] count Where to store the number of axis values in the returned - * array. This is set to zero if an error occurred. - * @return An array of axis values, or `NULL` if the joystick is not present. + * array. This is set to zero if the joystick is not present or an error + * occurred. + * @return An array of axis values, or `NULL` if the joystick is not present or + * an [error](@ref error_handling) occurred. * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED, @ref * GLFW_INVALID_ENUM and @ref GLFW_PLATFORM_ERROR. @@ -3559,8 +3576,10 @@ GLFWAPI const float* glfwGetJoystickAxes(int joy, int* count); * * @param[in] joy The [joystick](@ref joysticks) to query. * @param[out] count Where to store the number of button states in the returned - * array. This is set to zero if an error occurred. - * @return An array of button states, or `NULL` if the joystick is not present. + * array. This is set to zero if the joystick is not present or an error + * occurred. + * @return An array of button states, or `NULL` if the joystick is not present + * or an [error](@ref error_handling) occurred. * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED, @ref * GLFW_INVALID_ENUM and @ref GLFW_PLATFORM_ERROR. @@ -3593,7 +3612,7 @@ GLFWAPI const unsigned char* glfwGetJoystickButtons(int joy, int* count); * * @param[in] joy The [joystick](@ref joysticks) to query. * @return The UTF-8 encoded name of the joystick, or `NULL` if the joystick - * is not present. + * is not present or an [error](@ref error_handling) occurred. * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED, @ref * GLFW_INVALID_ENUM and @ref GLFW_PLATFORM_ERROR. @@ -3706,8 +3725,9 @@ GLFWAPI const char* glfwGetClipboardString(GLFWwindow* window); * * @errors Possible errors include @ref GLFW_NOT_INITIALIZED. * - * @thread_safety This function may be called from any thread. Reading of the - * internal timer offset is not atomic. + * @thread_safety This function may be called from any thread. Reading and + * writing of the internal timer offset is not atomic, so it needs to be + * externally synchronized with calls to @ref glfwSetTime. * * @sa @ref time * @@ -3732,8 +3752,9 @@ GLFWAPI double glfwGetTime(void); * floor((264 - 1) / 109) and is due to implementations * storing nanoseconds in 64 bits. The limit may be increased in the future. * - * @thread_safety This function may be called from any thread. Writing of the - * internal timer offset is not atomic. + * @thread_safety This function may be called from any thread. Reading and + * writing of the internal timer offset is not atomic, so it needs to be + * externally synchronized with calls to @ref glfwGetTime. * * @sa @ref time * diff --git a/standalone/libs/glfw/include/GLFW/glfw3native.h b/standalone/libs/glfw/include/GLFW/glfw3native.h index 9fa955e9..30e1a570 100755 --- a/standalone/libs/glfw/include/GLFW/glfw3native.h +++ b/standalone/libs/glfw/include/GLFW/glfw3native.h @@ -3,7 +3,7 @@ * A library for OpenGL, window and input *------------------------------------------------------------------------ * Copyright (c) 2002-2006 Marcus Geelnard - * Copyright (c) 2006-2010 Camilla Berglund + * Copyright (c) 2006-2016 Camilla Berglund * * This software is provided 'as-is', without any express or implied * warranty. In no event will the authors be held liable for any damages diff --git a/standalone/libs/glfw/lib-vc2010-64/glfw3.lib b/standalone/libs/glfw/lib-vc2010-64/glfw3.lib deleted file mode 100755 index 768f3083..00000000 Binary files a/standalone/libs/glfw/lib-vc2010-64/glfw3.lib and /dev/null differ diff --git a/standalone/libs/glfw/lib-vc2015/glfw3.lib b/standalone/libs/glfw/lib-vc2015/glfw3.lib new file mode 100755 index 00000000..a00c640a Binary files /dev/null and b/standalone/libs/glfw/lib-vc2015/glfw3.lib differ