mirror of
https://github.com/hajimehoshi/ebiten.git
synced 2025-01-24 01:42:05 +01:00
Ebitengine - A dead simple 2D game engine for Go
ebitenebitenginegamegame-2dgame-developmentgame-enginegame-engine-2dgame-librarygamedevgogolanggolang-library
06c141475c
Implements native standard layout for Linux gamepads by using the kernel-provided button IDs, thereby expanding support to gamepads not listed in gamecontrollerdb.txt. Linux's docs: https://www.kernel.org/doc/Documentation/input/gamepad.txt SDL2's source: https://fossies.org/linux/SDL2/src/joystick/linux/SDL_sysjoystick.c#l_1740 Note that I am NOT 100% convinced about the X/Y swap between Xbox and PlayStation controllers - the Xbox compatible pad I have however does have BTN_NORTH and BTN_WEST swapped (and thus BTN_X and BTN_Y assigned right), which confirms SDL's logic and opposes the kernel docs. Tested with this gamepad: "20d6:2802 BDA Xbox ONE Core controller", label says "PowerA Model 1508491-02" - even after clearing out gamecontrollerdb.txt, examples/gamepad shows a 100% correct mapping. Closes #2052 |
||
---|---|---|
.builds | ||
.github | ||
audio | ||
cmd/ebitenmobile | ||
colorm | ||
ebitenutil | ||
examples | ||
inpututil | ||
internal | ||
misc | ||
mobile | ||
text | ||
vector | ||
.gitignore | ||
blend.go | ||
CODE_OF_CONDUCT.md | ||
colorm.go | ||
colorscale.go | ||
CONTRIBUTING.md | ||
cursor.go | ||
doc.go | ||
export_test.go | ||
gameforui.go | ||
gamepad.go | ||
generate.go | ||
genevents.go | ||
genkeys.go | ||
geom_test.go | ||
geom.go | ||
go.mod | ||
go.sum | ||
graphics.go | ||
image_test.go | ||
image.go | ||
imagedumper.go | ||
imagetobytes_test.go | ||
imagetobytes.go | ||
input.go | ||
keys.go | ||
LICENSE | ||
mousebuttons.go | ||
README.md | ||
run_mobile.go | ||
run.go | ||
shader_test.go | ||
shader.go | ||
vibrate.go | ||
window.go |
Ebitengine (v2)
A dead simple 2D game engine for Go
Ebitengine (formerly known as Ebiten) is an open source game engine for the Go programming language. Ebitengine's simple API allows you to quickly and easily develop 2D games that can be deployed across multiple platforms.
Platforms
Note: External (bluetooth) keyboards are not available on iOS yet.
For installation on desktops, see the installation instruction.
Features
- 2D Graphics (Geometry and color transformation by matrices, Various composition modes, Offscreen rendering, Text rendering, Automatic batches, Automatic texture atlas, Custom shaders)
- Input (Mouse, Keyboard, Gamepads, Touches)
- Audio (Ogg/Vorbis, MP3, WAV, PCM)
Packages
Community
- Discord
#ebitengine
channel in Gophers Slack- GitHub Discussion
r/ebitengine
in Reddit
License
Ebitengine is licensed under Apache license version 2.0. See LICENSE file.
The Ebitengine logo by Hajime Hoshi is licensed under the Creative Commons Attribution-NoDerivatives 4.0.