引き続きピックのコード改良作業。例のマウスカーソル位置 1 ドットだけを逆投影する方式に改める。 その過程で気づいたが、glMatrixmat4.frustumnearfar がそれぞれ有限値、 Infinity のときには、まともな行列を返すように改造できる。

mat4.frustum(
    out,
    left, right,
    bottom, top,
    near, far);
if (far == Infinity) {
    out[10] = -1;
    out[14] = -2 * near;
}

1:00 YouTube に専念するか。

2:10 DOLCE プロの IIDX RED アーカイブを食い入り終わる。

11:30 何時に寝たのか忘れたが起床。納豆とコーンマヨパンを食す。いったん歯を磨いてさらにカップ麺を仕込む。

PC を開く。VS Code 上の日本語変換がまたぞろ遅くなっているので、プロセスを再起動。 これはおそらく複数ウィンドウで VS Code を起動しているときに発生する不具合なのではないだろうか。 WebGL コードを再開(つまり別のプロセスを生成)したタイミングで出てきたので、そう思われる。

12:15 やっと食い終わる。もう一度歯を磨く。

14:15 眠い。途中で雨が降ってくる。外出しないで正解だったとは。

18:20 まだ眠いがトイレのついでに起きる。PC に戻る。 さっきの DOLCE プロの続きを見てこれから何をするのかを考える。放送終了の判断が賢明だ。

19:20 イヤホンを装備しているとわからないが、外は大雨だ。下手に外出しない。 JavaScript の Canvas 2D で strokeRect 周りを実験。

20:55 実験終了。キャンバスを CSS で縦横を親ウィンドウいっぱいに引き伸ばした場合、座標の取り方が変わるのは承知している。 しかし、描線がにじむことまでは予想していなかった。これは WebGL で矩形を描くことになるのか? 破線や点線を描くのは少なくとも面倒、悪くて不能なのだ。

21:15 メシを買いに行こう。雨がやみそうだ。

イトーヨーカドー曳舟店。体温チェック。外へ出ると雨がほぼやんでいる。水戸街道へ足を伸ばす。

21:40 コモディイイダ東向島店。564 円。

  • ベビープレーンチーズ (4)
  • カツ丼&深川めし風あさり丼
  • ミニ赤飯おにぎり (2)
  • カレーヌードル
  • クリームパン

曳舟の部屋に戻る。入浴。

22:20 PC に戻る。晩飯。いちおうメールチェック。

23:00 歯を磨いてプログラミングに戻る。JavaScript の Canvas 2D API で矩形選択を実装する。 さっき風呂で思いついたことを試す。WebGL2 Fundamentalstwgl.resizeCanvasToDisplaySize がそのまま利用できるのでは。 イベントハンドラーで毎回リサイズチェックを入れると、描線のにじみが見事に消える。これだったか。

23:55 体裁を最低限だけ整えてビデオ撮影。あとは Twitter に投稿して今日はおしまい。寝てばかりの一日だった。