An open API service indexing awesome lists of open source software.

https://github.com/juku/libgdx-2d-engine

A small 2D game engine with many utilities, more like a framework
https://github.com/juku/libgdx-2d-engine

2d-game 2d-game-engine game game-2d game-dev game-develop game-development game-engine java libgdx libgdx-2d-engine libgdx-desktop libgdx-engine libgdx-framework opengl

Last synced: 2 months ago
JSON representation

A small 2D game engine with many utilities, more like a framework

Awesome Lists containing this project

README

        

# libgdx-2d-engine

A small 2D game engine with many utilities, more like a framework

[![Build Status](https://travis-ci.org/JuKu/libgdx-2d-engine.svg?branch=master)](https://travis-ci.org/JuKu/libgdx-2d-engine)
[![Lines of Code](https://sonarcloud.io/api/project_badges/measure?project=com.jukusoft%3Aengine2d-parent&metric=ncloc)](https://sonarcloud.io/dashboard/index/com.jukusoft%3Aengine2d-parent)
[![Quality Gate](https://sonarcloud.io/api/project_badges/measure?project=com.jukusoft%3Aengine2d-parent&metric=alert_status)](https://sonarcloud.io/dashboard/index/com.jukusoft%3Aengine2d-parent)
[![Coverage](https://sonarcloud.io/api/project_badges/measure?project=com.jukusoft%3Aengine2d-parent&metric=coverage)](https://sonarcloud.io/dashboard/index/com.jukusoft%3Aengine2d-parent)
[![Technical Debt Rating](https://sonarcloud.io/api/project_badges/measure?project=com.jukusoft%3Aengine2d-parent&metric=sqale_index)](https://sonarcloud.io/dashboard/index/com.jukusoft%3Aengine2d-parent)
[![Code Smells](https://sonarcloud.io/api/project_badges/measure?project=com.jukusoft%3Aengine2d-parent&metric=code_smells)](https://sonarcloud.io/dashboard/index/com.jukusoft%3Aengine2d-parent)
[![Bugs](https://sonarcloud.io/api/project_badges/measure?project=com.jukusoft%3Aengine2d-parent&metric=bugs)](https://sonarcloud.io/dashboard/index/com.jukusoft%3Aengine2d-parent)
[![Vulnerabilities](https://sonarcloud.io/api/project_badges/measure?project=com.jukusoft%3Aengine2d-parent&metric=vulnerabilities)](https://sonarcloud.io/dashboard/index/com.jukusoft%3Aengine2d-parent)
[![Security Rating](https://sonarcloud.io/api/project_badges/measure?project=com.jukusoft%3Aengine2d-parent&metric=security_rating)](https://sonarcloud.io/dashboard/index/com.jukusoft%3Aengine2d-parent)

[![Sonarcloud](https://sonarcloud.io/api/project_badges/quality_gate?project=com.jukusoft%3Aengine2d-parent)](https://sonarcloud.io/dashboard?id=com.jukusoft%3Aengine2d-parent)

# Deployment
Build with `mvn clean install deploy -DperformRelease=true` to use maven-gpg-plugin

# Basic Game Config

Set property for DesktopLauncher in pom.xml:
```xml


com.jukusoft.engine2d.desktop.DesktopLauncher

```

```xml





org.codehaus.mojo
buildnumber-maven-plugin
1.4



create





true

false

false

7



org.apache.maven.plugins
maven-jar-plugin
3.0.2



true
lib/
${mainClass}


true
true




splash_screen.png


${maven.build.timestamp}

${buildNumber}-${scmBranch}






```

Next you have to create an `BaseGameFactory` implementation, e.q.:
```java
public class TestBaseGameFactory implements BaseGameFactory {

@Override
public BaseGame createGame() {
return new BaseGame(TestBaseGameFactory.class) {
@Override
protected void addSubSystems(SubSystemManager manager) {
//
}
};
}

}
```

Then you have to register this factory implementation via SPI.\
Create an directory "META-INF/services" in resources directory (e.q. src/main/resources/META-INF/service) and create a new file with the exact file name "com.jukusoft.engine2d.applayer.BaseGameFactory" (without extra extension) there.\
File content should be your package and class name of your factory implementation, e.q.:
```java
com.jukusoft.engine2d.test.desktop.TestBaseGameFactory
```