Articles list

In 2021

In 2020

In 2019

In 2018

In 2017

In 2016

In 2015

大学生活の振り返り

/img/blog/2021/03-30-crossing.jpg

長いようで短かった6年間

去る金曜日に、6年間在籍していた大学を修士でようやく卒業しました。2年前の学士卒業の時は全く感慨を感じなかったのですが(そのまま院に上がったので当然と言えば当然)、今回は大学を去るためかそれなりに感じるものがありました。

学生生活を、ゆるく振り返ってみます。

[Read More]

親切さと防衛機制

情けは人の為ならず

先日、D・カーネギー著の『人を動かす』という本を読みました。 内容をざっくり要約すると、相手を動かしたいなら批判を避けよ、親切になれ、相手の立場で物事を考えろ……というように、考えてみれば当たり前のことばかりが書かれています。 しかし、この本のよいところは、きちんと具体例(実際の事例)が記述してあるという点です。 読めば読むほど納得感が出てくる仕組みになっていて、読後は「明日から人には優しくしよう」という気持ちになれます。 親切は巡り巡って自分にとって利益になる。いわゆる『情けは人の為ならず』『取らんと欲する者は先ず与えよ』『三方よし』というやつですね。 私もこれらを理解していたつもりではありましたが、いざ『人を動かす』を読んで実際の事例に触れてみると、ますます他人へ優しくしようと思えてきたのです。感情論ではなく、明確な実利があるのですから。

これだけ読むと、そりゃあいい考えじゃないか、とっとと優しく生きていけよ、と思う方も多いと思います。 ただ、やはりと言うか、これがなかなか難しいのです。

[Read More]

あけましておめでとうございます

あけましておめでとうございます。

あけましておめでとうございます。コロナ禍ですが、皆様お元気でしょうか。私は肉体面では元気です。精神面は……お薬美味しいです1

今年は人生初の就職や一人暮らしが控えており、不安と期待の入り混じった年です。一所懸命に生きていきますので、また一年、よろしくお願いいたします。


すみません、別件で年末から年始にかけて忙しくしておりますので、用件のみにて失礼いたします。


  1. ツムラの漢方は本当に適度な苦味と甘味があって、コーヒーにぴったりです。 ↩︎

Godot Engine上で振り仮名(ルビ)を実現する

Godotでもルビを振りたい!

皆さんはゲームを作るとき、何のエンジンを使いますか? ……なになに、「既製エンジンを使うとは限らないじゃないか」ですって? いやいや、今時、フルスクラッチで自作する硬派な人は希少でしょう1。エンジンっぽいものを作るにしても、既製のツールの上にオリジナルのものを実装するケースが多いのではないかと思います。車輪の再開発はできるだけ避けたいでしょうから。
既製エンジンで言えば、UnityやUnreal EngineのようなAll-in-Oneなエンジンを使う方も多いでしょうし、あるいはGameMakerやRen’PyやPhaser (≒Pixi.js)のように強み重視なエンジンを使う方もいらっしゃると思います。どれもそれぞれ特徴があって面白いですよね。
有名なゲームエンジン間の比較や各エンジンの強み・弱みを解説しているgamesindustry.bizの記事を読んでみると、いろいろあるんだなあと改めて実感します。

ところで最近、私はGodot Engine2というFLOSSのゲームエンジンを触り始めています。シングルバイナリ(60MBほど)で動作し軽量、マルチプラットフォーム(Linuxでも動きます)に対応、おまけにFLOSS(MITライセンス)なのでソースコードも読み放題! という個人的な理想が詰まったエンジンなのです。控えめに言って神、というのはこのことでしょう。
そして、私は事あるごとにノベルゲームのような何かを作る習性3があるため、今回もGodot Engine上でノベルゲームっぽいものを作ることにしました。

海外ではそれなりに人気もあるエンジンということもあり、大体の機能は揃っています。テキスト表示も詰まることなくオーケー。各種画像表示4や音源再生もオーケー。基本的なノベルゲームっぽいものは難なく完成。
しかし、ちょろちょろとスクリプトを入れ込んでいるうちに、あることに気が付きます。そう、振り仮名、所謂ルビを振る機能がないのです。Godotは海外産である上に日本でもマイナーな存在ということもあって、ルビのようなレア機能は当然実装されていないのでした。

