Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/icela/friceengine
:video_game: JVM game engine based on Swing/JavaFX.
https://github.com/icela/friceengine
engine frice-engine game game-engine java javafx jvm kotlin platform-independent swing
Last synced: 1 day ago
JSON representation
:video_game: JVM game engine based on Swing/JavaFX.
- Host: GitHub
- URL: https://github.com/icela/friceengine
- Owner: icela
- License: agpl-3.0
- Created: 2016-08-13T12:58:22.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2019-12-28T15:45:18.000Z (about 5 years ago)
- Last Synced: 2025-01-23T01:07:51.977Z (10 days ago)
- Topics: engine, frice-engine, game, game-engine, java, javafx, jvm, kotlin, platform-independent, swing
- Language: Kotlin
- Homepage: https://icela.github.io/#getting-started
- Size: 1.18 MB
- Stars: 345
- Watchers: 23
- Forks: 32
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# FriceEngine
![image](https://avatars1.githubusercontent.com/u/21008243)
CI|status
:---|:---:
Travis CI|[![Build Status](https://travis-ci.org/icela/FriceEngine.svg?branch=master)](https://travis-ci.org/icela/FriceEngine)
AppVeyor|[![Build status](https://ci.appveyor.com/api/projects/status/75d7wx28u3tgtnat?svg=true)](https://ci.appveyor.com/project/ice1000/friceengine)
CircleCI|[![CircleCI](https://circleci.com/gh/icela/FriceEngine.svg?style=svg)](https://circleci.com/gh/icela/FriceEngine)
CodeShip|[![CodeShip](https://codeship.com/projects/a1d7bc60-0a30-0135-8b3c-6ed4d7e33e57/status?branch=master)](https://app.codeship.com/projects/214712)[![](https://jitpack.io/v/icela/FriceEngine.svg)](https://jitpack.io/#icela/FriceEngine)
[ ![Download](https://api.bintray.com/packages/ice1000/FriceEngine/engine/images/download.svg) ](https://bintray.com/ice1000/FriceEngine/engine/_latestVersion)
[![](https://jitpack.io/v/icela/FriceEngine/month.svg)](https://jitpack.io/#icela/FriceEngine)
[![Awesome Kotlin Badge](https://kotlin.link/awesome-kotlin.svg)](https://github.com/KotlinBy/awesome-kotlin)
[![ktlint](https://img.shields.io/badge/code%20style-%E2%9D%A4-FF4081.svg)](https://icela.github.io)An easy, light, native game engine running on JVM.
+ Why easy?
[A flappy bird game](https://github.com/icela/FriceDemo/tree/master/1.7.9/Demo7.java) uses just 56 lines of Java code only.
Written in Kotlin, also work on Java, JRuby, Groovy, Scala and other JVM languages.+ Why light?
The release build jar is about 1.6mb (with a 1mb Kotlin runtime) only.+ Why native?
This engine is completely platform-independent: no JNI linkage, no native methods.**View [Document](https://icela.github.io/#getting-started) to learn how to use Frice Engine.**
## Screenshots
-
-
-
-
-## Build
Gradle:
```gradle
repositories { jcenter() }
dependencies { compile 'org.frice:engine:1.8.5' }
```Alternatively, you can follow the instruction from [JitPack](https://jitpack.io/#icela/FriceEngine).
Alternatively, you can download a jar from the [release page](https://github.com/icela/FriceEngine/releases).## Features
This engine is based on Java's built-in GUI framework, both Swing and JavaFX.
"Platform" here refers to Swing/JavaFX.### Platform dependent
These features are differently implemented in Swing/JavaFX.
Since this project is still in progress, the unsupported features will soon be available.Feature|Swing|JavaFX
:---|:---:|:---:
Life cycle|√|√
Dialogs|√|√
Cursor overriding|√|√
Screenshot|√|√
Buttons|√|√
Full screen|√|√
Always on top|√|√
Text font/size|√|√
Multi-instances|√|×
Resizability|√|√
Key listener|√|√
Text measuring|√|√### Platform independent
- Animations (moving, scaling, rotating, accelerating, chasing, approaching, etc.)
- Audio playing (\*.wav, \*.mp3) by JavaSound/JavaFX Media
- Clock system, timers
- Delayed event manager
- Automatic garbage collection (optional, objects far from the screen will be removed)
- Resource manager (caching IO)
- File/Image/Color/URL utils
- Game objects
- Frame animations
- Key-value database
- Particle effects
- Attaching game objects
- Collision detection with collision box## DSL
See [DSL for FriceEngine](https://github.com/icela/FriceEngine-DSL)## Contributions
Feel free to open issue for feature request, bug reports, etc.
This is generally a personal project, so please do give your genuine suggestions.This project is using Issue-Driven-Development.
Issues are well organized and used to managed tasks.## Demos
See [FriceDemo](https://github.com/icela/FriceDemo)
And see [TouhouDemo](https://github.com/ice1000/TouhouDemo)