All Projects → b3dgs → Lionengine

b3dgs / Lionengine

Licence: gpl-3.0
Java 2D Game Engine

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Lionengine

Tinyengine
Tiny OpenGL Wrapper / 3D Engine in C++
Stars: ✭ 251 (+136.79%)
Mutual labels:  game-engine, engine, audio
Vulkust
An engine for Vulkan in Rust, tries to implement modern graphic features. (suspended for now)
Stars: ✭ 64 (-39.62%)
Mutual labels:  game-engine, engine
Tec
The Trillek Engine
Stars: ✭ 106 (+0%)
Mutual labels:  game-engine, engine
Enduro2d
Yet another 2d game engine of dreams (work in progress)
Stars: ✭ 82 (-22.64%)
Mutual labels:  game-engine, engine
Soloud
Free, easy, portable audio engine for games
Stars: ✭ 1,048 (+888.68%)
Mutual labels:  engine, audio
Lamiae
Lamiae - A Most Prestigious RPG Engine/Simulator derived from Cube 2 (Sauerbraten) and friends
Stars: ✭ 57 (-46.23%)
Mutual labels:  game-engine, engine
Novelrt
A cross-platform 2D game engine accompanied by a strong toolset for visual novels.
Stars: ✭ 81 (-23.58%)
Mutual labels:  game-engine, engine
Annwvyn
Annwvyn C++ Open Source designed-for-VR game engine and application developement framework
Stars: ✭ 34 (-67.92%)
Mutual labels:  game-engine, engine
Starruler2 Source
4X Space Strategy game Star Ruler 2's open source distribution.
Stars: ✭ 1,267 (+1095.28%)
Mutual labels:  game-engine, engine
Openra
Open Source real-time strategy game engine for early Westwood games such as Command & Conquer: Red Alert written in C# using SDL and OpenGL. Runs on Windows, Linux, *BSD and Mac OS X.
Stars: ✭ 10,220 (+9541.51%)
Mutual labels:  game-engine, engine
Evennia
Python MUD/MUX/MUSH/MU* development system
Stars: ✭ 1,309 (+1134.91%)
Mutual labels:  game-engine, engine
Nipe
An engine to make Tor network your default gateway
Stars: ✭ 1,032 (+873.58%)
Mutual labels:  engine, network
Aplay
A Better(Maybe) iOS Audio Stream、Cache、Play Framework
Stars: ✭ 44 (-58.49%)
Mutual labels:  audio, network
Corona
Solar2D Game Engine main repository (ex Corona SDK)
Stars: ✭ 1,679 (+1483.96%)
Mutual labels:  game-engine, engine
Rengfx
lightweight, expressive, extensible 2D/3D game engine
Stars: ✭ 41 (-61.32%)
Mutual labels:  game-engine, engine
Hellspawner
The OpenDiablo2 toolset
Stars: ✭ 69 (-34.91%)
Mutual labels:  game-engine, engine
Voxelman
Plugin-based client-server voxel game engine written in D language
Stars: ✭ 105 (-0.94%)
Mutual labels:  game-engine, engine
Amethyst
Data-oriented and data-driven game engine written in Rust
Stars: ✭ 7,682 (+7147.17%)
Mutual labels:  game-engine, engine
Yeti
⛄️ A general-purpose data-driven game engine with tools. Attribution based licensing.
Stars: ✭ 21 (-80.19%)
Mutual labels:  game-engine, engine
Minibae
The platform-neutral Beatnik Audio Engine, Mini Edition (miniBAE) is an exceptionally mature, well-rounded, and reliable computer music and sound system specially customized for small-footprint and embedded applications.
Stars: ✭ 82 (-22.64%)
Mutual labels:  engine, audio
Build Status
Coverage
Lines of code
Maven Central
License: GPL v3
Presentation
General features
Download
Installation
Getting Started
Tutorials

Presentation

The LionEngine is a game engine especially developed during the project Lionheart Remake for an easy Java use. The engine is as a library, in Jar format (including its javadoc), which can be included in any project; for utility class uses, or to directly implement and inherit a game skeleton (including management of frame rate, extrapolation, input output...).

