クラウドネイティブなデータ可視化ツール「Grafana」で、なぜかWebAssembly化したDoomがプレイ可能に。開発元が社内ハッカソンで実現
今回は「クラウドネイティブなデータ可視化ツール「Grafana」で、なぜかWebAssembly化したDoomがプレイ可能に。開発元が社内ハッカソンで実現」についてご紹介します。
関連ワード (古典、多様、方法等) についても参考にしながら、ぜひ本記事について議論していってくださいね。
本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。
クラウド上で実行される多様なソフトウェアのログやメトリクスを受け取り、運用管理のためのダッシュボード上で可視化するツールとして定番のソフトウェアが「Grafana」です。
このGrafanaの開発元であるGrafana Labsは、Grafanaのダッシュボード画面上で一人称ゲームの古典とも言えるDoomをプレイ可能にするソフトウェア「Grafana Doom」をオープンソースで公開しました。
Can it run Doom?
To mark the 25th DOOMiversary of #Doom64, you can now play Doom on Grafana thanks to time series panels and the live streaming feature. More on the blog:https://t.co/hUtC3LEcZI— Grafana (@grafana) March 31, 2022
具体的には、Grafanaにログデータを送り込む代わりに、WebAssembly版のDoomの実行画面をデータソースとしてメトリクス化し、Grafanaへリアルタイムにメトリクスをストリーミング。Grafanaは受け取ったストリーミングデータを管理画面上でレンダリングする、という仕組みでGrafanaのダッシュボード画面上でDoomをプレイ可能にしています。
実際にWebブラウザ上でプレイ可能なDoomfanaのフルレゾリューション版とハーフレゾリューション版を公開しています(リンクをクリックするとプレイ可能な状態でGrafanaが起動します)。
プレイしてみましたが、手元のそこそこ高性能なデスクトップPC(第11世代Core i7 CPU+32GBメモリ+RTX3060Ti GPU)でもフルレゾリューション版だとかなり重く、ハーフレゾリューション版ではサクサク実行できました。
社内ハッカソンで開発、リック・アストリーの動画再生に触発
このDoomfanaを紹介した同社のブログ「Can Grafana run Doom?」によると、GrafanaでDoomを実行可能にしようと考えたきっかけは、以前発表された、Grafana上で監視データとしてリック・アストリーのミュージックビデオ「Never Gonna Give You Up」の再生に成功したことに触発されたから、とのこと。
ログデータなどを受け取り、それをグラフなどに可視化して表示するソフトウェアとして使われるGrafanaで動画を表示するには、動画を1フレームずつリアルタイムに走査線に分解し、走査線のパターンをデータ化してGrafanaにログデータとしてストリーミング、Grafana上でリアルタイムにレンダリングする、という方法で実現されていました。
これをRGBに分解して精細に行うことでカラー動画の再生を可能にする手法も編み出されました。
動画が再生できるのなら、ゲームもできるのでは? こう考えた社員数人が社内ハッカソンで開発を進めたのが、今回のDoomfanaの実現につながったとのことです。
リアルタイムにデータを受け取って可視化できる監視ツール、その可能性は無限ですね……。