1 ポイント 投稿者 GN⁺ 2024-02-12 | 1件のコメント | WhatsAppで共有
  • Bitwise Liminalは、256バイトのコードで作られたウェブベースの短編映画で、Lovebyte Party 2024で披露された作品
  • 物語は、ガレージセールで見つけた古いVHSテープに「Bitwise Liminal」というラベルが貼られているという設定から始まる
  • 再生したテープには静的ノイズしか映らないが、その後、語り手は不穏な夢とテープへの執着に悩まされる
  • 調査の末、そのテープがデジタルバックアップであることが判明し、特殊なソフトウェアで復元したデータは256バイトのプログラムだった
  • ウェブブラウザでそのプログラムを開くと夢に似た光景が現れ、語り手はもはや眠ることなく、それを見つめ続けるようになる

256バイトコードで作られた短編映画

  • Bitwise Liminalは、「A Short Film in 256 Bytes of Code」という副題を持つ短いコードベース作品
  • Lovebyte Party 2024で披露された出展作として記載されている
  • 古いVHSテープを発見した後、その中に隠されたデータを復元してウェブブラウザで実行するという物語形式を取っている

VHSテープからブラウザへと続く物語

  • 語り手はガレージセールで、「Bitwise Liminal」とシャーピーで書かれた古いVHSテープを見つける
  • テープを再生すると、画面には静的ノイズしか映らない
  • その後、生々しく不穏な夢を見るようになり、その奇妙なVHSテープのことが頭から離れなくなる
  • 調査の結果、そのテープがデジタルバックアップであることを知り、特殊なソフトウェアでデータを復元する
  • 復元されたデータは256バイトのプログラムで、語り手は震える手でそれをウェブブラウザで開く
  • ブラウザで見た光景は語り手が見ていた夢を思い起こさせ、最後はもう眠る必要はなく、ただ見続けている状態で終わる

