Releases: hajimehoshi/ebiten
Releases · hajimehoshi/ebiten
v1.10.1
- Bug fix
RepalcePixels
might be very slow unexpectedly- CPU was busy when the window is in another workspace
- Delayed sound on macOS / iOS
- etc.
v1.10.0
- New features
- A new command
ebitenmobile
ebitenmobile
is a command that makes it eaiser to develop mobile applications with Ebiten. See the website for more details.
- Metal on iOS
- Now Ebiten uses Metal instead of OpenGL on iOS. (Issue 737)
- A new command
- Performance improvement
- Breaking change
- Now games on browsers automatically adjust its scale as if
SetFullscreen(true)
is called.
- Now games on browsers automatically adjust its scale as if
- Bug fix
v1.9.3
- Bug fix
- graphics: Fixed blinking issue on macOS
- Fixed freezing after 40-ish minutes on Windows
v1.9.2
- Bug fix
- graphics: Fixed crash when the given sub image's size is 0
- graphics: Fixed Metal issue
- audio: Fixed crash due to index out of range
v1.9.1
- Bug fix
- Audio crash on Windows
- Wrong rendering
v1.9.0
- New features
- New APIs
- Graphics
func (i *Image) SubImage(r image.Rectangle) image.Image
: specifies a part of an image. This replacesDrawImageOptions
'sSourceRect
.func (img *Image) Set(x, y int, clr color.Color)
: sets a pixel at the specified position on an image. Now*ebiten.Image
implements the standard'sdraw.Image
interface.Address
: represents whether the texture is repeated atDrawTriangles
.
- Graphics
- Deprecated APIs
- Graphics
DrawImageOptions
'sSourceRect
: Use(*Image).SubImage
instead.
- Graphics
- Bug fix
- Monitor issues
- e.g. The window was sometimes not opened in the current monitor (Issue 829)
- Several mobile issues
- Go 1.12 issues
- e.g. OpenAL crashes (Oto Issue 65)
- Monitor issues
v1.8.3
- Bug fix
- Crash when moving the window to another upside/downside window on macOS.
v1.8.2
- Bug fix
- graphics: the screen was not cleared correctly on browsers with
(*Image).Fill
function - mobile: the application was frozen when an error occurred.
- graphics: the screen was not cleared correctly on browsers with
v1.8.1
- Bug fix
audio.Player
objects could be leaked when they playebiten.SetWindowDecorated
didn't workebiten.SetWindowIcon
beforeRun
didn't workebiten.SetCursorVisible
beforeRun
didn't work
v1.8.0
- New features
- WebAssembly Port!
- This is still experimental: Be careful to use this.
- Flappy example
- Chipmunk physics engine example
- Much faster than GopherJS version!
- Polygon support (experimental)
- DrawTriangles function
- Polygons example
- Multi monitors support
- The window starts in the current monitor.
- The fullscreen is done in the current monitor.
- Faster Ogg/Vorbis decoder on browsers
- The decoder is now Wasm and works in a Web Worker.
- TPS (Tick per second)
- Tick is a unit to represent logical time. TPS means how many times the game is updated in a second.
- Automatic mipmap image creation
- More beautiful linear filtering
- WebAssembly Port!
- New APIs
- Polygons
type DrawTrianglesOptions
: represents options to render triangles on an image.type Vertex
: represents a vertex passed toDrawTriangles
.func (i *Image) DrawTriangles(vertices []Vertex, indices []uint16, img *Image, options *DrawTrianglesOptions)
: draws a triangle with the specified vertices and their indices.
- TPS
func CurrentTPS() float64
: eturns the current TPS (ticks per second), that represents how many update function is called in a second.func MaxTPS() int
: returns the current maximum TPS.func SetMaxTPS(tps int)
: sets the maximum TPS (ticks per second), that represents how many updating function is called per second.
- Vsync
func IsVsyncEnabled() bool
: returns a boolean value indicating whether the game uses the display's vsync.func SetVsyncEnabled(enabled bool)
: sets a boolean value indicating whether the game uses the display's vsync.
- Package
audio
func (c *Context) IsReady() bool
: returns a boolean value indicating whether the audio is ready or not.func NewInfiniteLoopWithIntro(src ReadSeekCloser, introLength int64, loopLength int64) *InfiniteLoop
: creates a new infinite loop stream with an intro part.
- Package
ebitenutil
func DebugPrintAt(image *ebiten.Image, str string, x, y int)
: draws the string str on the image at (x, y) position.
func IsDrawingSkipped
: returns true if rendering result is not adopted. Renamed fromIsRunningSlowly
.func ScreenSizeInFullscreen() (int, int)
: returns the size in device-independent pixels when the game is fullscreen.. Renamed fromMonitorSize
.func Wheel() (xoff, yoff float64)
: returns the x and y offset of the mouse wheel or touchpad scroll.func (g *GeoM) Skew(skewX, skewY float64)
: skews the matrix by (skewX, skewY).
- Polygons
- Deprecated APIs
func IsRunningSlowly() bool
: UseIsDrawingSkipped
instead.func MonitorSize() (int, int)
: UseScreenSizeInFullscreen
instead.
- Bug fix
- Multi monitors issues
- macOS 10.14 Mojave issues