Project Name | Stars | Downloads | Repos Using This | Packages Using This | Most Recent Commit | Total Releases | Latest Release | Open Issues | License | Language |
---|---|---|---|---|---|---|---|---|---|---|
Godot | 61,743 | 9 | 3 hours ago | 4 | September 15, 2022 | 9,668 | mit | C++ | ||
Godot Engine – Multi-platform 2D and 3D game engine | ||||||||||
Phaser | 34,532 | 1,742 | 259 | 4 days ago | 139 | September 20, 2022 | 109 | mit | JavaScript | |
Phaser is a fun, free and fast 2D game framework for making HTML5 games for desktop and mobile web browsers, supporting Canvas and WebGL rendering. | ||||||||||
Libgdx | 21,562 | 494 | 184 | 4 days ago | 43 | May 11, 2022 | 281 | apache-2.0 | Java | |
Desktop/Android/HTML5/iOS Java game development framework | ||||||||||
Games | 20,855 | a month ago | 311 | |||||||
:video_game: A list of popular/awesome video games, add-ons, maps, etc. hosted on GitHub. Any genre. Any platform. Any engine. | ||||||||||
3d Game Shaders For Beginners | 15,226 | 25 days ago | 18 | bsd-3-clause | C++ | |||||
🎮 A step-by-step guide to implementing SSAO, depth of field, lighting, normal mapping, and more for your 3D game. | ||||||||||
Bgfx | 13,046 | 9 days ago | 1 | July 11, 2022 | 287 | bsd-2-clause | C++ | |||
Cross-platform, graphics API agnostic, "Bring Your Own Engine/Framework" style rendering library. | ||||||||||
Pyxel | 11,921 | 17 | 10 | 9 days ago | 111 | May 25, 2022 | 13 | mit | Python | |
A retro game engine for Python | ||||||||||
Openage | 11,785 | 7 hours ago | 225 | other | Python | |||||
Free (as in freedom) open source clone of the Age of Empires II engine :rocket: | ||||||||||
Magictools | 11,437 | a month ago | 2 | mit | ||||||
:video_game: :pencil: A list of Game Development resources to make magic happen. | ||||||||||
Tiled | 9,655 | 2 days ago | 9 | September 22, 2022 | 646 | other | C++ | |||
Flexible level editor |
A comfortable framework for game development which melds SDL2 and the Wren scripting language, written in C.
You can download production-ready binaries from our Releases page. This is the recommended method for distribution and easy development.
Alternatively, if you have Homebrew installed (Mac OS X, Linux and WSL), you can install DOME using the following commands:
> brew tap domeengine/tap
> brew install dome
Finally, if you want to build DOME yourself, to make modifications or other reasons, follow these instruction instead.
Ensure you have the shared SDL2 libraries installed on your system first, then to build, run:
> make
This will create an executable named ./dome
(on Mac OS X and Linux), and ./dome-x32.exe
or ./dome-x64.exe
.
Run ./dome [gamefile.wren]
to run your game. If your initial file is called main.wren
, just running ./dome
will execute it. Replace dome
with your built binary name as necessary.
Your game's entry point must contain a Game
variable which contains at least init()
, update()
and draw(_)
methods.
import "input" for Keyboard
import "graphics" for Canvas, Color
class Main {
construct new() {}
init() {
_x = 10
_y = 10
_w = 5
_h = 5
}
update() {
if (Keyboard.isKeyDown("left")) {
_x = _x - 1
}
if (Keyboard.isKeyDown("right")) {
_x = _x+ 1
}
if (Keyboard.isKeyDown("up")) {
_y = _y - 1
}
if (Keyboard.isKeyDown("down")) {
_y = _y + 1
}
}
draw(alpha) {
Canvas.cls()
var color = Color.rgb(171, 82, 54)
Canvas.rectfill(_x, _y, _w, _h, color)
}
}
var Game = Main.new()
DOME provides the following features, and more:
You can follow my progress on implementing DOME on my twitter.
DOME currently depends on a few libraries to achieve it's functions.
Apart from SDL2, all other dependancies are baked in. DOME aspires to be both minimalist and cross platform, so it depends on as few external components as possible.