・前日。
1130:ミックスナッツ✕1。
1430:炙り焼きチキン+スペアリブ。
1500:ミックスナッツ✕1。1日の総量自体は2袋が安定ではありそう。
1730:味噌豚+ピーマン+コーヒーゼリー。今回は試しにトマトの味噌豚を買ってみたが悪くないな。平日の帰宅後に炒める余裕があれば買っても良いかもしれない。
1930:ミックスナッツ✕1。なんかまだ欲しいな。
電解質タブレット✕3と水分1.8リットル程度。
性欲:低~中。あまり書き直してなかったけどそんなに高くはないか。
筋トレ:タオル僧帽筋20✕3回。
食物繊維:すこやか茶+賢者の食卓×2。


・Unity。
とりあえず設計だけしてるが、「絶対これあった方が良いよなぁ」というやつを思いついてしまって実装コストが上がるなど。まぁ今の段階なら何かがムダになるわけじゃなくてそこらへんまで考慮して実装していけば良いので効率が悪いわけではないんだけどな。
まぁ簡単に言えばプレビュー機能なので、デバッグ用途としても使えそうだし実装はしてみるかぁ。問題はどれくらいプレビューするかだなぁ。弾だけ見えれば良いのか、ステージ上で動いてるところまで見せてユニットとの距離感とかも見せるか。たぶんステージまで見えた方がエディットにかかる時間は少なくなりそうだから、やはりステージまで用意すべきか。そうなるとカメラをもう1つ増やしてそこで云々する形になるだろうか。カメラを複数使うのは個人開発では初めてかな。
ていうかこれならユニット選択画面でもプレビューできるべきか?そうなるとBOIDの確認のためにプレイヤーも移動できるべき?なんならプレビューじゃなくてそれが実際の挙動になってる?
結構根本から考えないといけなさそうなので設計だけで結構時間がかかりそう。少なくとも今日中ではムリだな。


・睡眠時間5時間。
相変わらず覚醒直後の眠気がスゴいが、その後は比較的起きやすいいつもの形。あとはこの眠気さえなんとかなってくれれば嬉しいが、現状でもまぁ特に問題はないっちゃない。眠いまま動けずにグダグダするしんどい状態はほぼないしな。


・Unity。
あれからさらに設計してたが、UIの呼び出し順序的なものも根本的から変えたいし、入力まわりも根本的に別の形にしたくなってきた。UIの機能自体はさほど変えなくて良さそうなのでまだマシではあるが、それなりに修正コストはかかりそう。そのうえでやるべきかどうか。
とりあえずやるかぁ。まずもって武器の設定に関しては新しいやつじゃないと作りづらいし、新しい形式ならジョイパッドもキーボードもなんならマウス操作まで含めてかなり統一感があるうえに直感的な理解のしやすさが上がるし。
作業の順序をどうするかが結構難しそうな感じもあるが、とりあえずGitでブランチだかタグだかを切って戻りやすくしてから作業を開始するか。まぁ出発前にできるのはGitまわりの作業くらいだとは思うが。
というわけでタグ追加。こういうのもGitに慣れるためにできて良かったな。


・鍋ボトル。
わりと詰めたつもりだがそれでも20分弱か。この感じだと最速でも15分くらいっぽいな。
ともあれ出発までは30分くらいの余裕はある。今回はUnityまわりを少し進めるとして、仕事期間は何してような。まぁ事前に決めても微妙なところか。仕事期間の序盤で調整する感じかな。こんな風に起きれるとも限らないし。


便意
昨日排便がなくて今朝は出るんだか出ないんだか微妙な状態だったので外出を保留中。まぁピーマンを買って帰ってくるだけならすぐだが、1時間くらいは外を歩いてたいしな。


・Unity。
というわけで便意がどうにかなるまで引き続き作業。
どうしてもCtrl+~みたいなやつをゲーム中に使いたくて、しかしUnityEditor側にショートカットを吸われるのが邪魔。ということで改めてあれこれ調べるなど。
で、ようやくUnityの実行中だけショートカットを無効化する方法に辿り着いた。以下のファイルを適当なところに置くだけ。
https://gist.github.com/rheirman/8cc1d578ffe7f4cea22b85651ba9e0b3
そして便意の方は落ち着いたようにも見えるのでそろそろ出かけるか。


・外出終了。
買い出し自体は予定通りだが、道中わりと眠かった。これは朝食の影響ではなさそうだな。そしてミックスナッツ✕1袋だと力が8~9割くらいしか出せない感じ。これならもう2袋いってしまっても良さそう。まぁ力が出しづらかったのは眠気の影響もありそうだが。
そういうわけでミックスナッツの2袋目をとっとと摂取してしまおう。
しかしまぁ眠気の正体がわからんな。まだ5時間睡眠に慣れてないと考えても良いが。30分程度前後するだけでも影響があるようには見えるし、今回は実際30分くらい早かったようにも思うし。まぁ明日から帰郷なのでどうせ色々と崩れてしまうだろうから仕事期間に改めて観察からかな。


・Unity。
とりあえず作業再開。
あー。UIまわりはあまりいじらなくて良いかと思ったが、UIの一部を切り離さないとダメか。まぁプレハブ自体は入れ子にできるので問題ないが、独立させるってことはこれ用のView・Presenterの新規作成が必要で、入れ子の方もそれをもとにした接続が必要になるか。
いや、あるいはあくまでコンポーネントとして独立させて、空Objectの下につけてそちらだけ専用のView・Prefabにすれば良いか。というか全体の構造としてはそれが妥当だな。
ていうかそうなると他の部分もそうだな。となると、既存のから2つコンポーネントとして切り離し、新しく2つコンポーネントを作る形になるかな。であれば、次の作業はまずはコンポーネント化から。


・昼寝。
断続的とはいえまた3時間ほど寝てしまった。まだ慣れてないのか?
改めて寝なくて大丈夫だった頃の雑記を見てみたが、下痢期間なのでちょっと参考にはならんか。でも断食多めでタンパク質の摂取がプロテインバーに頼ってる状態。精製されたタンパク質の摂取となると縄文時代から離れるのであまり試したくはないなぁ。電解質タブレットの摂取量が増えてるのも同様。
ていうか朝にプロテインバー食ってたんだな。朝からタンパク質を入れるべきなのか?朝のタンパク質だけ試してみても良いが、現時点では精製されてなくて朝から少量食いやすいものが思いつかないし、明日から帰郷だからそもそも試しづらい。今回はメモだけして終わるか。


・Unity。
まだ睡眠慣性はあるが作業再開。
うーん。コンポーネントもやはりView・Presenter化した方が良いのか?カーソル位置をそれぞれ記憶していた方が良さそうな感じがある。ただ、そうなるとさらに細かいPresenter内でInputActionだかの読み込みだのなんだのが発生?しかしやらなかったら結局上の方でそれぞれバラバラに操作を用意することになる。カプセル化的にも視認性的にも取り回しやすさ的にもView・Presenter化した方が良さそうだなぁ。手間が増える。
でもまぁまずは単純な部分をコンポーネントにして分離するところから。一度に大量に変更すると追いづらいからな。明日くらいまでかけるつもりで丁寧にやっていこう。
とりあえず動くようにはなったが、やはりちょっとカーソルまわりでエラーが出るか。たぶん前回の変更の方の影響だとも思うが。
というあたりで16時。このペースならカプセル化までは今日中にできそう。ひとまず休憩。


・眠気。
改めて考えよう。
概ね「睡眠物質の除去不足」が原因であるとは思う。まぁこれ自体も結果みたいなところはあるがともあれ。
で、少なくとも「睡眠時間の不足」ではなさげ。調子が良かった期間も普通に5時間睡眠だったしな。30分程度の前後で崩れそうにも思えるので完全に問題ないとまでは言えないが、今回は考えない。
「メシのタイミング」がやはり結構前倒しになってるな。夜に摂取するとしても味噌汁くらいだし、今のメシのパターンに該当するものであれば鍋が夕飯として15時が最遅。それ以降はミックスナッツや味噌汁だけなので、寝る際に腹は空っぽだろうなという感じ。それによって睡眠の質なり除去効率なりが上がってる可能性はそれなりにある。
「メシの種類」はまぁ下痢対策のためにかなり違う。主にミックスナッツ・プロテインバー・味噌汁しか食ってない。さすがに普段の食事をこれにするわけにはいかないが、朝からプロテインバーを食ってる時も多かったので朝のタンパク質を試したいのと、夕方以降にタンパク質をほぼ摂取してないので少なくとも肉の摂取を夕方までにするのはアリかもしれない。ただ、明日からの帰郷中の食事だと夜の肉摂取は多少してしまうなぁ。仕事期間までできそうなのは朝のタンパク質くらいか。ただ、それも何を食うか。少量だから逆に何かしらチャンスがあるだろうか?ソイプロテインを自前でドリンク作れば分量の調整はしやすそうだがさすがに面倒か?であればプロテインバーを半分だけ食うとか?それならまぁまだアリか。冬場ならまだ翌日まで残しても大丈夫な気はするし。帰郷中に試せるのはそれくらいだから、それ以外の要素との差分の観察のために先行してそれだけやってみるか。なんなら明日からいけるな。


・Unity。
続きから。とりあえずちゃんとカプセル化というかコンポーネントとしてちゃんと独立させてみる。
あー。現状だとInputSystemはViewから触れないようにしてるか。Unity依存だからView側で触れても良いかな。コンポーネントだからPresenterが必ずしも必要だとは思えないし。ひとまずそうするか。
さすがにInputActionを増やすたびにEnumとの対応付けを書いていくのが面倒になったので、Enumの名前とInputActionの名前は同じものとしてループでリストを作ってMergeすることにした。もともと同じ名前にはしてたしな。
あとはレバー入力もか。こっちはまぁコピペだけで済むとはいえ、たしかPositiveとNegativeでマージできたし、2次元ベクトルにする方法もあったよな?せっかくだから調べて整理してしまおう。この部分は今後あと3回使うのは確定してるし。
わりと気になる部分があったりして一緒に修正するなど。まだSubscribeまわりに慣れてないのもあってループ内でムダに何度もSubscribeしてるところまった。「ユニットごと」と「1回だけ」は切り分けないといけない。あと、細かいところでは「どのタイミングでCloneにするか」とか。全容が見えるようになったからこそって感じでもあるが、将来的にはたぶん事前にできるようになるだろう。
とりあえず1つ目のコンポーネントの整理が完了。かなりちゃんとしたものになったと思う。で、18時半か。しばらく休憩してもう片方のコンポーネントも同様に整理したら今日は終わりかな?


・Unity。
続き。
黙々と作業してあと少しといったところでユニットの情報のコピー処理が欲しくなってきた。今後を考えるとやはりあった方が良いよなぁ。
JSON化はできるし、コピーしたい情報=保存したい情報はこのJSONに過不足なく入ってるので、やはりJSONからインスタンスに上書きしたいところか。ただ、Unityにデフォで入ってるやつだとJSONの扱いが不完全だし、LitJsonだとインスタンスの上書きに対応してない。となると、まぁ自前で作るしかないかなぁ。さらにJSONライブラリを探しても別の問題が出てきそうだし。
どう拡張するか考えたが、LitJsonの中身を直接いじるのが一番早そうだったのでそうした。単にinstanceをデフォルトコンスタクタで生成してるところを外部から与えれば良いだけな感じだったし、実際そうだったし。
というわけで2つ目のコンポーネントの対応も完了。といったあたりで21時前か。一応スプラに備えてここまでかな。最近あまりスプラできてないが。
明日も空港や飛行機内で実装はできそうな気もするので、攻撃まわりの設定まわりの前に細かいところをざっとやろうかな。