All Projects → crykn → libgdx-screenmanager

crykn / libgdx-screenmanager

Licence: Apache-2.0 license
A screen manager for libgdx supporting transitions

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to libgdx-screenmanager

pixelwheels
A top-down retro racing game for PC (Linux, macOS, Windows) and Android.
Stars: ✭ 315 (+356.52%)
Mutual labels:  libgdx
ws-qvh
Server for streaming the screen of iOS devices over WebSocket.
Stars: ✭ 17 (-75.36%)
Mutual labels:  screen
gdx-freetype-gwt
Freetype for gwt
Stars: ✭ 41 (-40.58%)
Mutual labels:  libgdx
GDX-lazy-font
auto self-generate BitmapFont for libgdx 1.5.0 +
Stars: ✭ 26 (-62.32%)
Mutual labels:  libgdx
screenmanager
Stackable Screen/State Management for the LÖVE framework.
Stars: ✭ 29 (-57.97%)
Mutual labels:  screenmanager
gdx-sqlite
A cross-platform extension for database handling in Libgdx
Stars: ✭ 61 (-11.59%)
Mutual labels:  libgdx
kickoff
Open Kick-Off is a fun rewriting attempt of the cult football game Kick Off 2 designed by Dino Dini and released in 1990 by Anco for the Atari ST and the Commodore Amiga. It is written in Java with the help of libGDX.
Stars: ✭ 32 (-53.62%)
Mutual labels:  libgdx
gdx-deploy-sample
Sample Gradle configurations for LibGDX for preparing and deploying release builds
Stars: ✭ 28 (-59.42%)
Mutual labels:  libgdx
RS232-Monitor-Database
🔌📺 This is a public database for all the known RS232 commands for professionnal screens, monitors and projectors. Feel free to contribute !
Stars: ✭ 22 (-68.12%)
Mutual labels:  screen
omo
Kotlin port with changes and improvements for omo originally by ForeignGuyMike
Stars: ✭ 22 (-68.12%)
Mutual labels:  libgdx
react-component-transition
Easy animations between react component transitions.
Stars: ✭ 20 (-71.01%)
Mutual labels:  transitions
lantern
[Android Library] Handling device flash as torch for Android.
Stars: ✭ 81 (+17.39%)
Mutual labels:  screen
WurfelEngineSDK
Isometric game engine. Open world, block/voxel based and sprite rendering.
Stars: ✭ 96 (+39.13%)
Mutual labels:  libgdx
gdx-gameanalytics
Gameanalytics.com client implementation for libGDX
Stars: ✭ 28 (-59.42%)
Mutual labels:  libgdx
tmux-conf
📝 TMUX Configuration for nerds with tpm
Stars: ✭ 31 (-55.07%)
Mutual labels:  screen
UnityGUI
UGUI Panel Systems for navigation, animation and more
Stars: ✭ 80 (+15.94%)
Mutual labels:  transitions
Ocean-blue-GDM3
Ocean Blue GDM3 theme for ubuntu
Stars: ✭ 27 (-60.87%)
Mutual labels:  screen
Android-Touch-Helper
开屏跳过-安卓系统的开屏广告自动跳过助手
Stars: ✭ 488 (+607.25%)
Mutual labels:  screen
SwitchDecor
An app to help you to add frame to your favorite screenshots from Nintendo Switch.
Stars: ✭ 40 (-42.03%)
Mutual labels:  screen
pathfinding
Java pathfinding framework.
Stars: ✭ 94 (+36.23%)
Mutual labels:  libgdx

What is libgdx-screenmanager?

Release Build Status GWT Compatible

This library is a screen manager for libGDX games. It allows comfortably changing the rendered screen while using transition effects. The library's easy to use nature makes it possible to integrate libgdx-screenmanager into any project without much effort.

Features

A small example using different transitions. Look at the showcases folder for more gifs.
  • Allows easily changing the rendered screen: game.getScreenManager().pushScreen("screen_name", "transition_name")
  • Adds screen transition effects for when a screen is changed. The included transitions can be found here. Furthermore, transition shaders are supported as well. See the GL Transitions project for a collection of some very well made ones.
  • Automatically registers/unregisters a screen's input processors whenever the screen is shown/hidden
  • There are create() methods for screens and transitions that are called once before a screen/transition is shown. This allows easily initializing them, when everything else has already been loaded
  • The whole library is well documented and includes tests for everything that isn't graphical

Example code

The following example shows how to use libgdx-screenmanager in your code. You can find the full example here.

The library is very easy to use: The game has to extend ManagedGame, all screen have to inherit from ManagedScreen. Screens and transitions have to be registered with the screen manager before they can be used. To push a screen game.getScreenManager().pushScreen("screen-name", "transition-name") has to be called. If no transition should be used, just call pushScreen("screen-name", null).

public class MyGdxGame extends ManagedGame<ManagedScreen, ScreenTransition> {

	@Override
	public final void create() {
		super.create();

		// Do some basic stuff
		this.batch = new SpriteBatch();

		// Add screens
		this.screenManager.addScreen("green", new GreenScreen());
		this.screenManager.addScreen("blue", new BlueScreen());
		// ...

		// Add transitions
		BlendingScreenTransition blendingTransition = new BlendingScreenTransition(batch, 1F);
		screenManager.addScreenTransition("blending_transition", blendingTransition);
		// ... 

		// Push the first screen using a blending transition
		this.screenManager.pushScreen("green", "blending_transition");

		Gdx.app.debug("Game", "Initialization finished.");
	}

}

Some additional notes:

  • Input processors have to be added in a screen via ManagedScreen#addInputProcessor(...). This is needed so the input processors can be automatically registered/unregistered when the screen is shown/hidden.

Documentation

In the wiki you can find articles detailing the usage of the library and its inner workings.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].