2021年3月10日水曜日

WSL2 + Ubututu + XRDP 雑感

いまさらだけど WSL2 + Ubuntu 20.04 + リモートデスクトップ (XRDP) をやってみました。 「もう Linux は WSL2 さえあればいい」という人がそれなりに居たので、単純にどれくらいメモリを食うのか知りたかった。 上記のようなわかりやすい解説があったおかげで、設定自体は簡単でした。 初期状態の Ubuntu 20.04 には何も入ってないため xfce4 のインストールにやたら時間が掛かったのが気になったけど、それくらい。

インストール中に思ったこと

初心者がいきなり WSL2 を触るのが本当に良いのかはやや疑問が残ります。 いきなり BIOS を編集する必要があって、Linux の OS をいきなりインストールするのと大差は感じない。 あと初心者が使おうとすると、普通は入ってるアプリがほとんど何も入ってないので、いきなりコマンドラインの apt に慣れる必要があるのは少し気になりました。 最初に apt っても何が何だかわからん、となりそう。特に利点を感じにくいところがちょっとな。 へっぽこ PC を Linux に入れ替えた時のほうが感動があるかな。

あと WSL2 はインストール直後の apt の設定がイケてないので直しておく必要があります。 apt を使う前に以下の設定をしておくだけで、かなり快適になります。 こういう部分を初心者にいきなり説明する必要があるのも、面倒臭い気がしないでもない。
sudo sed -i.org -e "s/\/\/archive\.ubuntu\.com/\/\/jp\.archive\.ubuntu\.com/g" /etc/apt/sources.list
1台を完全に Linux にして、もう1台を WSL2 にするくらいが良いのかも知れない。

WSL2 の挙動

WSL2 は Vmmem.exe というアプリの上で動作するようになってて、初期状態は 1.2GB でした。 アプリをインストールすればメモリ使用量も増える仕組みになっていて、 gdm + xfce4 をインストールすると Vmmem.exe のメモリは 1.3GB を超えました。 放置していたら 900MB くらいになったりもしてて、正確な挙動はよくわからない。 Vmmem.exe の固定サイズ+Linux のメモリ使用量 (100-300MB) というイメージです。

WSL2 はメモリが潤沢にないと使えない仕組みで、メモリ 4GB のパソコンはつらい。 メモリ 4GB の Windows マシンでメモリ 1.3GB も占有されたら、Chrome を起動するとメモリ使用量が 100% に近くなり、他に何もできなくなってしまいます。 ちなみにメモリを制限する方法はあるとわかったのですが、 現実的には 1GB くらい必要なことは変わらないので、やはり今のところメモリ 4GB ではツライという認識で良いと思う。

WSL2 の I/O

WSL2 っぽい仕組みで一番気になるのが I/O。 当然みんながベンチしてくれてるのでそれを確認すると、/mnt/c は使わず、Ubuntu 上の ext4 領域を使うと良いらしい。 apt も不満のない速度が出ているので、マウントしなければ実用的に動作します。

結論

確かにメモリ使用量以外はかなりよくできている。 それではどれくらいメモリがあれば WSL2 + Ubuntu + リモートデスクトップをできるか。 以下のようになると思います。
  • メモリ 8GB未満=困難: 諦めて Windows を Linux で上書きしましょう
  • メモリ 8GB以上=可能: Windows 上で Linux をお楽しみください
WSL2 を使うことを意識してパソコンを買うなら、1万円くらいの中古 PC ではなく、2万円くらいの中古 PC が良さそうですね。 2万円さえ出せば、Windows も Linux も遊べるとわかってしまうと、案外悪くないです。 1万円だと Core i3 しか買えないですが、2万円あれば Core i5 が買えるため、精神的にも結構良くなります。

2021年3月6日土曜日

ことばクイズを作った

