Game

用「純SQL」作仿《Doom》遊戲!僅150行程式碼:30FPS運行

近日,一位程式設計師利用「純SQL」建構了一款類似《Doom》的多人第一人稱射擊遊戲,名為DOOMQL。

遊戲僅以約150行Python程式碼實現,雖然在軟體架構上有所限制,但運行效果令人驚喜,幀率可達約30FPS。

DOOMQL的靈感來自Patrick Trainer的DuckDB-DOOM項目,後者同樣嘗試用SQL建構類似《Doom》的遊戲,但使用了JavaScript進行渲染和輸入處理。

相較之下,DOOMQL實現了真正的「純SQL」遊戲,不僅支援多人模式,還用SQL處理渲染和輸入,解析度可達128×64像素。

開發者Lukas Vogel表示,DuckDB-DOOM中使用JavaScript的部分“感覺像是作弊”,而他自己的作品在性能上也更為出色,幀率遠高於DuckDB-DOOM的8FPS。

Vogel也是資料庫效能公司CedarDB的共同創辦人,他在一個月的育嬰假期間完成了DOOMQL的開發。

遊戲的架構簡潔而巧妙:狀態儲存在資料庫表中,渲染透過SQL視圖實現射線投射和精靈投影,遊戲循環由一個小型shell腳本驅動,每秒執行SQL檔案約30次,而客戶端則由約150行Python程式碼組成,負責輸入輪詢和查詢資料庫以取得3D視圖。

目前,DOOMQL的程式碼已在GitHub上開源,玩家可以使用Docker和Python在本地運行遊戲。 Vogel計劃在未來對遊戲進行改進,包括添加強化道具、多種武器、優化精靈細節層次系統、改進客戶端以及加入AI對手等。

來源

延伸影片閱讀:  
Previous post

NVIDIA Blackwell Ultra 在全新 MLPerf Inference v5.1 推理測試創下紀錄

Next post

This is the most recent story.

The Author

kai

kai