All Projects → hevs-isi → gdx2d

hevs-isi / gdx2d

Licence: Apache-2.0, Unknown licenses found Licenses found Apache-2.0 LICENSE Unknown LICENSE-HEADER
A simple to use Java library for games and graphics, for desktop (PC, Linux and Mac) and Android.

Programming Languages

kotlin
9241 projects
java
68154 projects - #9 most used programming language
GLSL
2045 projects
shell
77523 projects

Projects that are alternatives of or similar to gdx2d

Halma
Halma Game Built With The Awesome libGDX framework
Stars: ✭ 20 (-25.93%)
Mutual labels:  game-2d, libgdx-framework
tcl.gd
Feature-complete Tcl interface to GD graphics drawing library
Stars: ✭ 15 (-44.44%)
Mutual labels:  graphics-library
tic-tac-toe
🕹 iOS game - classic Tic Tac Toe with AI and state machines [Swift + SpriteKit + GameplayKit].
Stars: ✭ 60 (+122.22%)
Mutual labels:  game-2d
Game-Assets-And-Resources
Free and paid game assets and game resources for 2D games, 3D games, mobile games, Steam games, Unity games, and other games.
Stars: ✭ 164 (+507.41%)
Mutual labels:  game-2d
sdf-2d
A graphics library to enable the real-time rendering of 2D signed distance fields on the web.
Stars: ✭ 70 (+159.26%)
Mutual labels:  graphics-library
microgl
High-quality, no-compromise graphics library for embedded systems; currently under development.
Stars: ✭ 28 (+3.7%)
Mutual labels:  graphics-library
Zilon Roguelike
Survival roguelike game with huge world generation.
Stars: ✭ 18 (-33.33%)
Mutual labels:  game-2d
Finite-State-Machines
Implementation of the algorithm in the C#. https://tproger.ru/translations/finite-state-machines-theory-and-implementation/
Stars: ✭ 13 (-51.85%)
Mutual labels:  game-2d
StrawberryBF
A tiny 2D game engine focused on usability and simplicity.
Stars: ✭ 80 (+196.3%)
Mutual labels:  game-2d
TrippyGL
A simple, lightweight yet highly versatile OpenGL graphics library
Stars: ✭ 71 (+162.96%)
Mutual labels:  graphics-library
AsLib
🎨: RPG map maker (paint tool)
Stars: ✭ 82 (+203.7%)
Mutual labels:  game-2d
go-four-in-a-row
A simple command-line implementation of the game `four in the row`
Stars: ✭ 12 (-55.56%)
Mutual labels:  game-2d
kinieta
A Fast Animation Engine with an Intuitive API
Stars: ✭ 44 (+62.96%)
Mutual labels:  graphics-library
snake-game-2D
The famous 2D snake game in which your goal is to eat until you get huge and accumulate many points.
Stars: ✭ 18 (-33.33%)
Mutual labels:  game-2d
ao-cliente
Client for Argentum Online
Stars: ✭ 61 (+125.93%)
Mutual labels:  game-2d
uncharted-waters-2
Browser-based remake of Uncharted Waters: New Horizons (大航海時代II)
Stars: ✭ 56 (+107.41%)
Mutual labels:  game-2d
egret-farm
🎮 基于egret引擎开发的 h5农场游戏
Stars: ✭ 30 (+11.11%)
Mutual labels:  game-2d
cairo-cr
Cairo bindings for Crystal language.
Stars: ✭ 29 (+7.41%)
Mutual labels:  graphics-library
graphicsvg
Graphics library authored by Chris Schankula and Dr. Christopher Anand
Stars: ✭ 42 (+55.56%)
Mutual labels:  graphics-library
cala
Cross-platform system interface for hardware IO
Stars: ✭ 46 (+70.37%)
Mutual labels:  graphics-library

Welcome to gdx2d Build Status Maven Central

The gdx2d project is a simple to use 2d game and graphics framework. It is multi-platform (working on Windows, Linux and Android). It is Java based with the heavy-lifting done in native code (i.e. C/C++), for example for physics rendering.

Logo

More information about gdx2d can be found on the official project website.

For informations about how to use this repository and develop things in it, see CONTRIBUTING.md

What can it do?

The library contains simple to use graphical primitives such as lines, circles, rectangles. In addition, there are methods to draw pictures, rotate them, scale them etc. Physics simulation is also supported (using Box2D) as well as music and sound playing.

For each feature, a Java demo is provided for simple integration. Here are some examples of what the library is capable of (you can check the YouTube demo reel):

Screen shot

Why has this framework been developed?

The advantage of using gdx2d is that you can develop your code in Java on your standard desktop computer like any other Java application and then deploy the same code, with a single click, on an Android phone or tablet. Of course, you have to take into consideration the fact that some of your code is a bit different for Android (for instance, you don't have accelerometers on your PC).

The library itself is a wrapper around a very nice library called libGDX which provides almost everything to the library. The current project version is based on libGDX version 1.5.6.

Documentation

The Javadoc API of this library can be found here. More information about the project can be found on the official website.

What do I get?

It is multi-platform so that you can run your code on desktop computers (running either Windows, Linux or Mac) but also on mobile devices running Android. It is based on libGDX but provides a much simpler interface and multiple demo programs to get started.

Using the framework, the following code displays a shrinking/growing circle running smoothly:

package ch.hevs.gdx2d.demos.simple

import ch.hevs.gdx2d.desktop.PortableApplication
import ch.hevs.gdx2d.lib.GdxGraphics
import com.badlogic.gdx.Gdx
import com.badlogic.gdx.graphics.Color

/**
 * A very simple demonstration on how to display something animated with the
 * library
 *
 * @author Pierre-André Mudry (mui)
 * @version 1.0
 */
class DemoSimpleAnimation : PortableApplication() {
    var radius = 5f
    var speed = 1f

    override fun onInit() {
        // Sets the window title
        setTitle("Simple demo, mui 2013")
    }

    override fun onGraphicRender(g: GdxGraphics) {

        // Clears the screen
        g.clear()
        g.drawAntiAliasedCircle(g.screenWidth / 2f, g.screenHeight / 2f, radius, Color.BLUE)

        // If reaching max or min size, invert the growing direction
        if (radius >= 100 || radius <= 3) {
            speed *= -1
        }

        // Modify the radius
        radius += speed

        g.drawSchoolLogo()
        g.drawFPS()
    }
}

fun main(args: Array<String>) {
  DemoSimpleAnimation()
}

Who did this and why?

It was developed for the inf1 course taught at HES-SO Valais / Systems engineering by Pierre-André Mudry. The framework was written by P.-A. Mudry & N. Chatton with the help of C. Métrailler. The list of contributors is available here.

License

The gdx2d project is licensed under the Apache 2.0 license.

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].