ことばクイズ を作りました。 国語が苦手な子ほど語彙力が不足している子が多いです。 しかし、基本的な語彙力が備わっているかどうかをチェックするのは案外難しくて、気付いた時には大きな遅れになっていることが多いです。 たぶんこれまでは、良いアプリとか仕組みが何もなかったんじゃないかな。 ことばクイズ は、そのようなクリティカルな問題を解決するアプリです。

ことばクイズ は小学1年 (もしかすると小学2年?) までに覚えていないといけない基本的なことばを、きちんと思い浮かぶことができるか確認できるアプリです。 問題はかなり簡単ですが、本当に国語が苦手な子はできないこともあるので、遊びの中で覚えてもらうことが大切です。 クイズと文字練習を組み合わせることで、ストレスなく語彙力を増やし、またひらがな/カタカナをきちんと書く練習を行います。 文字は AI が認識できるくらいには綺麗に書く必要があります。



同じ仕組みは小学生高学年にも使えないことはないのですが、いい感じの画像が出なくなってきます。 検討段階では微妙だったのですが、良さそうだったらサポートしてみるかも。 特に意味はないけど Gopher くんがマスコットになってます。

実際遊んでみると手書きに関しては結構いい感じ。 IT を活用しなければできなかったことで、結構良いものができたと思います。 音声は微妙だけどそればかりはどうしようもないので、技術の進化に期待するしかない。 Safari はブラウザのバグなのか、たまに音声が流れないことがある。 Android とデスクトップは完璧なんだけどなあ。

手書き漢字検索を作った

以前作った こども漢字辞書 を手書き検索できるといいなと思い、手書き漢字検索 を作りました。これで小さな子も完璧。

検索部分はそんなに難しくないので、あまり語れることはないです。 漢字認識の部分は語り始めるといくらでも語ることはありますが、いくつかベンチャーがあるくらいで、やってみると思ったより奥が深いです。 でも真面目に語ると長くなるだけだし、わざわざ表立って書くようなことではないと思ってます。



中国の論文を先に読んでいたので 97% くらいの爆裂性能が出ることを期待していたのですが、そんなには出ませんでした。 データセットも自力で作るしかないので、作ったものの精度が高いのかどうかもよくわからないという。 研究用データセットがあるのは知っているのですが、それより圧倒的にクラス数が多いので確認しても確認になってるのか微妙だし…。 まあデータ量はなんちゃって膨大な量を学習させているので、そこまで精度は低くないと思う。 クラス数が半端ないので、多少精度が低めに見えるのは、そんなもんかも知れない。

手書きしてみるといい感じの結果は出ているので、まあ良いかということにしました。 ちなみに書き順は考慮してないです。 実験している時も予想とは違った面白い結果がたくさん出てきて結構面白かったです。

2021年3月5日金曜日

フリゲ紹介: ネコトパズル

ネコトパズル はひらめきに重点を置いた『シンプルだけどやりごたえ』のあるパズル。 あとネコがかわいい。



全60ステージのクリアに 2-3時間くらい掛かったと思いますが、歯ごたえもあり、またパズルとしてもとても面白かった作品です。 下図のように「下に落ちて止まる」「回転する」という 2つのギミックしか使ってないシンプルなパズルなのですが、そこがいい。 詰将棋と似ている部分もありつつ、違う部分もあるようなパズルでした。 私は将棋で11~15手詰くらいなら頑張れば解けるのですが、ある意味、11〜15手詰より難しいかも知れない。 ネコトパズルには詰将棋の思考法で解ける問題と、そうでない問題があるように思いました。



難問と言われた 59, 60 などはあっさり解けました。 状態を壊すような回転や落下がほとんどないため、状態が静的で詰将棋によく似ているからだと思います。 詰将棋は状態をほとんど壊さず、手数だけを進めて読むのですが、それに近い。 そういった問題は動かさなくても解法が見えます。