Using Java 8 internal libraries, it is specifically designed for 2D games (no support for 3D at the moment), and proposes a set of functions for 2D resources management (images, sprites, animations, tiles...). Inputs and outputs are also available, with an easy keys retrieval, mouse movement... Management of music file are also available (Wav, Midi, and more using plug-ins, such as Sc68, AdPlug and AdlMidi). Windowed, full-screen and applet formats are fully supported, with a complete frame rate control.

In its current version, the engine greatly simplifies the development of Platform, Strategy and Shoot'em Up games, and also Network layer.

Overview

General Features

  • lionengine-core

  • Simple initialization, with version control, screen configuration and resource directory
  • Extrapolation control (machine speed independent)
  • Advanced filtering capability (Bilinear, HQ2X, HQ3X)
  • Sequence control (intro, menu, game part, credits...)
  • Easy resource management (relative to resource directory)
  • Advanced image usage (sprite, animation, tile, font, parallax)
  • File I/O (binary & XML reader & writer)
  • Utility classes (Random, Conversions, Maths, File...)
  • Verbosity control
  • lionengine-core-awt

  • Engine implementation using AWT from JDK 8
  • lionengine-game

  • Camera management (view and movement)
  • Cursor (synced or not to system pointer)
  • Background package (for an easy background composition)
  • Tile based map package (with minimap support, native save & load function)
    • Ray cast collision system
    • Compatibility with raster bar effect
    • A Star pathfinding implementation
    • Tile extractor (generate tilesheet from a level rip image)
    • Level rip converter (generate a level data file from a tile sheet and a level rip image)
  • Object base (support external XML configuration, trait system)
  • General object factory system (create instance of object)
  • Objects handling system (updating them, rendering, and retrieving)
  • Extensible Trait system to compose object characteristics without code complexity
    • Transformable (size and translation)
    • Body (gravity handling)
    • Launchable (launcher and projectile system)
    • Rasterable (object raster bar effect)
    • Producible (ability to produce other objects)
    • Collidable (collision handling)
    • and more...
  • lionengine-network

  • Server & Client system
  • Customizable network message
  • Integrated chat system
  • lionengine-audio-wav

  • Support for Wav sound
  • lionengine-audio-midi

  • Support for Midi music
  • lionengine-audio-sc68

  • Support for Sc68 Atari music (Sc68 wrapper)
  • lionengine-audio-adplug

  • Support for Loudness Sound music (AdPlug wrapper)
  • lionengine-audio-adlmidi

  • Support for Midi music (AdlMidi wrapper)

Download

Go to website Last version

Installation

Steps to include the LionEngine in your project:

  1. Install at least the Java JDK 8
  2. Choose your favourite IDE (Eclipse, Netbeans...)
  3. Download the latest LionEngine
  4. Include all LionEngine libraries you need for your project, following the tree dependency:
    • lionengine-core (minimum requirement)
      • lionengine-core-awt (uses AWT as graphic renderer, target for computer)
      • lionengine-game (base for game development)
      • lionengine-network (support for network)
      • lionengine-audio-wav (support for Wav sound)
      • lionengine-audio-midi (support for Midi music)
      • lionengine-audio-sc68 (support for Sc68 Atari music)
      • lionengine-audio-adplug (support for LDS music)
  5. You are now ready to use the LionEngine in your project

Getting Started

Once you installed the LionEngine in your project, you may would like to know how to prepare a quick sample as a first try:

Main class

public class AppSamplePc
{
    public static void main(String[] args)
    {
        EngineAwt.start("Sample Project", Version.create(0, 1, 0), AppSamplePc.class);
        Loader.start(Config.windowed(Scene.NATIVE.get2x()), Scene.class);
    }
}

Minimal sequence

public class Scene extends Sequence
{
    private static final Resolution NATIVE = new Resolution(320, 240, 60);

    public Scene(Context context)
    {
        super(context, NATIVE);
    }

    @Override
    public void load()
    {
        // Load resources
    }

    @Override
    public void update(double extrp)
    {
        // Update game
    }

    @Override
    public void render(Graphic g)
    {
        // Render game
    }
}

Tutorials

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