ceramic-engine
Jérémy Faivre が開発したクロスプラットフォーム対応のフレームワークで、Haxeプログラミング言語を使用して2Dアプリケーションやゲームを開発することができます。 Ceramic はネイティブ環境でのデスクトップアプリ(Windows、macOS、Linux)、モバイルアプリ(iOS、Android)、ウェブアプリケーション(JavaScript + WebGL)、Unityプロジェクトなど、多様なプラットフォーム向けにネイティブエクスポートが可能です。 Unityへのエクスポート機能がデフォルトで搭載されている https://ceramic-engine.com/static/diagram-ceramic.svg
Ceramic を使ったサンプル達
code:setup.sh
haxelib install ceramic
haxelib run ceramic --cwd ~/.local/lib # ceramic コマンドは global にインストールする
ls -la ~ | grep ceramic # バグで root になっている可能性があるので、その場合 sudo chown foo ~/.ceramic する
cd ceramic-samples/hello-world
ceramic clay run web --setup --assets # で動作すればセットアップ完了
開発はVSCode前提。vim, emacs その他では設定が面倒そう .haxelib ではなく .local/lib/ceramic 以下にインストールした ceramic のソースを補完ソースに加えるような追加設定が必要になりそう。
その他
Ceramic は Hashlink を使用しない。ネイティブビルド(Mac、Windows、Linux、iOS、Android)では hxcpp を使用してC++コードを生成・コンパイルする。 Clay バックエンドが主要な実装で、プラットフォームごとに以下のように動作:
Web: JavaScript + WebGL に直接コンパイル
デスクトップ/モバイル: Haxe → C++ (hxcpp) → ネイティブバイナリ