逆に回転と落下が多く状態が壊れやすい問題は難しい。 ヒントを見ればまあ解けるんですが、詰将棋のように何も動かさず、ヒントなしに解こうとしても全然解けない問題がチラホラ。 「頭がとろける〜」という感じで苦労して頭の中で考えながら、楽しめました。 「この部分にはこのピースを持っていく必要がある」というのが浮かべば、動かさずに解けます。 ただそれがなかなか浮かばない問題はどう解くのが良いんだろう。 ガチャガチャやれば解けるのだろう、とは予想が付くものの、そこから読みを入れるのはなかなか難しい。

ガチャガチャやるのが前提なのか、私の思考力不足か。 一切動かさずに解こうとすると、並大抵の詰将棋より難しい気がします。 ほんの少し状態が崩れるだけでこんなに難しくなるんだなと思わされた作品。 詰将棋が得意な人は動かさずにクリアできるかチャレンジしてみても面白いかも知れません。

個人的には 52番 が一番難しかったかな。 こういうのどうやって考えるのがいいんでしょう。 作る時もどうやって作るんだろう。この手のパズルは、作るのも凄いなあ。

フリゲ紹介: ASTLIBRA ~生きた証~

ASTLIBRA ~生きた証~ は、製作期間 14 年の長編アクション RPG。 プレイ時間は公称 40 時間〜ですが、私は 55時間ほどでクリアしました。



紹介するまでもなく大人気の作品、かつ非常に面白かった作品です。 中身も凄いですが、まずは 14年間という製作期間。途方もないことだと思います。 ソシャゲなんかも数年作って公開した後、1ヶ月でクローズするなんてこともよく見かけます。 私も小規模〜大規模の個人制作は色々やりますが、研究を無視すれば、メイン製作期間が 1年間を超えたことはほとんどありません。 長期間制作し続けるということ自体、慣れれば慣れるほどしにくくなる側面があります。 リリースしても反響が良いとは限らないし…。

ただ、ゲーム制作というのはそうも言ってられない訳です。最初からドカンと出さないといけない。 企業でさえ大変なことを個人でやるのは超超超大変で、非常に大きな壁がある。 ゲーム制作が難しいと言われる所以はそこにあるかと思います。 14年という製作期間は、まさに異次元です。

ASTLIBRA ~生きた証~ は、 本来であれば有料でしかプレイできない高密度な作品です。 関節、マップ作製、配置など、全てのツールもすべて自作とのことで、 一体何万行くらい書いたら完成するのか、聞いただけでクラクラしてきます。 私、スーパークリエータ級のプログラミングが大得意な人が、この手の沼にハマってエタったのを結構見たことあるので、なおさら凄いと思います。 エタらず、まとめ上げる構想力と忍耐力が凄い。 規模感がわからないのですが、こういうのってコードだけで50万行くらい書くのかな…。もっと?


そして完成した作品も、ASTLIBRA ミニ外伝 ~幻霧の洞窟~ と同様にぶっちぎりの完成度。 個人制作なら真っ先にぶち当たるグラフィックや音楽と作り込みもぶっちぎり。 しかしフリーのみ利用可の素材を多数使用しているので有償化が難しく、 偶然フリーでプレイできている作品です。 色々と考えさせられる話ですが…、感謝しながら遊ばせてもらいました。



ゲームバランスとしては、育成をしっかりすることが前提のバランスになっており、 きちんと育成をしていればノーマルでちょうど良いくらいの難易度でした。 最終盤はガンガンレベルが上がるので、ノーマルでも少し易しくなっていました。 それでもボスは強めで、死ぬ時は死ぬくらいの絶妙な塩梅で、とても楽しめました。 多少のレベル上げも様々な育成しながらですし、動画を見てもわかるように、敵をボコるのが爽快!

大変だったのは育成のさじ加減がわからなかった序盤で、 さじ加減を掴んでからはスルスルとクリアできました。 序盤はコインとか合成とか宝箱探しとかも、どれくらいやると良いのかも悩みますが「全部しっかりやろう」が答えだと思います。 特に宝箱はきちんと探しておくと、かなり楽になる。

謎解きは一部難しいのがあったのですが、ヒントはたくさん出ています。 また 5ch とかに攻略情報があるので参考にすると良いかも。