mirror of
https://github.com/SFML/SFML.git
synced 2024-11-28 22:31:09 +08:00
SFML mainline mirror
c678cae498
Discussion thread: http://en.sfml-dev.org/forums/index.php?topic=20875.0 Basically, the issue with sf::Image::create was, that it would either occupy space, it doesn't need, because std::vector::resize doesn't actually shrink the vector, or reallocate in an inefficient way by needlessly copying the whole old image over. Neither did it grant strong exception safety guarantee because it changed the non-throwing members (m_size) prior to doing the critical stuff (reallocating) which may throw. Changing the order and using a temporary (create-temporary-and-swap idiom; see http://www.gotw.ca/gotw/059.htm) fixes both of these problems. |
||
---|---|---|
cmake | ||
doc | ||
examples | ||
extlibs | ||
include/SFML | ||
src/SFML | ||
tools | ||
.editorconfig | ||
.gitattributes | ||
changelog.txt | ||
CMakeLists.txt | ||
CONTRIBUTING | ||
license.txt | ||
readme.txt |
SFML - Simple and Fast Multimedia Library ========================================= SFML is a simple, fast, cross-platform and object-oriented multimedia API. It provides access to windowing, graphics, audio and network. It is written in C++, and has bindings for various languages such as C, .Net, Ruby, Python. Authors ------- Laurent Gomila - main developer (laurent@sfml-dev.org) Marco Antognini - OS X developer (hiura@sfml-dev.org) Jonathan De Wachter - Android developer (dewachter.jonathan@gmail.com) Jan Haller (bromeon@sfml-dev.org) Stefan Schindler (tank@sfml-dev.org) Lukas Dürrenberger (eXpl0it3r@sfml-dev.org) binary1248 (binary1248@hotmail.com) Artur Moreira (artturmoreira@gmail.com) Mario Liebisch (mario@sfml-dev.org) Download -------- You can get the latest official release on SFML website (http://www.sfml-dev.org/download.php). You can also get the current development version from the git repository (https://github.com/SFML/SFML). Install ------- Follow the instructions of the tutorials (http://www.sfml-dev.org/tutorials/), there is one for each platform/compiler that SFML supports. Learn ----- There are several places to learn SFML: * The official tutorials (http://www.sfml-dev.org/tutorials/) * The online API documentation (http://www.sfml-dev.org/documentation/) * The community wiki (https://github.com/SFML/SFML/wiki/) * The community forum (http://en.sfml-dev.org/forums/) (or http://fr.sfml-dev.org/forums/ for French people) Contribute ---------- SFML is an open-source project, and it needs your help to go on growing and improving. If you want to get involved and suggest some additional features, file a bug report or submit a patch, please have a look at the contribution guidelines (http://www.sfml-dev.org/contribute.php).