WebGLによるライフゲーム制作の今週の予定です。
113日目:ライブラリの追加 — その1
114日目:ライブラリの追加 — その2
115日目:定期的なランダム処理 — その1
116日目:定期的なランダム処理 — その2
117日目:iOSアプリ作成 — その1
118日目:iOSアプリ作成— その2
119日目:予備日(次の週の予定を立てる)
もう完成に近い状況まで来ています。あとはライブラリを追加したりオプション的な機能を追加後、各プラットフォーム別に提供していきたいと思います。
以上です!
本家デアゴGTR-NISMO箱積状況:1箱 (38号)
今日は「外部ファイルへの保存 — その2」の作業予定でしたが、昨日すでに外部ファイルへの保存の実装を完了してしまったので今日はボタンを調整してました。
「DATA」を「LIBRARY」に名称変更しました。機能的には特に変わっていなく、既に出来合いのライフパターンを呼び出すボタンです。
あとは、ブラウザ上に外部ファイルをドラッグ&ドロップしたらそのファイルをライフデータとして読み込めるようにもしていました。
ちょっと今日は作業を張り切りすぎました。あんまり一時的に張り切りぎると
継続して作業が続かない
のが過去の経験から分かっているのでほどほどにしたいと思います。
以上です!
本家デアゴGTR-NISMO箱積状況:1箱 (38号)
今日の作業は「外部ファイルへの保存 — その1」です。
はい、上の画像のように外部ファイルへの保存に成功しました。生きているライフを白に、死んでいるライフを黒としてpng画像に書き出しました。
それよりも聞いて下さい。
作業管理の参考にしているデアゴスティーニのGTR-NISMO38号なんですが、なんと作業がネジ一本締めるだけでした。
どう思いますか?1週間の作業がネジ1本締めるだけですよ。
・・・私はとても素晴らしい事だと思います。
GTR-NISMOは合計100号もあるんです。仮に1号でネジ1本だけだとしても、合計で100本もネジ締めなきゃならないんです。
継続するには1号1号がこのぐらいの作業量でちょうど良いんです。
以上です!
本家デアゴGTR-NISMO箱積状況:1箱 (38号)
あ、38号は今日消化していないです。いくら何でもネジ1本だけの作業するのに袋破くのがめんどくさすぎます。
ある程度作業が溜まったらまとめてやります。
ʕ•̫͡•ʕ*̫͡*ʕ•͓͡•ʔ-̫͡-ʕ•̫͡•ʔ*̫͡*ʔ-̫͡-ʔ
今日の作業は「外部ファイルの読み込み — その2」です。
ご覧の通り画像ファイルを読み込めるようになりました。上記は車のホイール画像ですが、画像編集ソフトで自由にライフデータを描画してそれを取り込めます。
色の明るさが特定の閾値以上は生きたライフ、それ以外は死んだライフとして取り込みます。
外部の画像ソフトを利用して読み込み用ライフデータを自由に作成出来るというのは大きなメリットだと思います。
もちろん読み込んだ画像はライフゲームのルールに従って状態が変化して行きます。
良い感じではないでしょうか。
以上です!
本家デアゴGTR-NISMO箱積状況:2箱 (37,38号)
今日の作業は「外部ファイルの読み込み — その1」です。
とりあえず「ファイルを開くダイアログ」を表示するところまで進めました。
htmlのinputタグを利用しますが隠しておいて、自分で描画したボタンを使えるようにしました。
<input type=”file” name=”file” id=”file” style=”display: none; position: absolute; top: -100px; left: -250px;”>
・・・
// 呼び出し
$(“#file”).click();
以上です!
本家デアゴGTR-NISMO箱積状況:2箱 (37,38号)
今日の作業は「設定の維持 — その2」です。
昨日1日で全ての設定をlocalStorage(WebStorage API)によりブラウザに保存しました。
今度は、ブラウザのキャッシュを削除しない限り変更した設定が
残り続けてしまう
ため、今回はリセットボタンを追加して、押下することによりlocalStorageで記憶した内容を全て削除してUIをリロードすることにより初期状態に戻せるようにしました。
以上です!
本家デアゴGTR-NISMO箱積状況:2箱 (37,38号)
今日の作業は「設定の維持 — その1」です。
設定(ライフサイズやスピード、色など)の保存先をどうしようかと
10年と3ヶ月
悩んだ結果、ブラウザにデータを保存するlocalStorage(WebStorage API)を使用することにしました。
保存上限は5MB〜10MBですが特に問題ありません。
ブラウザキャッシュのクリアで消えてしまいますが、ライフデータと異なり最悪クリアされても良いと判断しました。
というわけで
サクサクサクッと
1日で実装してしまいました。
明日もう一日あるけど、どうしよう・・・
以上です!
本家デアゴGTR-NISMO箱積状況:2箱 (37,38号)
WebGLによるライフゲーム制作の今週の予定です。
あと機能的に足りないのはデータの入出力だけだと思います。いよいよ終わりが見えてきた・・・ような気がします。
106日目:設定の維持 — その1
107日目:設定の維持 — その2
108日目:外部ファイルの読み込み — その1
109日目:外部ファイルの読み込み — その2
110日目:外部ファイルへの保存 — その1
111日目:外部ファイルへの保存 — その2
112日目:予備日(次の週の予定を立てる)
もう一息です。頑張ります。
本家デアゴGTR-NISMO箱積状況:1箱 (37号)
今日の作業は「データ読込ダイアログでデータロードその2」です。
昨日、ライフデータを描画したpngファイルをバイト配列に変換するところまで終わっていました。
本日はバイト配列を実際の画面にロードする部分を作りました。
作るとは言っても、既にライフのランダマイズ処理で任意の箇所のライフデータを操作する処理は作り込んでいたため、それを利用して比較的簡単にバイト配列のロード処理が実現できました。
これでいろんなライフパターンを手軽に読み込めるようになりました!
これはデカイ!!
めっちゃ便利になりました。以上です!
あと、この土日で本家のGTR-NISMOの方も調子よく消化出来ました。
本家デアゴGTR-NISMO箱積状況:1箱 (37号)
今日の作業は「データ読込ダイアログでデータロードその1」です。
昨日まででテクスチャとしてデータを読み込み可能になりました。本日は、そのテクスチャデータからバイト配列としてデータを読み込むところまでが完了しました。
具体的にはテクスチャをcanvasに描画してから、getImageDataを使用して1ドット毎に4バイト赤(0-255)/青(0-255)/緑(0-255)/透明度(0-255)のバイト配列にすることが出来ました。
明日はこのバイト配列を利用して、実際のライフデータに反映したいと思います。
・・・実際のコードを記載して皆さんのお役に立てるブログにしたいのですが、
中途半端なコードなのでやめておきます。
以上です!
本家デアゴGTR-NISMO箱積状況:3箱 (35,36,37号)
大手には作れないアプリを(気持ちだけは(๑•̀ㅂ•́)و✧)