Ebiten (海老天)

A simple SNES-like 2D game library in Go

Stable version: v1.4.0-alpha / Development version: v1.4.0-alpha

Features

Examples

Ebiten example: alphablending
Ebiten example: audio
Ebiten example: font
Ebiten example: hsv
Ebiten example: hue
Ebiten example: gamepad
Ebiten example: keyboard
Ebiten example: masking
Ebiten example: mosaic
Ebiten example: noise
Ebiten example: paint
Ebiten example: perspective
Ebiten example: piano
Ebiten example: rotate
Ebiten example: sprites
Ebiten example: blocks

Execute the examples

:; go get github.com/hajimehoshi/ebiten
:; cd $GOPATH/src/github.com/hajimehoshi/ebiten/examples
:; go run -tags example rotate/main.go

Note that you need to specify example tag.

Getting Started

Let's build a simple "Hello world!" game to get started with Ebiten. First create a new directory (mkdir hello_world), and change into it (cd hello_world). Type the following code into the main.go file:

package main

import (
    "github.com/hajimehoshi/ebiten"
    "github.com/hajimehoshi/ebiten/ebitenutil"
)

func update(screen *ebiten.Image) error {
    ebitenutil.DebugPrint(screen, "Hello world!")
    return nil
}

func main() {
    ebiten.Run(update, 320, 240, 2, "Hello world!")
}

Run the go run command to start the game. There you have it, your first Ebiten game!