Skip to content

MovingPoint shall bring a framework to build 2D-based programs or games using JFrame in addition with the selfmade library. The library will be explained by a lot of educational examples like a random-walking AI, the most powerful tools of this framework by the example of creating games like DoodleJump, SpaceShooter or Snake. You will learn abou…

MarcoSteinke/MovingPoint-Lightweight-Java-2D-Game-Engine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mov

MovingPoint tries to achieve the impossible! A lightweight engine to develop games, animations or simulations.

After working a while with GMS, Unity I got trouble by the size of the project files and also of the imported libraries. I wanted to create some small things and firstly need Windows to run Unity and GMS and secondly enough Hardware.

This lead me to the development of MovingPoint. This project has two important aspects:

1 Beginner Friendly / Educational

+ I love programming and I also love teaching it to other persons, so the main goal of MovingPoint is to bring new motivated talents into programming. + A lot of people dream of creating their own games, MovingPoint gives them a first impression of Game Design + Even childs with basic Java skills could use this to create simple games like TicTacToe or Snake!

2 Operating System Independence

+ since MovingPoint is written in pure Java, you can run it on any Operating System

3 Hardware Independence

  • MovingPoint is lightweight, you do not need the latest hardware to build your games.

  • You also do not need to import all modules, only use the code which you need to build your project.

4 Use all Java libraries!

+ Yes it is true. You can run any libraries and connect them to MovingPoint + You are able to create Browsergames by running a Java Webapplication and importing MovingPoint. + Also usable to create Android Apps by using Android Studio

Usage

1 Clone this repository into your project.

git clone https://github.com/maste150hhu/MovingPoint

2 Extend the MovingPoint class

public class MyFirstGame extends MovingPoint {
  public static void main(String[] args){
    MyFirstGame game = new MyFirstGame("Title of the game");
  }
}

3 Run the build.sh in the project’s root folder to run MovingPoint with all of its packages.

4 Profit! You can now develop your first game.

In the Tutorials folder you will find some Examples on things which you could try out! Also examples on how to use MovingPoint

!! Examples will be added again during the next weeks !!

Start your first Game now

[Go to the Tutorials](http://movingpoint.net/tutorials.html) ## Tutorials not online yet.

TODO

Here you can find some things I am interested in. They will be the next features which will be added in MovingPoint

  • ❏ Add Event-Objects for specific events. Throw a MouseEventObject on click! !!! + add MovingPointAnalysis to count existing GameObjects, RAM usage, fps, log Events !!!

  • ❏ add locationOnScreen method

  • ❏ penradius method

  • ❏ getPenColor

  • ❏ UI Framework for MovingPoint based on Javax.swing

  • ✓ implement GameObjectQuery

  • ✓ refactor DrawListener to MovingPointCoreEngine

  • ✓ refactor Draw to GraphicalComponent

  • ✓ Transformation to Maven Project

  • ✓ getJLabel

  • ✓ implemented first packages

  • ✓ debug TicTacToe Example

  • ✓ improve Project-Structure

  • ✓ fix Grid with border

  • ✓ fix Grid with border and color

Most important

  • Build Scripts with more functionality

  • refactor method and variable names

  • Capsule components such as UserInput in their own modules

  • MovingPointStarter as Class which starts the Engine

  • Refactor GameObjectQuery and impllement it as Heap Data Structure with LRU Order

  • @Player Annotation, if the annotation is set, the object with the annotation will be used and drawn instead of the MovingPoint object. Otherwise the MovingPoint will be drawn.

  • MovingPointUIManager where the GraphicalComponent gets injected

  • improve project structure

  • work on the website: articles, comment-section, Documentation

  • rotated Images

  • rescaled images

  • rotated text

About

MovingPoint shall bring a framework to build 2D-based programs or games using JFrame in addition with the selfmade library. The library will be explained by a lot of educational examples like a random-walking AI, the most powerful tools of this framework by the example of creating games like DoodleJump, SpaceShooter or Snake. You will learn abou…

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages