GitWither / Azurite

Azurite Game Engine is a 2D Java game engine built on top of LWJGL.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool



Azurite

Azurite it is a 2D Java game engine built by the Games with Gabe Discord/YouTube community.
Explore the docs »

Features · Report Bug · Check the Trello

Table of Contents

Features

  • Modern OpenGL through the LWJGL 3 library for fast GPU rendering.
  • Entity Component System
  • Dear ImGui bindings

Code Samples

BoilerPlate Code:

public class Main extends Scene {
	
	public void awake() {		
		setDefaultBackground(Color.BLACK);
		camera = new Camera();
	}

	public void update() {

	}
}

Simple example with sprites

public class Main extends Scene {
	
	GameObject greenRectangle = new GameObject(new Transform(600, 230, 50, 50), 1);
	GameObject mario = new GameObject(new Transform(600, 200, 50, 50), 2);
	
	public void awake() {	
		setDefaultBackground(Color.BLACK);
		camera = new Camera();
		
		greenRectangle.addComponent(new SpriteRenderer(new Color(0, 255, 0, 255))); // Creates a new green sprite component
		mario.addComponent(new SpriteRenderer(new Sprite(Assets.getTexture("src/assets/images/marioSprite.png"))));	// Loads the image from the filesystem into a sprite component
	}

	public void update() {

	}
}

Prerequisites

  • OpenGL capable graphics card (minimum core 330)
  • OpenGL capable graphics driver
    • Linux nouveau drivers for nvidia cards do not currently work, you will have to install proprietary drivers.
    • FOSS AMD Drivers for linux do work.
  • Java 1.8

Project Setup

To begin contributing, create a fork of this repository. Using intellj, import this project from existing sources as a gradle project. Build gradle, then run the Main scene (located in the scenes package).

Documentation

License

Copyright (c) 2021 MIT License

Built With

Contact

Discord Server

About

Azurite Game Engine is a 2D Java game engine built on top of LWJGL.

License:MIT License


Languages

Language:Java 97.1%Language:GLSL 2.9%