29
10

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Go6Advent Calendar 2019

Day 3

2019 年の Ebiten

Last updated at Posted at 2019-12-02

Ebiten は、筆者が趣味で開発した Go の 2D ゲームライブラリです。 2013 年頃から開発を続けており、今年で 6 年になりました。この記事では 2019 年に何があったのかを振り返ります。

まとめると:

  • Ebiten 製のゲームが賞受賞できてよかった (くまのレストラン)
  • gomobile などの比較的マイナーなツールはコントリビュートのチャンスである。
  • ゲームライブラリは使われないとクオリティが上がらない。 2019 年は Ebiten のユースケースを増やすことができ、良いサイクルを回せたように思える。

(追記 2019-12-05) 英語版 もあります。

1 月

  • モバイルゲーム「くまのレストラン」のリリースに向けて淡々と頑張っていたような気がする。

2 月

  • くまのレストランリリース。
    • ゲームのメイン製作者は Daigo という人。
    • 償いの時計などと同じ共通エンジンを使用している。共通エンジンには Ebiten が採用されている。
    • 筆者の知るところによると 40 万ダウンロード程度達成したとのこと。
    • くまのレストラン以降、モバイル環境における様々な問題を対処する必要がでた (例: Xperia で変な線が描画される)。今年はバグ報告と格闘する日々が続いた。
  • Go 1.12 がリリースされたが、これには筆者が実装した Syscall18 が含まれている。これは OpenGL バインディングに必要だった。

bears.png
https://daigostudio.com/bearsrestaurant/ja/ より

3 月

4 月

  • neguse 氏が cut’n’align というゲームを作ってくださいました。
    • neguse 氏のフィードバックを受けて、オーディオ周りの改善などを行った。

5 月

fishing.png
https://daigostudio.com/fishingparadise/ja/ より

6 月

7 月

  • GopherCon 2019 にて Mobile Game Development in Go という内容の LT を行う。
    • 内容は Go でもちゃんとモバイルゲーム作れるんですよというもの。
    • なお Johan Brandhorst 氏の Get Going with WebAssembly という発表でも Ebiten が紹介された。
  • Daigo により Odencat 株式会社が設立された。 Odencat 株式会社は現在のところ Ebiten 製モバイルゲームを制作する会社である。

8 月

  • gomobile の Go modules 対応を開始する。
    • GopherCon で Austin 氏らと話して「やってみれば?」と言われたのがきっかけ。
    • Ebiten は gomobile のヘビーユーザーであり、 Go modules 対応は必要不可欠である。そこで筆者は実装者として立候補した。

9 月

10 月

  • OpenDiablo2 が Ebiten を採用する。
    • Ebiten 採用前は C# だったり、いろいろ転々としていた模様。
    • OpenDiablo2 は Diablo2 のオープン再実装プロジェクトであり、リソースはローカルにインストールされた公式 Diablo2 を拝借して動かす。
    • OpenDiablo2 は Ebiten をこれまでにないくらいヘビーに使い倒しており、パフォーマンスに問題が生じている。筆者は開発者の Essial 氏と Discord で議論しながら、 Ebiten のパフォーマンス改善に努めている。
diablo.png 筆者のマシン上での動作確認

11 月

  • Ebiten v1.10.0 リリース。新機能としては iOS Metal や ebitenmobile コマンドなど。

12 月

snowman.jpg
https://odencat.com/snowman/ja/ より

2020 年以降の予定

  • gomobile の Go modules 対応が終わっていると良いな。
    • 終わったら Ebiten v2.0 が出せる
  • 機能追加については、「実際に Ebiten を使っているプロジェクトが欲しているもの」が最優先になる
    • いまのところ OpenDiablo2 が必要としている Pixel Buffer Object を活用したアニメーション機能とか?
    • 「くまのレストラン」の Daigo との情報交換も引き続きやっていく予定
  • ユーザーを増やすために、サンプルやドキュメントを増やさないとなあ (いつも言っている)
    • ゲーム制作の敷居を下げる工夫として、簡単に使えるアセットの提供や、サンプルの充実などが考えられる。
  • 技術書同人誌即売会で本出せたらいいね
29
10
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
29
10

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?