調べてみると、Unityでもデフォルトでルビはサポートされていないようですが、流石有名なUnity、いくつか実装例が存在しているようです5。しかし、Godotでの実装例は見当たらず……。
Godotに心を奪われてしまった一ファンとして、これは見過ごせません。というかファン云々以前に、とにかくGodot上でルビを振りたいのです。

[Read More]

『創の軌跡 (PS4)』クリア後の感想と評価・レビュー

前置き

今後を見極める意味で購入した『創の軌跡』

去年の七月、PS Storeで買って放置していた閃の軌跡I:改をたまたまプレイして以来、私は日本ファルコムのファンになりました。冒頭 (のっけ) から人が死んでおり1、テンションが上がるBGM(この曲は今でもお気に入りです2)と共にガレリア要塞を駆け抜けるシーンは今でも思い出すことができます。閃の軌跡I/IIはテーマ性も良く、特にIIでリィンが慟哭するシーンは屈指の出来栄えでした3
そして、続けて閃の軌跡IIIをプレイし終えたところで、これはIVをプレイする前に過去作全部やらないとダメなヤツだなと察知し、約一年かけて4空の軌跡三部作/零・碧の軌跡をプレイして、その後に閃の軌跡IVをプレイし終えました。

我ながらよくやったと思いますし、過去作を全てプレイしたことで、一ファンとして作品を語る上での自信にもなりました。例えば、去年に私が閃の軌跡I/IIをレビューした際には過去作知識が全く無かったために、当時存在していた過去作との比較による批判は理解ができなかったわけです。今であればそういった批判も理解できますし、その上で再度述べさせてもらうと、閃の軌跡I/IIについての個人的な評価は全く変わっていません。良作だと思っています。I/IIについては。
空三部作、零・碧も本当に良い作品でした。私は特に零・碧を推したい。テーマ性が極めて明確で、プレイした後でも胸に残るものがあります。特に零の終盤、古戦場に向かうシーケンスの震えるほどカッコいいこと!5 リアルタイムでプレイしていた時は深夜だったのですが、テンションが上がり切ってしまい、結局朝方までプレイしたのを覚えています。

軌跡シリーズは本当に良作揃いなんですよ。再度書きますが『プレイ後に残るものがある』のです。テーマ性が描き出した主人公らの葛藤が、プレイヤーの心に欠片を残してくれるのです。 プレイヤーに消費されるだけで(あるいは、それのみを意図して開発されて)一ヶ月後には内容をさっぱり忘れられる作品とは違います6

……と、ここまで褒めちぎっていて何なのですが、上記文章で私が褒めていない作品があることにお気づきかと思います。そう、閃の軌跡III/IVですね。

散々言われていることですが、もうはっきり書きます。閃の軌跡III/IVについては、ファンである私も評価できませんでした。特にIVについては、褒めるところがほとんどありません。 まあ、IIIはまだ良かった。新しいキャラと共に、主人公であるリィンの先が語られたわけですから。グラフィックも向上して、新鮮味もあって、まだ褒める点もありました。

IVはダメです。(好きな方がいたら申し訳ないのですが)空・零・碧・閃の中で唯一、ラストで全く感動できない作品でした。IIIから引っ張った展開で目新しさがほとんどなく、ラストで不要・冗長なエンディング分岐をさせてみたり7、分かりにくい謎の当て字を多用してみたり8、何度も同じ言い回しを使ってみたり9、悪い点は枚挙に暇がありません。 終盤のミシュラムでの絆イベントもコピペレベルで、見ていて辛いものがありました。そりゃ怒る人も出るでしょうと。 ラストに辿りつく頃には疲労困憊。挙げ句の果てに、残念バッドエンドです、トゥルーエンドを見るには追加でモンスター倒してラスボス再攻略してください、と言われてコントローラーを投げそうになりましたね。あれは一種のトラウマです。

