2020 年の Ebiten

Hajime Hoshi
2020-12-15

自分が Ebiten を開発し始めてから 7 年になりました。この記事は、 2020 年の Ebiten の回顧録です。

スポンサー

2019 年 12 月から 2020 年 11 月の間、以下の方々にスポンサーしていただきました。心より感謝いたします。

(スポンサー総額の大きい順、敬称略)

コントリビューター

2019 年 12 月から 2020 年 11 月の間、以下の方々にコントリビュートしていただきました。心より感謝いたします。

(コミット数順、敬称略)

その他多数のコントリビューターからコントリビュートしていただきました。

出来事

まとめ

2019 年 12 月

1 月

2 月

3 月

4 月

  • Ebiten 1.11 をリリース。主な機能は Game インターフェイスと RunGame 関数です。また、デスクトップマスコットが作れるようになりました。

5 月

6 月

7 月

Snowman Story, Odencat Inc., 2020

8 月

  • いくつか興味深いゲームがリリースされました。
    • Nadim Kobeissi 氏の Piccolo がリリースされました。美しい UI を持つオセロゲームで、 WebAssembly 版があります。 AI がめちゃくちゃ強くて、自分の場合デフォルトのレベルでは一度も勝てませんでした。
    • corfe83 氏の Idle Armada がリリースされました。これはおそらく Ebiten 史上初の有料 Android アプリケーションです。

Idle Armada, corfe83, 2020

9 月

10 月

package main

// Uniform variables.
var Time float
var Cursor vec2
var ScreenSize vec2

// Fragment is the entry point of the fragment shader.
// Fragment returns the color value for the current position.
func Fragment(position vec4, texCoord vec2, color vec4) vec4 {
	// You can define variables with a short variable declaration like Go.
	lightpos := vec3(Cursor, 50)
	lightdir := normalize(lightpos - position.xyz)
	normal := normalize(imageSrc1UnsafeAt(texCoord) - 0.5)
	ambient := 0.25
	diffuse := 0.75 * max(0.0, dot(normal.xyz, lightdir))

	// You can treat multiple source images by
	// imageSrc[N]At or imageSrc[N]UnsafeAt.
	return imageSrc0UnsafeAt(texCoord) * (ambient + diffuse)
}

11 月

Moonshot, Loig, 2020

12 月

2021 年以降の Ebiten