6

コンパイルされた64kbのexe ファイルで、これらのプログラムが、一致する音楽を備えたクレイジーなビジュアルを生成できるのはどうしてでしょうか?

例: Ars Nova By Phantom Lord (デモ実行中の YouTube ビデオ)

このプログラムのサイズはわずか64kbです。彼らはどうやってそれをしたのですか?

彼らは、DirectX 内で何らかの既存のオブジェクト、シェーダーなどを使用していますか?

彼らはどんな言語を使用していますか? このようなものへのある種のガイドはありますか?

  • 編集: 別の驚異的なデモ。どのように?

    http://www.scene.org/file.php?file=/demos/groups/farb-rausch/fr08_final.zip&fileinfo

  • 編集: より多くのデモシーンのもの。

    このようなものを作っているグループへのリンクをいくつか見つけました.werkkzeug1という名前の製品といくつかの圧縮およびオーディオツールをリリースしましたが、それがどのように可能かはまだわかりません. 彼らは96kbでゲームを作った.

    製品

4

4 に答える 4

5

リンクしたような 64K のデモは、手続き的にテクスチャとモデルを生成することでスペースを節約します。モジュール ファイルは通常、音楽に使用され、ほとんどの楽器はコードで合成されます。

それが要点です。可能な限り、データを明示的に保存するのではなく、コードを使用してデータを生成します。(そして、それらが明示的に何かを保存する場合、それは非常に圧縮されます)。

次に、実行可能な圧縮プログラムやその他のトリックを使用して、コンパイルされたコード自体のサイズを最小限に抑えます。

残念ながら、デモがソース コードとともにリリースされることはめったにありません。Scene.orgでいくつかのデモ ソースのコレクションを見つけましたが、自分でチェックアウトしたことはありません。

私が知っている包括的なガイドもあまりありませんが、さまざまなトピックのガイドが Web に散らばっています。Hugi Magazineはそのような記事の良い情報源の 1 つです。特に、多くのデモ コーディング記事が含まれている特別版 #1をチェックすることをお勧めします。

于 2011-06-07T08:05:17.067 に答える
3

メインコード自体が、デモ内のテクスチャ、サウンド、およびすべてのオブジェクトを生成します。フラクタル、変形、(デモタイムラインで)すでに生成されたオブジェクトの広範な使用法、およびその他のいくつかの手法が、オブジェクトのコンパクトなアルゴリズムコーディングに使用されます。次に、exe-compressorsを使用してコードを圧縮します。また、コードサイズを最小化するために、非常に重要な手法がいくつか使用されています。

このあたりのサブカルチャーも参照してください。

于 2011-06-07T07:27:44.003 に答える
3

これはクールなデモであり、人々がまだこの種のことを行っていることをうれしく思います...しかし、「魔法」が働いているとは言えません。

オブジェクトの「DNA」に関しては、ここで詳しく説明する必要はありません。立方体、レースカー、チェスの駒、球形のビー玉、胴体。彼らは、よく圧縮するモデルを自由に選択できます...または、よく圧縮されない詳細を捨てることもできます。ここでは、期待の欠如やある種の仕様を満たすことは、彼らに有利に働きます. 3D ライブラリ内のオブジェクトをサイズで並べ替えて、「これは小さいけどかっこいいね。これを使おう」ということさえできます。:)

トリッキーになる場合は、コードのサイズをいじる方法がたくさんあります。これは興味深い読み物であることがわかりました:

http://www.muppetlabs.com/~breadbox/software/tiny/teensy.html

しかし、彼らがこれにそれほど夢中になっているとは思えません。彼らはおそらく、不必要な依存関係を避け、かなり低いレベルでコーディングしているだけです。常識と実行可能な圧縮により、サイズをかなり小さくすることができます。

http://en.wikipedia.org/wiki/UPX

このような音楽は通常「トラッカー」を使用して作成され、ファイルは MP3 よりも MIDI ファイルのサイズに近いサイズになります。再生ルーチンはかなり小さいです...これは「MiniFMod」と呼ばれ、XMファイルを再生でき、EXEサイズにわずか5Kを追加すると主張しています:

http://www.fmod.org/index.php/download#FMODMini

音楽との同期は、実際には技術的な問題ではなく、芸術的な選択の問題です。デモはおそらく一定の速度で実行されるように調整されています...そして音楽の再生には毎回同じ時間がかかります.

于 2011-06-07T07:51:56.510 に答える