そんな事情もあり、IVのプレイ後、直前にプレイしていた零・碧の出来が極めて良かっただけに、私の中で一種の疑念が生まれていました。曰く、「ファルコムは、今後どういう舵をきるのか?」と。
私はファルコムの思想はすごく好きです。音楽に力を入れていて、プレイヤーに一定の利用許可を出すほどの胆力もある。ゲームの起動時に邪悪で不快な『警告』メッセージ10を出すこともない。ゲームの細かな機能、UXも悪くない。GOG.comのような、プレイヤーの自由を尊重するDRMフリーのストアにもPC移植版をリリースしている11。こちらのことをよく見てくれているなと感じます。だから海外での人気が高いのでしょう。
しかし、シナリオを重視するRPGと謳っているからには、相応の質が必要です。伴っていなければ、『ゲーム』としてはやはり失敗ですから。

つまるところ、IVの路線で今後続けるつもりであれば、購入の継続も厳しいなと本能的に感じてしまったわけです。 そのため、今後もイースシリーズ含めファルコム製品の購入を継続するか――すなわち、ファルコムを応援し続けるかを見極める試金石として、今作『創の軌跡』を購入してプレイすることにしました。

前置きが長くなってしまいました。これらの事情を踏まえた上で、ここから『創の軌跡』についての感想と評価・レビューを述べていきます。

ご注意

発売されて間もないこともあり、ネタバレは最低限に押さえていますが、感想(批評)の都合上触れざるを得ない点がありますので、ネタバレが気になる方はクリア後の閲覧を推奨します。

ネタバレリスクを認識した上で、読みたい方はread more。

[Read More]

浮かんだ泡のように

橙色と泡

深い、深い青色の空に、橙色がヒビとなって広がっている。晴れた日の夕焼けは誰もが美しいと思うだろうけれど、僕はその夕焼けが終わる直前――橙色が消え始める頃の空が、一番好きだ。朝焼けも同様に好きになれるのだろうけれど、僕は早朝に目を覚ます性分ではないから、いつも夕焼けを目にしている。

でも、どうして好きなのだろうと考えると、いろんな答えが頭を巡って、どう結論づけるべきか迷ってしまう。青色と橙色のコントラストが美しいから。消える瞬間に儚さを覚えるから。あるいは、何となく。どれも正しいような気もするし、間違っているような気もする。うん、きっとそれが答えなのだろう。ゼロイチで決まることではなくて、様々な感性と経験のうねりによって、好きという言葉が導出されるのだと思う。

ただ、橙色に光るヒビを空に見つけると、毎回思い出すことがある。それは、家族や、サークルの友人たちと一緒に行ったキャンプ場で見た、炭火の色だ。 夜の暗がりの中、黒色の炭の後ろでぼうっと光る橙色の光。炭のヒビからちらちらと炎も見えて、そこから発せられた光が周りにいる人の顔を照らす。照らされる顔は千差万別だ。笑う顔、渋い顔、儚げな顔。いろいろな顔と一緒に、炭火を囲んでいたという記憶。ぱちぱち、と炭が爆ぜる音も蘇ってくる。 空のヒビを見ると、その光景が頭の中に泡のように浮かんで、僕はなんだか温かい気持ちになるのだ。それは僕にとって『好き』とは少し違う感覚で、言葉にするなら、いわゆる『幸せ』と形容されるものだと思う。……いや、もしかすると、『幸せになれるから好き』、なのかもしれない。

ふわふわとした、心地の良い幸せ。空の炭火は徐々に大きな記憶の泡となって、頭の中から外へ漏れ出して、僕を包んで浮かせてくれる。泡の中で僕は、纏っていた重苦しいいろいろを捨てて、裸の生身となって、炭火の向こうに見えた幸せを手にすることができるのだ。泡がそのまま空へ連れて行ってくれたら、僕は幸せであり続けられるのだろう。きっと、二度と戻ってこられないほどに。

でも、それは長く続かない。続かないのだ。空を見るのを止めても、しばらくは泡の中で生きていられる。けれど、泡は何かの拍子にさっぱり弾けてしまう。 きっかけはいろいろだ。テレビのニュース。人との会話。映画。アニメ。小説。泡の幸せは、ぱちり、という音と共に消える。残るのは、自分だけ。

泡から放り出された僕は、惨めだ。防具を失った冒険者が敵にボコボコにされるように、泡を失った僕は無防備で、現実の鋭さに耐えられない。矢のように、針のように、現実は僕を貫こうとする。それも手足ではなくて、自分が自分である証明、心を、現実が突き刺す。

