Ebitengine - A dead simple 2D game engine for Go
Go to file
Hajime Hoshi ee2f891fcc internal/graphicsdriver/metal: Reuse MTLBuffer objects
In Metal, MTLBuffer objects are not 'transient' and are expensive
to create. Reuse them whenever possible.

See also: https://developer.apple.com/library/archive/documentation/Miscellaneous/Conceptual/MetalProgrammingGuide/Cmd-Submiss/Cmd-Submiss.html

Updates #1196
2021-07-06 21:48:54 +09:00
.builds audio/internal/readerdriver: Use PulseAudio for Linux/UNIX 2021-06-05 19:46:36 +09:00
.github Bug fix: Specifying Go 1.17 beta1 with actions/setup-go 2021-06-11 01:20:56 +09:00
audio audio/internal/readerdriver: Bug fix: Avoid AudioQueueReset 2021-06-26 01:14:37 +09:00
cmd/ebitenmobile Add go:build comments with go1.17beta1 fmt 2021-06-11 01:11:46 +09:00
docs docs: Remove unused contents 2019-03-22 03:23:48 +09:00
ebitenutil Add go:build comments with go1.17beta1 fmt 2021-06-11 01:11:46 +09:00
examples ebiten: Add EvenOdd to DrawTrianglesOptions and DrawShaderTrianglesOptions 2021-07-05 03:35:55 +09:00
inpututil inpututil: Add PressedKeys 2021-04-07 01:50:39 +09:00
internal internal/graphicsdriver/metal: Reuse MTLBuffer objects 2021-07-06 21:48:54 +09:00
mobile Add go:build comments with go1.17beta1 fmt 2021-06-11 01:11:46 +09:00
nintendoswitch Add package nintendoswitch 2021-03-21 21:01:26 +09:00
text Revert "Revert 2 commits using ColorM cache" 2021-05-30 15:17:11 +09:00
vector vector: Better interpolation of Bézier curves 2021-07-06 03:30:33 +09:00
.gitattributes audio/internal/readdriver: Implement a driver for Android with Oboe 2021-05-04 23:51:36 +09:00
.gitignore audio/internal/readdriver: Implement a driver for Android with Oboe 2021-05-04 23:51:36 +09:00
AUTHORS Add Enrico to AUTHORS 2021-06-29 23:53:08 +09:00
CODE_OF_CONDUCT.md Add CODE_OF_CONDUCT.md 2020-01-08 11:30:57 +09:00
colorm_test.go Update version to v2.0.0-alpha 2020-10-04 04:30:40 +09:00
colorm.go ebiten: Remove the deprecated functions and constants 2020-10-04 04:47:24 +09:00
CONTRIBUTING.md Update CONTRIBUTING.md 2021-06-26 00:47:46 +09:00
cursor.go internal/uidriver/glfw: Native macOS implementation for setting cursor shape (#1624) 2021-05-02 14:50:50 +09:00
debug_ebitendebug.go Add go:build comments with go1.17beta1 fmt 2021-06-11 01:11:46 +09:00
debug_notebitendebug.go Add go:build comments with go1.17beta1 fmt 2021-06-11 01:11:46 +09:00
doc.go Fix typos, and use panic instead of log.Fatal in doc.go (#1446) 2020-12-21 21:14:17 +09:00
export_test.go ebiten: Bug fix: Wrong uniform type was used 2020-09-17 20:52:32 +09:00
gamepad.go Revert "driver: Increase gamepad buttons to 64" 2020-12-29 02:49:58 +09:00
generate.go Bug fix: some generators did not work due to a lacked package 2020-03-23 01:36:21 +09:00
genevents.go Add go:build comments with go1.17beta1 fmt 2021-06-11 01:11:46 +09:00
genkeys.go Add go:build comments with go1.17beta1 fmt 2021-06-11 01:11:46 +09:00
geom_test.go Update version to v2.0.0-alpha 2020-10-04 04:30:40 +09:00
geom.go ebiten: Remove the deprecated functions and constants 2020-10-04 04:47:24 +09:00
go.mod Update go.mod 2021-06-08 03:17:30 +09:00
go.sum Update dependencies 2021-04-17 20:30:10 +09:00
goversion.go Add go:build comments with go1.17beta1 fmt 2021-06-11 01:11:46 +09:00
graphics.go ebiten: Remove FilterDefault 2020-10-05 01:48:47 +09:00
image_test.go ebiten: Bug fix: Draw commands with EvenOdd should not be merged 2021-07-05 18:08:55 +09:00
image.go ebiten: Add EvenOdd to DrawTrianglesOptions and DrawShaderTrianglesOptions 2021-07-05 03:35:55 +09:00
imagedumper_desktop.go Add go:build comments with go1.17beta1 fmt 2021-06-11 01:11:46 +09:00
imagedumper_notdesktop.go Add go:build comments with go1.17beta1 fmt 2021-06-11 01:11:46 +09:00
imagetobytes_test.go Update version to v2.0.0-alpha 2020-10-04 04:30:40 +09:00
imagetobytes.go ebiten: Remove copying pixels from ReplacePixels and copyImage (renamed to imageToBytes) 2020-07-03 03:01:48 +09:00
init.go glfw: Use os.UserConfigDir for GLFW DLL instead of temporary directories 2020-11-01 17:51:44 +09:00
input.go ebiten: Change the key name convention to follow the Web standard 2021-04-14 22:49:07 +09:00
keys.go ebiten: Change the key name convention to follow the Web standard 2021-04-14 22:49:07 +09:00
LICENSE Adjust LICENSE file 2017-01-30 18:57:49 +09:00
mousebuttons.go Update version to v2.0.0-alpha 2020-10-04 04:30:40 +09:00
README.md Update README (supporting Nintendo Switch) 2021-06-11 23:51:51 +09:00
run_mobile.go ebiten: Refactoring: Move RunWithoutMainLoop to another file 2021-07-04 04:23:41 +09:00
run.go ebiten: Refactoring: Move RunWithoutMainLoop to another file 2021-07-04 04:23:41 +09:00
shader_test.go internal/shader: Bug fix: Error on duplicated const/var names 2021-04-09 00:12:17 +09:00
shader.go ebiten: Add a new shader function imageDstRegionOnTexture 2020-12-09 11:36:29 +09:00
uicontext.go internal/graphics: Reuse the vertices backend 2021-06-27 02:31:01 +09:00
uidriver_glfw.go Add go:build comments with go1.17beta1 fmt 2021-06-11 01:11:46 +09:00
uidriver_js.go Clean up the 'js' build tags 2020-10-07 01:33:10 +09:00
uidriver_mobile.go Add go:build comments with go1.17beta1 fmt 2021-06-11 01:11:46 +09:00
window.go ebiten: Add IsWindowBeingClosed / SetWindowClosingHandled / IsWindowClosingHandled 2021-06-14 02:29:11 +09:00

Ebiten (v2)

Go Reference Build Status Go Report Card

A dead simple 2D game library for Go

Ebiten is an open source game library for the Go programming language. Ebiten's simple API allows you to quickly and easily develop 2D games that can be deployed across multiple platforms.

Overview

Platforms

Note: Gamepads and keyboards are not available on iOS.

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

License

Ebiten is licensed under Apache license version 2.0. See LICENSE file.