557be7cf1b44b014f2392f7b8ace6a03bc6e03a0
* Use XRandR 1.2 to set fullscreen resolution for single output Squash of roothorick's PR #497 (also includes Kyzentun's CMake changes from PR #716) * Cherry-pick json c++1x stuff (b9e3d7174e) * Cherry-pick c++11 support from 5bba5c0038 and 9f8b045309 * rework Linux (X11) fullscreen, improve display-related Graphics Options Implement option to select between monitors for exclusive fullscreen mode on X11 (using XRandR 1.2), or use a fullscreen borderless window. Reimplement resolution/refresh rate/display mode-related option rows using Lua, update choices dynamically so only known-good groupings of resolution/refresh rate/aspect ratio can be selected. Minimally update Windows/MacOS LowLevelWindow implementations to support changes made for Linux side. Fullscreen Borderless Window/multi monitor support from X11 not implemented for those in this commit. * allow forcibly disabling xinerama use on Linux When libXinerama is available, SM tries to use it to find the proper monitor indexes to use to set _NET_WM_FULLSCREEN_MONITORS (on borderless fullscreen). xfwm4 seems to assume that monitors are numbered in increasing order from left to right (rather than using the Xinerama-assigned numbers), so _NET_WM_FULLSCREEN_MONITORS misbehaves on Xfce. This commit bypasses use of libXinerama, and instead forces SM to induce fullscreen on the desired monitor in the backup, hacky way: remove all window hints, move window to desired monitor, then add _NET_WM_STATE_FULLSCREEN hint. This works on mutter and Xfce. * Remove multiple warnings on redundant define. This used to be hard-coded due to pthread related items, but now it's dynamically determined. * fix _fallback menu behavior for unrecognized aspect ratios * Fix error recreating existing FS texture * Bump deployment target to 10.7 to use libc++ on XCode 8 * Add explicit casts to please clang * Update changelog
StepMania
StepMania is an advanced cross-platform rhythm game for home and arcade use.
Advanced cross-platform rhythm game for home and arcade use.
Installation
From Packages
For those that do not wish to compile the game on their own and use a binary right away, be aware of the following issues:
- Windows users are expected to have installed the Microsoft Visual C++ x86 Redistributable for Visual Studio 2015 prior to running the game. For those on a 64-bit operating system, grab the x64 redistributable as well. DirectX End-User Runtimes (June 2010) is also required. Windows 7 is the minimum supported version.
- Mac OS X users need to have Mac OS X 10.6.8 or higher to run StepMania.
- Linux users should receive all they need from the package manager of their choice.
From Source
StepMania can be compiled using CMake. More information about using CMake can be found in both the Build directory and CMake's documentation.
Resources
- Website: http://www.stepmania.com/
- IRC: irc.freenode.net/#stepmania-devs
- Lua for SM5: https://dguzek.github.io/Lua-For-SM5/
- Lua API Documentation can be found in the Docs folder.
Licensing Terms
In short- you can do anything you like with the game (including sell products made with it), provided you do not:
- Sell the game with the included songs
- Claim to have created the engine yourself or remove the credits
- Not provide source code for any build which differs from any official release which includes MP3 support.
(It's not required, but we would also appreciate it if you link back to http://www.stepmania.com/)
For specific information/legalese:
- All of the our source code is under the MIT license.
- Any songs that are included within this repository are under the CC-NC license.
- The MAD library and FFmpeg codecs when built with our code use the GPL license.
Languages
C++
85.7%
Lua
4.3%
C
4.3%
Rich Text Format
2.3%
CMake
1.1%
Other
2%