悲鳴は上がらない。現実と過去の間では、救いはない。自身の過去を自身で否定することはできないからだ。同様に、現実は受け入れるしかないからだ。
悲鳴は上がらない。自分自身を見つめることは、自分自身の発見にしかならない。空に浮かんだヒビの向こうには、自身の憐憫しか残っていないからだ。

分かっている。分かっているのだ。安易な救いは許されない。僕は精神を病んでいる。でも、それでも、僕は生きる道を選んだのだ。 だから、もし、『幸せになれるから好き』が真なのだとしたら、僕の泡は、橙色のヒビは、汚い自己愛でしかないのだろうか。

とすれば、空に大好きなヒビを見つけたとき、僕は一体何を思えばいいのだろう。

夜、昼間の温もりがかすかに残る部屋でベッドに倒れて、まどろみの中で、僕はずっと考えている。 深い、深い青色の空に、ヒビとなって広がる橙色のことを。二度と戻らない、ずっと幸せで、とても大切な、自身の手垢にまみれた過去のことを。

今日、就職先を決める

就職と子供心

就職活動も終わり、長かった大学生活も末端が見えてきた。モラトリアムは閉じて、人は地を蹴って進む。蝋で固めた翼を広げて、それが溶けぬ夜のうちに、月へ向けて飛び立たんとするのである。

私は私自身に問いかける。

――夏が過ぎて冬を越えて、桜の蕾が何度膨らんでも、
私の中の子供心は、そのままでいてくれますか。


実のところ、私にとって、就職自体は特別なものではないのだ。

私にはやりたいことがある。思想がある。人間一人が為せることには限界があるから、企業という組織と協力して目的を達成したいと考えている。よって、就職自体が嫌とか、大学生活が失われてしまうという悲しみとか、そんなものはほとんど考えたことがない。 働くのが嫌だという言論の裏に動物的な滑稽さすら感じるほどに。『働く』とは人間社会と関わっていくということであり、すなわち『働く』の反対は『何もできない』である。『何もできない』ほど苦しいものはない。社会を恐れ布団で悶えて死んでいくくらいなら、いっそ外患誘致罪にでもなって極刑を課せられたほうがずっと良い。

ベンチャー企業でのアルバイト経験もあって、少なくとも志望している業界の範囲においては、社会がどのように動いているのか人並み程度に理解しているつもりだ。内定も複数いただいているので、後はどこが一番私の思想に適しているのか、各社インターンで見聞きした実情を加味しながら、自身と相談して決めるだけになっている。 ぶっちゃけた話、給与にもさほど興味がない。必要量だけあればよい。だが、一般に給与が高いということはそれだけ企業が社員を意識しており、つまり私の思想の実現というゴールへの近道である可能性が高いというだけの話だ。

さて、このように先へ進もうとする心がある一方で、私はその隅から、儚げに隙間風が吹くのも感じている。綺麗に張ったはずの障子に穴が空いているような、滑らかに積もった雪の斜面の中から雪を押しのけて狐が顔を出すような、むず痒くも可愛げのある、不思議な風だ。

その名を、子供心という。


コントロール不能な存在、つまり子供というのは恐怖である。同時に、何物にも代えがたい煌めきでもある。天真爛漫で、悪戯っぽく、疲れを知らぬほど活動的である。 それこそが子供の特権であり、存在意義に他ならない。仮に子供が全て理知的であったなら、人類はとっくの昔に絶滅しているだろう。人間にとって、理知の究極は自殺であるからだ。 大人が何故死なずに生きていられるのかというと、子供心があるからである。姿形は大人になろうと、その精神性、三つ子の魂百までとも呼ばれる心的本質は簡単には消えない。だからこそ死なずにいられるのである。煌めきとはそういうものだ。

だが、安心はできない。もしそれが失われ、現実と理知が直接対決しなければならなくなったとき、人間というものは自動的に負けてしまう。この世は不平等で、理不尽で、安易な救いを認めないのだから。そして、この世で暮らすうち、様々な要因で子供心は擦り減らされていく。例えば、私は大学三年生の夏、三日三晩一切動けなくなったことがある。あらゆる時間軸におけるこの世の万物に絶望し、食事も喉を通らず、ああ自分はここで死ぬのかとすら思ったものだ。 あの時、私の子供心は死にかけていたのである。幸い、当時は夜にだけ子供心が戻ってきてくれたおかげで何とか持ち直せた。

