glfw/README.md

197 lines
6.6 KiB
Markdown
Raw Normal View History

2013-06-13 13:07:28 +00:00
# GLFW
## Introduction
GLFW is a free, Open Source, portable library for OpenGL and OpenGL ES
application development. It provides a simple, platform-independent API for
creating windows and contexts, reading input, handling events, etc.
2013-12-31 19:06:18 +00:00
Version 3.0.4 adds better support for custom build environments and fixes for
a large number of bugs that together affect all supported platforms. As this is
a patch release, there are no API changes.
2013-04-18 22:19:22 +00:00
2013-04-07 11:26:06 +00:00
If you are new to GLFW, you may find the
2013-07-10 13:51:10 +00:00
[introductory tutorial](http://www.glfw.org/docs/latest/quick.html) for GLFW
2013-06-17 09:58:46 +00:00
3 useful. If you have used GLFW 2 in the past, there is a
2013-07-10 13:51:10 +00:00
[transition guide](http://www.glfw.org/docs/latest/moving.html) for moving to
the GLFW 3 API.
2013-10-27 11:50:33 +00:00
## Compiling GLFW
2013-10-21 20:23:15 +00:00
2013-10-27 11:50:33 +00:00
See the [Compiling GLFW](http://www.glfw.org/docs/latest/compile.html) guide in
the GLFW documentation.
## Using GLFW
2013-10-27 11:50:33 +00:00
See the
[Building programs that use GLFW](http://www.glfw.org/docs/latest/build.html)
guide in the GLFW documentation.
2013-06-13 13:09:10 +00:00
## Changelog
- Added the `GLFW_BUILD_DOCS` CMake option for controlling whether the
documentation is built
- Added the `_GLFW_USE_CONFIG_H` configuration macro for controlling whether to
include the configuration header
- Moved version number macro to `internal.h` for easier manual compilation
2013-10-09 19:12:03 +00:00
- Renamed configuration header to `glfw_config.h` to avoid conflicts
2013-10-21 15:46:05 +00:00
- Bugfix: The `glfw3.pc` file did not respect the `LIB_SUFFIX` CMake option
2013-11-07 18:29:33 +00:00
- Bugfix: The `joysticks` test would segfault if a controller had no axes
- [Win32] Allowed swap interval to be explicitly set to zero on DWM systems
2013-10-17 18:08:56 +00:00
- [Win32] Bugfix: Removed joystick axis value negation left over from GLFW 2
- [Win32] Bugfix: Restoring windows using the Win+D hot key did not trigger the
focus callback
- [Win32] Bugfix: The disabled cursor mode clip rectangle was updated for
unfocused windows
- [Win32] Bugfix: Cursor was not properly re-centered over odd-sized windows
- [Win32] Bugfix: Negative window positions were reported incorrectly
- [Win32] Bugfix: The iconify callback was not triggered when switching away
from a full screen window using Alt+Tab
- [Win32] Bugfix: Resizing a window with `glfwSetWindowSize` gave it focus
2013-10-09 19:12:03 +00:00
- [Cocoa] Added dependency on CoreVideo framework for refresh rate retrieval
2013-10-09 22:09:03 +00:00
- [Cocoa] Enabled Lion full screen for resizable windowed mode windows
- [Cocoa] Moved to Cocoa API for application transformation and activation
2013-10-09 18:24:57 +00:00
- [Cocoa] Bugfix: The `GLFW_KEY_GRAVE_ACCENT` key was reported as
`GLFW_KEY_WORLD_1` and vice versa
- [Cocoa] Bugfix: The `GLFW_KEY_F13` key was reported as
`GLFW_KEY_PRINT_SCREEN`
2013-10-09 09:58:08 +00:00
- [Cocoa] Bugfix: Implicit conversion from `NSUInteger` to int caused warnings
with Xcode 5
- [Cocoa] Bugfix: Use of undeclared selectors with `@selector` caused warnings
with Xcode 5
- [Cocoa] Bugfix: The cursor remained visible if moved onto client area after
having been set to hidden outside it
- [Cocoa] Bugfix: The refresh rate was zero for all modes of certain monitors
2013-10-16 18:56:59 +00:00
- [Cocoa] Bugfix: The `install_name` field of the dynamic library was not set
- [Cocoa] Bugfix: Full screen windows were never reported as having focus
2013-10-21 20:35:22 +00:00
- [Cocoa] Bugfix: A superfluous I/O flag test prevented video modes from being
listed for Thunderbolt monitor
- [Cocoa] Bugfix: Retrieving the name of some external displays caused segfault
- [Cocoa] Bugfix: The 10.9 SDK defines `GLintptrARB` and `GLsizeiptrARB`
differently from the Khronos `glext.h`
- [Cocoa] Bugfix: Creating hidden windows would steal application focus
2013-11-07 19:36:45 +00:00
- [Cocoa] Bugfix: Controllers were reported as having zero buttons and axes
- [Cocoa] Bugfix: Removed joystick axis value negation left over from GLFW 2
2013-10-04 11:41:19 +00:00
- [X11] Added setting of the `WM_CLASS` property to the initial window title
- [X11] Added support for `_NET_WM_BYPASS_COMPOSITOR`
2013-10-17 18:08:56 +00:00
- [X11] Bugfix: Removed joystick axis value negation left over from GLFW 2
- [X11] Bugfix: The position of hidden windows was ignored by Metacity
2013-11-03 15:08:35 +00:00
and Compiz
- [X11] Bugfix: The `pthread.h` header was not included by the GLX platform
header.
2013-09-25 21:55:05 +00:00
## Contact
The official website for GLFW is [glfw.org](http://www.glfw.org/). There you
can find the latest version of GLFW, as well as news, documentation and other
information about the project.
If you have questions related to the use of GLFW, we have a
[support forum](https://sourceforge.net/p/glfw/discussion/247562/), and the IRC
channel `#glfw` on [Freenode](http://freenode.net/).
If you have a bug to report, a patch to submit or a feature you'd like to
2013-06-24 12:28:42 +00:00
request, please file it in the
[issue tracker](https://github.com/glfw/glfw/issues) on GitHub.
Finally, if you're interested in helping out with the development of GLFW or
2013-06-24 12:28:42 +00:00
porting it to your favorite platform, we have an occasionally active
[developer's mailing list](https://lists.stacken.kth.se/mailman/listinfo/glfw-dev),
or you could join us on `#glfw`.
## Acknowledgements
GLFW exists because people around the world donated their time and lent their
skills.
2013-06-09 10:49:13 +00:00
- Bobyshev Alexander
- artblanc
- arturo
2013-06-09 10:49:13 +00:00
- Matt Arsenault
- Keith Bauer
- John Bartholomew
2013-06-16 10:35:46 +00:00
- Niklas Behrens
2013-06-09 10:49:13 +00:00
- Niklas Bergström
2013-08-16 15:48:11 +00:00
- Doug Binks
2013-06-09 10:49:13 +00:00
- blanco
- Lambert Clara
2013-10-06 09:37:16 +00:00
- Andrew Corrigan
2013-06-09 10:49:13 +00:00
- Noel Cower
- Jarrod Davis
- Olivier Delannoy
- Paul R. Deppe
- Jonathan Dummer
- Ralph Eastwood
2013-12-10 12:45:21 +00:00
- Michael Fogleman
2013-12-11 13:41:51 +00:00
- Gerald Franz
2013-06-09 10:49:13 +00:00
- GeO4d
- Marcus Geelnard
- Stefan Gustavson
- Sylvain Hellegouarch
- heromyth
2013-06-16 16:32:16 +00:00
- Paul Holden
2013-06-09 10:49:13 +00:00
- Toni Jovanoski
- Osman Keskin
- Cameron King
- Peter Knut
- Robin Leffmann
- Glenn Lewis
- Shane Liesegang
- Дмитри Малышев
- Martins Mozeiko
- Tristam MacDonald
- Hans Mackowiak
- Kyle McDonald
2013-06-09 10:49:13 +00:00
- David Medlock
- Jonathan Mercier
- Marcel Metz
- Kenneth Miller
2013-07-01 11:18:05 +00:00
- Bruce Mitchener
2013-10-28 12:22:34 +00:00
- Jack Moffitt
2013-06-09 10:49:13 +00:00
- Jeff Molofee
- Jon Morton
2013-09-13 12:41:13 +00:00
- Pierre Moulon
2013-06-09 10:49:13 +00:00
- Julian Møller
2013-11-13 11:59:49 +00:00
- Kamil Nowakowski
2013-06-17 09:58:46 +00:00
- Ozzy
- Andri Pálsson
2013-06-09 10:49:13 +00:00
- Peoro
- Braden Pellett
- Arturo J. Pérez
2013-10-09 21:58:43 +00:00
- Pieroman
2013-06-09 10:49:13 +00:00
- Jorge Rodriguez
- Ed Ropple
- Riku Salminen
- Sebastian Schuberth
- Matt Sealey
- SephiRok
- Steve Sexton
- Systemcluster
2013-06-09 10:49:13 +00:00
- Dmitri Shuralyov
- Daniel Skorupski
- Bradley Smith
- Julian Squires
- Johannes Stein
- Justin Stoecker
2013-06-09 10:49:13 +00:00
- Nathan Sweet
- TTK-Bandit
- Sergey Tikhomirov
- Samuli Tuomola
- urraka
2013-06-09 10:49:13 +00:00
- Jari Vetoniemi
- Simon Voordouw
- Torsten Walluhn
- Jay Weisskopf
- Frank Wille
- yuriks
- Santi Zupancic
- Lasse Öörni
- All the unmentioned and anonymous contributors in the GLFW community, for bug
reports, patches, feedback, testing and encouragement