7/6日記 ===== プログラム ===== * 少しずつゲーム開発のリハビリしていく。 ---- * https://github.com/nullstare/ReiLua * このツールお試ししてた。どうもビルドが必要な模様で、そもそも古いライブラリじゃないと対応してないため、古いライブラリをとってきてビルドしてた。 * その中に気になる記述があった。Webのところ。 * どうもEmscriptenは「.data」というデータの中にリソースを全部ぶち込んでロードするらしい。 * なので、リソースをEmscriptenでビルドして最終的にWebにアップしなければいけない模様。 * じつはTophat(umkaという言語で書けるフレームワーク)を使ってたときdata拡張子にぶち込む方法がわからなくてどうしたもんかと悩んでいた。 * 単体で動くスクリプトであればゲームの落書きできそうだけど、Webページにするとなると途端にハードルが高くなる気がしてる。 ---- * Tophatもビルド頑張ってみた。 * https://deepwiki.com/tophat2d/tophat/7.1-emscripten-support * なんか資料があった。 * TophatはとりあえずMSYSを駆使してリソース読めるところまでは到達したけど、なんかEmscriptenなのかSocolなのかわからないエラーが出て諦め気味。 * どうもEmscriptenのバージョンが新しすぎて対応してないとかもある様子。やべえなWeb。 * 他にもいくつかスクリプトを利用するゲームエンジンを試してみたけど、結構難しいようす。 * Loveもいけそうだけど、jsで変換する形式らしくこれ動くのか?という疑問が。 ---- * Tic-80を試してみた。 * https://tic80.com/ * 元々PICO-8を使って遊んでいたんだけど、最近は選択肢も多いのでその中から選択してみた。 * 通常時、Webへの出力どちらも問題ないことを確認。 * ソースコードから構築しようと考えて作業してみたが謎のエラーが出まくって対応できないので、Proバージョンを購入してみた。 * ProバージョンでHTML出力してみたところ、Pythonでサーバ立てると動かなくて、Webにアップすると動いた。 * つまり機能によってPythonの簡易サーバ機能は動かないということがわかった。ここは他のエンジン試すときも注意が必要。 * あとTIC-80のProバージョンはAndroidでも動くみたいなので、購入した携帯上で動かしてみた。超余裕。 * AndroidのTIC-80データは「Android\data\com.nesbox.tic\files」にあるので、必要があればここから取り出して管理するのでもよさそう。 * 意外とメモがわりに開発できそうなのが分かってきた。 * スプライトや音楽は定義しなければいけないものの、最悪マウスぽちぽちするし、そもそもそれほどエディタを使わないようにコードだけで組んでいく方式で作れそう。 * 今日やったこと。 * スプライト描画 * オブジェクト定義 * 処理ループ * スキャンラインごとの処理。パレットまたぐとかもできるらしいので色を多く出せる。\\ あと描画を開始する位置をずらすことができるので、ラスタースクロールみたいなこともできる。トレジャーのゲームが左端を隠している理由がようやく理解できた。\\ 工夫すればスプライトダブラみたいなこともできるけど、その意味はないのでやめておこうw ---- * 結論。Windows上で動くエンジンは多いが、HTML5にゲームをエクスポートして動かすのはなかなか難しい。 * Cならまだしも、スクリプト言語で動かすのは輪をかけて難しい。 * TIC-80は幸い問題なくアップできそうなのでこれで作ってみよう。 * ルールは単純にして、スプライトや音素材は楽に作れるように工夫していく。 ---- * 私的Webエクスポートのやりやすさ評価。 * Tophat:Emscriptenのバージョン依存であかんそう * ReiLua:Emscriptenのバージョン依存であかんそう(バージョンが低くないとダメとのこと) * PICO-8:よさそう。 * TIC-80:よさそう。Proバージョンはテキストで管理できたりエディタなしでエクスポートできる模様。 ===== その他 ===== * https://minimalcompany.com/ * シンプルな携帯いいなあ。