昨日書いたやつの,ソフトウェアキーボードが両手操作できないのと,6DoFがOFFにできずにトラッキング失敗すると警告出てしまうのはアップデート予定なのか.
他に困ってるのは,ストアがOculus GoとQuestで別になってるアプリが多くてGoで買ったアプリをもう一度Questで買わないといけないのどうにかしてほしいなあ.
あとはブラウザをフルスクリーンにするとブラウザの位置が戻ってしまうのも地味に不便.
まだあまり触ってないけど,6DoFの動作も安定しているし外部機器やケーブルないのがすごく良くて,ちゃんと進歩してる感ある.
家出ようと思ったらOculus Questっぽい箱が届いた.注文して3日で届くのか.はやい.遊びたいけど仕事に行く.
* Quest
ちょっとだけ触る.
セットアップ
Oculusアプリの設定からQuestを選ぶと,アプリをアップデートしろと言われ続けて困ったけど,アプリのデータを一度消してログインしなおしたら先に進めた.WiFiパスワードをスマホアプリに入れるのはちょっと抵抗ある.
ディスプレイ
Oculus Goと比べると,解像度も少し上がったけどディスプレイがOLEDになってコントラストが高くなったことのほうが嬉しい.さすがに真っ暗に近いシーンだとOLEDのノイズが少し気になるけど.黒い画面がちゃんと黒い.
トラッキング
トラッキングが6DoFになったのはすごく良い.コントローラは丸い輪っかに赤外線LEDが入っててカメラでトラッキングしてるのか.
両手で操作できるけど,ソフトウェアキーボードとかは片手になるのが少しもどかしい.文字も両手で入力したくなる.
あと,壁に寄りかかったり,ベッドに座ったりするとガーディアンのアレが表示されて邪魔なので動画見たりするときは静止モードに切り替えないとつらい.近くの壁だけ表示してほしいかも.
WebVR
WebVRも特に変なことしなくても6DoFで動くしガーディアンのフェンスも普通にレンダリングされる.ただ,コントローラのボタンがOculus Goと挙動が違うみたいで以前作ったやつは操作できなかった.あとOculus GoではWebVRのレンダリング結果はADBで繋いだりしない限り保存できなかったけど,Questではスクリーンショットと録画が動くようになった.
そういえば,設定画面の日本語フォントがよく壊れるの何なのだろう?
Golang,構造体のタグも型の一部なので下のようなことできないのちょっと不便.以前,タグ以外が同じ構造体同士の変換ができるようになる話を見た気がして,最近のGoのリリースノート見ても見当たらないし夢の中だったかなと思っていた.
var a = struct {
X int `json:"x"`
Y int `json:"y"`
}{1, 3}
var b = struct {
X int `json:"hogeX"`
Y int `json:"hogeY"`
}{2, 5}
log.Print(a == b)
Proposal: Ignore tags in struct type conversions改めて探したら見つかった.Go 1.8で入ってたっぽい.
Oculus Questちょっと触ってみて,いい感じだったので注文する.
* DockerをアップデートしたらWSL上でdockerデーモンが動かなくなった
Windows 10を1903にしたりapt upgradeしたりしてたら,Dockerが動かなくなった....
どっちが原因かわからないけど,Dockerのバージョンによって動かないのは以前にも嵌ったのでとりあえずDocker 17を入れてみると動いた.
18使いたいのでどのバージョンなら動くのか調べると,18.06.1が動くらしい.
http://itengine.seesaa.net/article/464828656.html
18.06.1にしてみたけど何故か動かない.コンテナは作れるけど起動に失敗してる.
ダメ元で,docker.ioじゃなくてdocker-ceのパッケージ入れたら動いた.
docker.io=18.09.2-0ubuntu1~18.04.1 # だめ
docker.io=18.06.1-0ubuntu1.2~18.04.1 # だめ
docker-ce=18.06.1~ce~3-0~ubuntu # OK
docker.io=17.12.1-0ubuntu1 # OK
18.06.1のdocker.io版とdocker-ce版の違いはビルドに使われたGoのバージョンくらいに見えるけど何が原因なのかは調べてない.
WSL2にするとこの辺のトラブル減りそうだけど,技術的には現状のWSL1のほうが未来っぽいのでもうちょっと頑張ってくれると良いなあ.
なんか調子悪い.風邪引いたかも...
今週は,読もうと思ってずっと放置していた野崎まどの小説を読んだりしていた.
名探偵ピカチュウを見に行く.
毛が生えてるピカチュウ,最初は違和感あったけど見終わると今度は普通のピカチュウのほうが違和感あるな.
もつ鍋食べる.
眠い...今週は寝不足気味.
会社で話をしていて,プログラミング始めた頃を思い出したりした.
初めてプログラムを書いたのは,小学生の時にX1のHuBASICを触ったのが最初で,コンピュータやソフトウェアの存在を知ったのもその時だったので,コンピュータとソフトウェアとプログラミングは自分にとって同じ存在だった.
キーボードのキーを押すと画面に文字が出る時点で謎の仕組みだったし,LINEとかCIRCLEとか書くと画面に図形が表示されるだけで面白かった.最初は全く意味もわからずにサンプルプログラムを触って,IF,THEN,ELSE, GOTO, PRINTといくつかのグラフィック命令くらいは分かるようになったけど,英単語も知らなかったので,アイエフ,イーエルエスイー,ジーオーティーオーと頭の中で読んでアルファベットの羅列として覚えていた.
そのころは,サンプルを切り貼りして時間になったら音が再生されるプログラムとか簡単な双六ゲームを作ったりしたけど,いちから自分で何か作ろうと思うと,だいたい途中でうまく行かずに苦戦したり諦めたりしていた.
スーパーファミコン版の「ぷよぷよ」で遊んで,似たような落ちものパズル作りたくなって作り始めたけど,隣接している同じ色のキャラクタを消す処理をなかなか正しく書けず最後までちゃんと動かなかった.だいぶ後になってから再帰的に処理すれば楽だと気づいたけど.
あとはキーボードで操作する簡単なお絵かきソフトを作ったときも,sin,cosも意味もわからず使ってたし,数学の知識が足りなくてだいぶ苦戦していた.円を思った位置に配置するために長方形の対角線の長さが欲しかったのだけどどうやっても求められず,父親に聞いて a^2 + b^2 = c^2 というピタゴラスの定理を教えてもらったりしていた.ただ,平方根の存在も知らなかったのでSQR命令には辿り着けず,0.5乗してそれらしい値が出てきて満足した気がする.
ちゃんとプログラミング勉強しようと思ったのは中2の時で,そのとき使い始めたPC-9821 V166はN88-BASICは使えないと説明書に書いてあって残念だった(けど後から試したらMS-DOS版のN88-BASICは普通に動いた).インターネット環境も手に入ったので,いろいろBASICライクな言語を探してHSPに辿りついた.
プログラミングの入門書やアルゴリズムの本を買ったり地元の図書館で借りたりしてたけど良い本にたどり着けず,公開されてるソースコード読んだり,プログラミングの掲示板やメーリングリストのほうが役に立った.実は良い本もあると思ったのは,高校生のときに東京まで出かけたときに池袋のジュンク堂で本を探すようになってからで,確かC言語プログラミングとコンピュータアルゴリズム事典を読んだ時だと思う.
会社でしていたのはそんな話ではなくて,子供にプログラミング教える話だったけど.
山.
久しぶりに自転車乗った.
ただ,足つりそうで痛いので途中で帰る.なんか走れる距離短くなった気がするのでリハビリ必要かも.
体がだるい...
自転車のチェーン洗ったりする日.
もうすぐ連休が終わってしまう...
* キャンプ二日目
餃子とネギと肉を食べた.
周りの風景が何かおかしいのと,見上げると高層ビルみたいなのが見えてた気がするけど,気のせい.
* キャンプ的なやつをする日
暗い中,肉を焼いたり餃子を作ったりする.
餃子,手間かかりすぎてキャンプ中の料理に向いてない気がした.