你第一款玩的電腦遊戲是什麼呢?是金庸群俠傳、仙劍奇俠傳、天使帝國,還是三國志、暗殺希特拉、波斯王子,甚至是同級生、聖少女戰隊呢?不過相信對大部份人來說,第一個玩的電腦遊戲應該是接龍才對呢!以下我們就由接龍講起,看看 MS Windows 對整個 PC 遊戲界的貢獻:
1990 年的 Windows 3.0 開始,微軟引入了接龍遊戲 Solitaire,Windows 才開始慢慢受到人們的注目,尤其是受辦公室人士鍾愛。微軟解釋引入接龍遊戲原因是想用家更習慣這個圖像介面,以及令他們「學懂如何用 Mouse」。不過其實這遊戲影響 PC Game 的發展很深遠
▲接龍與踩地雷預載在電腦內可直接玩,可謂 Windows 孖寶。
CD Games\Sango2
play
也許 CD Games 這個 Command 就是你在童年打得最多遍的指令,當年一開機就是進入一個像 Command Line 介面的 MS-DOS,要前往一個路徑、要開啟一個程式,每個操作都要打指令進行,當然要玩 Game 亦都不例外。而在 WIN 3.o 裡面玩接龍,你要玩 Game 只需要 Click 一下 ICON 就可以了,然後遊戲在 Windows 底下執行,而並非像 MS-DOS 的遊戲那樣要開住全螢幕。當年很多上班族的人邊用 MS Office 處理文件邊玩接龍,主管行過時立即收起接龍進行其他工作,這樣子用戶慢慢習慣了原來打機也可以「多工」
▲MS DOS 的指令,你還記得幾多個呢?
【教學】iPad / iPhone 運行 Windows XP 實試 PC 模擬器玩《小朋友齊打交 2》 ChatGPT Windows 預覽版推出 免費用戶要再等 MS Word 檔案改錯名可致文件被刪除 工程師:關閉 Word 前先手動儲存
以前要得打 DOS PC 遊戲,你必需要是一個記憶體高手,因為以前 MS-DOS 管理記憶體分傳統 640K記憶體、UMA、HMA、EM、XMS 幾大類,早前一些遊戲軟件寫得不太好,往往需求很多傳統記憶體。
例如《天使帝國》,玩家要用盡所有方法把使用記憶體的 Driver 減少常駐,例如不裝 CD-ROM Driver 、找一些公用但用 Ram 少的 Mouse Driver ,用家為了不同的遊戲,使用不同的 Config 去 Boot 機。幸好有一些記憶體管理軟體如 QEMM386 幫用家搬動記憶體解決問題(不過速度會變慢少許)。再後來 DOS/4G Protect Mode 容許開發者再不需深奧的 Coding 可簡單取傳 XMS 記憶區,自此 Config File 不用再特別編寫,只需保持 500KB Free 就可以了
▲當年記憶體很吃緊,為了 640K 記憶體要分好 High Memory、有 EMS、無 EMS 的開機 Menu。還要為大食遊戲例如天使帝國,使用 QEMM 載入至擴展記憶體。
。
為甚麼我的遊戲沒有聲 ? 為甚麼我的顏色很怪? 打 DOS PC Game 的玩家除了記憶體高手外,還是一個設定硬件地址的高手。首先你要懂得 Load 入合適的 Driver ,然後在 Game 內設定你的 VGA Card 、音效卡的 Port , IRQ, RMA 及 Joypad 的地址一堆又一堆的數字… 不過 Windows 95 的 Direct X / Direct input / 你再也不用麻煩這一些,硬件都是 Plug and Play,不用再記甚麼 IRQ 的東西。
▲最早期的 PC GamePad,那時的 COM Port 種類還真多。
【教學】iPad / iPhone 運行 Windows XP 實試 PC 模擬器玩《小朋友齊打交 2》 ChatGPT Windows 預覽版推出 免費用戶要再等 MS Word 檔案改錯名可致文件被刪除 工程師:關閉 Word 前先手動儲存
如早前提及,在 DOS 打 PC 遊戲非得要全熒幕執行,因為以前 CPU 速度不高,跑一些遊戲已經很吃力了。久而久之電腦用家覺得這是正常得。到 Windows 95 的出現,電腦科技開始一日千里,高速的處理器、記憶體,開始超過一般電腦遊戲所需求,容許用家可以邊打機邊回覆 ICQ / MSN /看 Email 等等,電腦遊戲正式進入多工年代
既然 Windows 打機有以上的好處,為何早在 Windows 3.0 大熱時,PC 遊戲好像沒有幾款在 Win 上呢 ? 當時,遊戲開發商絕大部份都會選擇推出 MS-DOS 平台的遊戲,原因是 MS-DOS 可以直接存取顯示卡、鍵盤、滑鼠、音效卡及其他硬件的權限,而 Windows 卻因保護問題而限制了存取,令遊戲無法發揮硬件效能。
於是微軟在 Windows 95 推出後已立即想解決此問題,成立名為 DirectX 的方案小組,讓遊戲可以良好地運用硬件資源,目的是令遊戲開發商肯轉移在 Windows 推出遊戲。初期於 Win95 Release 2 推出時,DirectX 因為未能發揮到最大的效用,直至後來不斷改良後來終於成為電腦遊戲的主流。
▲當年上網還未普及,DirectX 也是經由 CD 安裝。
【教學】iPad / iPhone 運行 Windows XP 實試 PC 模擬器玩《小朋友齊打交 2》 ChatGPT Windows 預覽版推出 免費用戶要再等 MS Word 檔案改錯名可致文件被刪除 工程師:關閉 Word 前先手動儲存
對於一般玩家來說,其實對 DirectX 沒有深入的了解。大概只是認知它為一個遊戲用的東西,以及新版本可能有更多遊戲特效等。其實 DirectX 跑出,當中比較主要的兩個元件 – DirectDraw 及 DirectInput。
DiectDraw 可以直接存取及運用到顯示卡上的各種資源及功能,大大加速了電腦遊戲圖像的描繪,而且其記憶體管理員有助突破 VRAM 的界限,令各種圖像技術發揮出最大效果,讓開發者更容易比 MS-DOS 的遊戲能提供更多顏色。
而 DirectInput 就大幅簡化了遊戲裝置及週邊的安裝,包括手掣、JoyStick、軚盤等。它的 Action Mapping 可讓程式不需要得知是哪種裝置,就可接收到其輸入指令,不再好像 MS-DOS 要 Set Port、Set IRQ 那樣麻煩。而配合上 Windows 95 的 Plug and Play 功能,更方便了遊戲開發商及玩家。
▲DOS/V 版本的同級生 2,圖像已很漂亮。
▲JWIN 版本的同級生 2,卻能描述出更多圖像顏色,漸變也更柔和。
雖然 DirectX 成功帶出 Windows,不過接下來亦要迎來另一對手 – OpenGL 的挑戰。OpenGL 是支援 Windows、Linux、Mac OS 等跨平台、跨語言的 API,由多間公司組合而成的架構評審委員會維護,微軟也曾經是創立成員之一。雖然 NVIDIA 當年的顯示卡很積極的支援 OpenGL,不過對於遊戲開發者來說,能夠提供多方面的兼容性測試,仍是 DirectX 比較方便。所以很多遊戲在支援性上或是穩定性上還是以 DirectX 配合 Direct3D 表現較佳。及後微軟更推出家用主機 Xbox,它能夠良好地支援到 DirectX 的遊戲,對於開發者移植遊戲易如反掌,所以到目前為止 Direct3D 地位仍不被動搖。
DirectX 與 OpenGL 在 90 年代之爭其實一匹布那樣長,有興趣可以看看:
http://programmers.stackexchange.com/questions/60544/why-do-game-developers-prefer-windows
【教學】iPad / iPhone 運行 Windows XP 實試 PC 模擬器玩《小朋友齊打交 2》 ChatGPT Windows 預覽版推出 免費用戶要再等 MS Word 檔案改錯名可致文件被刪除 工程師:關閉 Word 前先手動儲存
最後,相信很多 Apple 用家都會關心一個問題,就是為何 Mac OS 的遊戲總比 Windows 少很多。其原因其實也是與 DirectX 有關,因為 Mac OS 可沒法提供到微軟的 DirectX,對於遊戲開發商而言,遊戲總是開發在使用者比較多、遊戲支援比較足的 Windows 平台優先,其後再考慮是否向 Mac OS 進行移植。亦可以見得為何微軟那樣重視 DirectX 的開發,因為電腦遊戲這個領域,Windows 是決不可以輸。隨著 Mac 機近年越來越受歡迎,部份開發商也開始為遊戲推出 Mac OS 版本。現時想在 Mac OS 玩 Windows 遊戲,唯有先用 Boot Camp 來運行。
參考資料:
https://en.wikipedia.org/wiki/DOS
https://en.wikipedia.org/wiki/DirectX
https://en.wikipedia.org/wiki/OpenGL
http://home.gamer.com.tw/creationDetail.php?sn=1821582
http://www.oocities.org/tokyo/towers/3692/game_intro/dokyu_jwin95.html
【教學】iPad / iPhone 運行 Windows XP 實試 PC 模擬器玩《小朋友齊打交 2》 ChatGPT Windows 預覽版推出 免費用戶要再等 MS Word 檔案改錯名可致文件被刪除 工程師:關閉 Word 前先手動儲存