だが、同じことがもう一度起こったとしたら、残念ながら、私は次こそ死ぬかもしれない。子供心が減ることはあっても、もはや増えることはあるまい。私は既に子供ではないのである。私が医師から定期的に処方されているスルピリド錠が、客観的に私の状態を裏付けてくれるだろう。 故に、私が――いや、私の子供心が――危惧するのは、就職というきっかけによって、その心が致命的なまでに磨り減ってしまうのではないかという点である。 私の精神は強靭ではない。思想の強さでは負ける気がしないが、その癖打たれ弱い。学問的に言えばHSS型HSPで、俗語で言えばヘタレである。 突っ込むのは得意だが突っ込まれるのは苦手だ。

そんな私が就職によって心を擦り減らすことは想像に難くない。しかし、私はむしろ就職を望んでいる。だからこそ、子供心は隙間風となって私の前向きな精神にぶつかってくるのである。 子供らしい、何とも健気な抵抗ではないか。私はこの子供心を大切にしたいと思う。一方で、就職以後の生活に私自身が耐えきれるのかはやはり疑問であった。


だからこそ、私は私自身に問いかける。

――夏が過ぎて冬を越えて、桜の蕾が何度膨らんでも、
私の中の子供心は、そのままでいてくれますか。

そう尋ねる私の声を聞いて、あどけない私の心は、くすくすと笑いながら次のように返すのだ。

――さあね。それが分からないからきっと、僕は子供でいられるんじゃないかな。

この回答に対して私が次の質問を投げかけられるのは、当分先のことになりそうである。 そして、私はひとまず就職先を決めなければならない。だがこれは、子供心に対する私の思案に比べれば、赤子の手を捻るくらいに簡単なことなのだ。

Jitsi Meetの通知を左下から左上に変えるパッチ

Jitsi Meetの通知の位置がコントロールと被る問題

リモートワークが話題になるよりも前から、別のドメイン1で友人とのビデオ会議用にJitsi Meet2を運用していたのですが3、最近友人から「通知が左下に出るんだけど、コントロールと被って使いづらい」という話を聞きました。私は正直気にならなかったのですが、確認してみると……。

通知がコントロールを隠してしまう

通知がコントロールを隠してしまう

フムム、これは確かに使いづらいかもしれない4。しかし、通知の位置を修正するくらいならササッとできそうね。

というわけでスタイルをインスペクタで確認しつつ、パッチを作ってみました。雑ですが、とりあえず位置を変更できるはず。 Jitsi Meetをインストールした環境で、以下のコマンドを実行すればパッチを適用できます。私は jitsi/web のコンテナ上で試しました。バージョンは4384-1で試しています。

sed -i 's/.cjMOOK{bottom:calc(calc(40px + 24px))!important}/.cjMOOK{bottom: auto !important;top: 20px;left: 20px !important}.mIBKA,.gpUwQx{bottom: auto !important}/g' /usr/share/jitsi-meet/css/all.css

あらあら、!importantがギラギラと光っていますね。
兎にも角にも、適用するとこうなります。

通知の改善後

通知の改善後

通知を左上に移動させました。また、左からの間隔も少し狭めに修正しています。 雑な改善なので、複数通知がある際は上図のように重なって若干見た目がおかしくなっていますが、まあ実用上は問題ないと思います5

同じような悩みをお持ちの方は是非お試しあれ。お時間がある方は、もうちょっと改善してみると綺麗な表示にできるかもしれませんね。


  1. *.clvs7.com ではないです。念の為。別のサーバーで稼働させています。 ↩︎

  2. 詳細は https://jitsi.org/jitsi-meet/ 。インターフェースのソースコードは https://github.com/jitsi/jitsi-meet 。ライセンスはApache License 2.0。 ↩︎

  3. 最近、Zoomの脆弱性が騒がれた結果「Jitsi Meetはいいぞ!」という風潮が一部で出てきているようですが、それよりも前から注目していただけに何か嬉しいような寂しいような……。とりあえず、えっへん。 ↩︎

  4. 私は無意識のうちにOKを押して消していたので気にならなかったっぽい。 ↩︎

  5. 多分ね。 ↩︎