今日は軍勢をCSVに保存して、読み出してエディターウィンドウで情報表示する。
SnapCrabからShareXに乗り換えた。 SnapCrabのほうが圧倒的に軽いけど(3MB vs 30MB)、 動画・GIFが取れるのは大きい。
久しぶりのアクセスで遅い件、
普通?の状態からdbをvmtouchで-eしてアクセスすると、200msほど遅くなった。(400ms->600ms) ただ遅いときは4.5秒ぐらいかかっているので、もっと他にも要因はある。
echo 3 | sudo tee /proc/sys/vm/drop_caches で全部?キャッシュを落としても900ms程度。
あとはpythonプロセスがページアウトされている?
適当にnice値を目一杯下げたら50msぐらいになった。 →気のせいかも。調子良ければnice値普通でも50msになる。
あとやっぱりmediaへのアクセスが発生していた。 nginxのキャッシュを見ると、ファイルが増えていた。15->17 日によってURLが違っている?
→EXPIRY_PERIOD毎にURLが変わる。デフォルトだと1日。 microblog側でmediaのキャッシュをするほうが筋は良さそう。 だけどやっぱりキャッシュの破棄とか面倒そうなのとCDNのキャッシュの事も考えたら、EXPIRY_PERIODを伸ばしてなるべくURLを変えないようにするのもまた正しそう。
EXPIRY_PERIODを伸ばすことにする。EXPIRY_LENGTHも併せて変える必要がある。
動画テスト
色々作らないといけない要素は尽きないけど、まずはこのぐらいからコツコツ実装していきたい
- 軍勢と城・町が同じ場所にあるときは、左上・右下にそれぞれ小さく表示したい
- 軍勢のアイコンの色をいい感じにしたい
- 軍勢のマスをクリックしたら、次の移動までにかかる日数を分かるようにしたい(UIなのでまだだいぶん先で良い)
- 今のUIは使いづらい
- 軍勢の移動先を選択できるUIがほしい
- デバッグも兼ねて他のキャラもランダムに出撃するようにしたい(簡単にオフにできる形で)
まだまだ先は長いけど、一応軍勢は見えるようになった。
キャラが足りないので、いったん軍勢の表示処理を作っていく。
見た目がうるさい
まずは地形情報をファイルに落とす。それをもとにマップの作り方を改善する。
時間を空けてアクセスすると、やっぱり処理全体(ディスクアクセス?)が遅くなる。
22:01:19.784 - (速度確認) index 開始 22:01:19.789 - (速度確認) index total_count取得完了 22:01:19.796 - (速度確認) index objects取得完了 22:01:19.796 - (速度確認) index outbox_objects完了 22:01:19.827 - (速度確認) index render完了 22:01:19.829 - status_code=200 elapsed_time=0.05s
09:28:48.537 - (速度確認) index 開始 09:28:50.193 - (速度確認) index total_count取得完了 09:28:50.779 - (速度確認) index objects取得完了 09:28:50.800 - (速度確認) index outbox_objects完了 09:28:52.251 - (速度確認) index render完了 09:28:52.349 - status_code=200 elapsed_time=4.94sn
明日こそクラスを整理して、キャラの配置機能ぐらいまで作りたい。
その後、適当にキャラを追加していきたい。
そんなに進まなかった。とりあえず適当に城を再配置する処理を作っていた。
今日はクラス整理をしてみる。城や町の管理方法をもう少しましにする。
画像もproxも、cfでもブラウザでもキャッシュはされている。
cfの設定でブラウザTTLは3日になっていた。あとcfもアクセスがないとキャッシュデータは消される感じがする。
→ブラウザTTLを相応に延ばす →Cache Reserveを使ってみる?
使い勝手は置いておいて、一応、城・町の追加・削除ができるようになった。
明日はキャラの配置か、実際の町の配置。城・町の管理クラスも一度整理したい。
教訓: ゲーム中は不変のデータであっても、EditorWindow上から編集できると便利なことはあるから、そのあたりも考慮しておくとよい。(訳: 城データを配列からリストに変えた)
地形もTilemap?じゃなくてデータで管理するようにしたら色々きれいになる。 もうTilemap?のペイント機能は不要なら、やってしまってもいい気がする。
城・町の追加処理を作る。
掃除で疲れたので今日はなし。