1件のコメント

 
GN⁺ 2024-02-12
Hacker News のコメント
  • これは印象的で、本物の映画のシーンのように見える。しかもこれが 256バイトに収まっていると考えると、私たちが毎日使っているものがどれほど肥大化しているか、そして今のブラウザがどれほど強力なのかを改めて見せつけられる。
    それでも、最近 HN で共有された「the Sheep and the Flower」のような 8K デモ https://news.ycombinator.com/item?id=39121101 や、実際の YouTube 動画 https://www.youtube.com/watch?v=R1NagZN2kjY をリメイクした「One of those days」https://www.pouet.net/prod.php?which=75790 / YouTube 動画 https://youtu.be/8T_Um-cw0Wc のほうがさらに驚きだった。
    256バイト映画よりはずっと大きいが、グラフィックと物語をはるかに多く伝えている。

  • 私たちのような普通の人向けに、各部分を分解して説明した注釈付きバージョンはあるのだろうか?

  • 最近の関連記事: Cross My Heart – A Frogger Demake in 256 Bytes of HTML/JS - https://news.ycombinator.com/item?id=39336677 - 2024年2月、コメント44件
    通常、後続投稿は重みを下げるが(https://hn.algolia.com/?dateRange=all&page=0&prefix=true&query=follow-up%20downweight&sort=byDate&type=comment)、今回は (a) 投稿者が作者本人であり、(b) 作品が素晴らしいため、https://news.ycombinator.com/showhn.html の基準に従って Show HN に変更し、そのままにした。

  • これが「短編映画」なら、私は今しがた自分の新作小説を読んだことになる。

    • t+=.1t+=.01 に、99869e3 に変えれば、依然として 256バイト以内で約45秒のループを作れる。ただし画面下部の一部が切れるだろう。
  • 些細な点だが、onload イベントだけを使うために canvas の中に svg を埋め込むのは初めて見た。この文脈では canvas が bare id で参照されていて、奇妙でもあり格好よくもある。

    • どうやら script タグを使うよりも、svg onload に入れるほうがほんの少し小さくなるらしい。
      canvas onclick イベントに入れれば、さらに少し容量を節約できるかもしれない。
    • なぜそれが許可されているのか気になる。JavaScript でそんなことができるとは知らなかった。
  • 一般的な 1KB ゲームジャムのように zip、gzip、サフィックス処理までした結果を提出し、アセットは基準から除外する方式ではなく、本当に純粋な256バイトだという点があまりにもすごい。敬意を表する。

    • これもすごい: https://linusakesson.net/scene/a-mind-is-born/
    • ほとんど不可能に近い狂気じみた挑戦で、実際に動くと魔法のように見える作品だ。
    • 展開器をエントリに含めることはいつでも可能だ。PNG ブートストラップは JavaScript デモシーンでは昔からかなり人気があり、1KB 以上のデモでは効果が出始める。
      もっと小さいサイズには別の選択肢もあるが、256バイトのデモは通常、展開器を入れるには小さすぎる。ただ、アセットを基準から除外する点には同意する。
    • そういうコンテストでは import gameassets も許されるのか?
      ちなみに Python では import GOTO が動く :)
  • この人の作品にはいつも度肝を抜かれる。使っているツールの説明はこちら: https://frankforce.com/tools/
    マイクロアニメーションブログ Dwitter での作品はこちら: https://www.dwitter.net/u/KilledByAPixel
    YouTube での説明: https://www.youtube.com/watch?v=HV7Dmo277Rs

    • その「YouTube での説明」は、実際には Dweet がどのように動作しているのかを説明してはいない。作品自体は驚異的で、見るのも楽しかったし、本人によるデモを聞けるのも楽しみだが、詳細な動作原理解説を探している人にとっては、その動画は期待外れだろう。
  • こういうものを見ると、生命全体が本当に DNAにエンコードされ得るのだと思えてくる。ヒトゲノムを gzip で圧縮すると約4MBほどだという文章を読んだことがあるが、直感的には人間を表現するには小さすぎるように見えた
    しかし256バイトからこうした動きが生まれるなら、私の直感が間違っているのは明らかだ

    • 4MBあれば、2^(3.2 * 10^7)個の可能な状態を区別するには十分だ。その状態のうち、ごく一部のごく一部のごく一部のごく一部だけを機能する生命体として解釈できる 解凍器 があるとしよう
      地球には約1兆種が存在しhttps://www.nsf.gov/news/news_summ.jsp?cntn_id=138446、現在存在していない潜在的な種がその1兆倍あり、各種に1兆通りの変異があると仮定する。そこに余裕を見てさらに1兆を掛けても、Wolfram Alpha 基準https://www.wolframalpha.com/input?i2d=true&i=Divide%5BPower%5B2%2C3.2Power%5B10%2C7%5D%5D%2Ca+trillion+trillion+trillion+trillion%5D++a+percent+of+a+percent+of+a+percent+of+a+percentで、およそ10の1000万乗程度の誤差の余裕が残る
      ここでいう「およそ」は、山脈が粗い紙やすりとおおよそ似ている、というような意味だが、あまりに丸められているので丸めずにはいられない、という意味でもある
    • DNAだけで生命体を複製できるというのは誤解だ。新しい生命体が形成されるには、親から受け継がれる胚の生物学的基盤、つまり生物学的インフラも必要になる
    • 数日前に HN に上がっていた記事の中に、DNAをコード、細胞をコンピュータや機械と見なす視点に反対するものがあった
      https://www.nature.com/articles/d41586-024-00327-x
    • 真空中でDNAだけから生成された生命は、おそらくかなり退屈なものになるだろう。生命全体には相互作用する 環境 が必要で、今のところそうした環境は1つしかないが、単一のものはうまく圧縮されない
      また Mandelbrot 集合をもう一度見れば、かなり単純なプロセスの中にも膨大な情報が含まれている
      最後に、この256バイトの印象を少し下げてみるなら、それを支えるハードウェアとソフトウェアが必要だという点も考慮すべきだ。この256バイトが C64 上で同じ幻影を生み出すことはないだろう
    • 4MBの 乱数生成器シード かもしれない
  • これを見たら、私の 5560U のシステムファンが100%まで上がった :-)

  • この短編映画で何を見ているのか説明してもらえるだろうか?白黒アニメーションで箱が動き、ノイズ混じりの線が見えるのは分かるが、意味がよく分からない

    • それこそが映画だ
      驚くべき点は ファイルサイズ がどれほど小さいかだ。256バイトである
      どれほどすごいか説明すると、映画全体が最初のフレームのスクリーンショットより約58倍小さい。1.44MBのフロッピーディスク1枚に、この映画全体を5,000回以上入れてもまだ空きが残る
      通常の動画は、複数の画像と、画像のどの部分がどこへ移動するかを示す情報で構成される
      しかしこの映画には画像データがない。時間に応じて明るさの異なる箱を描く、少しの数学が入っているだけだ