為了達到這些效果,這些比賽中使用的演示程序通常有以下四個特點:
⑴使用匯編語言:制作壹個簡單的DEMO,用高級語言寫起來很容易,但是由於壹些限制,速度並不理想。使用匯編語言優化可以充分發揮和控制軟件和硬件的力量。
(2)多聲道音樂。
⑶突破傳統畫圖能力:在PC上,標準VGA在320×200的分辨率下只能顯示256色,內存頁面少,造成很多限制。DEMO經常使用壹種特殊的模式,通常稱為X模式,在這種模式下可以達到320×200 256多色內存頁面。
⑷實時操作:在這些DEMO中,大多是3D矢量空間,虛擬現實部分,或者很多電腦著色效果和變形。由於實時操作,壹個DEMO雖然不大,但是可以播10-15分鐘。
DEMO就像編遊戲壹樣。任何DEMO都需要程序員,美工,程序員。演示通常以演示團隊的形式進行編譯。
演示組通常包括:
⑴領導組織者:整體策劃領導團隊。
⑵程序員編碼員:設計演示程序,他們是演示的核心人物,優秀的編碼員可以寫出強大精致的演示引擎,壹個優秀的編碼員+優秀的優化編譯器+UPX shell足以控制64kb以內的任何實時圖形演算程序。
⑶作曲音樂人:Tracker/Sound/Music,制作音樂並不是簡單的生成mp3文件那麽簡單,因為64kb並不能存儲壹個波形文件,這時候通過實時波形演算合成聲道。基本上成熟的團隊都會自己編寫FM發音引擎,和8位紅白機的音樂是壹樣的。壹個好的錄音師可以在簡單的FC遊戲中使用波形合成產生和mp3壹樣的音效,而壹個完全不懂FM合成的錄音師可能只會讓團隊的FM引擎發出“嘟嘟”的正弦波。
⑷圖形藝術:主要負責demo的構思和圖片素材的建立。在設計畫面的同時,他還要考慮色彩的位深度、貼圖的大小以及畫面的特效,以便更好地提高cpu和顯卡的處理效率。
⑸其他人員:負責BBS和協助等。
簡而言之,電腦上的demo就是軟件實時生成的動畫音樂或遊戲。生活中常見的壹個例子是,顯卡測試時電腦播放的3D動畫,是通過軟件與顯卡實時計算生成的。演示比賽是限制軟件的大小,然後比較誰產生的效果更有創意或更酷。國際演示比賽見下面的“擴展描述”。