在宿霧待久了,台灣家長問我最多的問題裡,一定有這一句:「小孩整天打電動,怎麼辦?」
前幾天我把 games.sop.com.ph 從頭玩了一遍——SOP 國際語言學校放上網、免費開放的三款 3D 遊戲,瀏覽器直接執行。我本來以為是放著好看的宣傳小遊戲,玩到一半忍不住打開開發者工具,結果比遊戲本身更有意思。
先講最反直覺的那件事
網站首頁寫得很白:做出這三款遊戲的人,不是專業遊戲工程師。
以前想做一個能跑的 3D 遊戲,你得先撐過 C++、圖學和數學矩陣,多數人第一個月就放棄。現在卡住人的變成另一件事——你能不能把腦子裡的東西講清楚。你得說得出「I want the terrain to generate procedurally with smooth noise」,對面才知道你要什麼。
在這裡,「學英文」跟「學做遊戲」不是兩條路,是同一條。

我實際玩了:三款遊戲,三種死法
體素世界:地形是算出來的,不是畫出來的
第一人稱方塊建造。左上角顯示這張地圖有 16,233 個方塊,全部由演算法即時長出來,每次進去都不一樣。我把自己用方塊一層層疊到樹冠上方往下看——那片起伏的谷地,沒有一格是人手工擺的。

方塊世界:六分鐘就天黑,天黑就有東西來找你
這款有血量、飢餓、經驗值、生物群系跟礦石。原始碼裡寫著 DAY_SEC=360——現實的 6 分鐘,等於遊戲裡的一天。我第一次死是自己從高處跳下來摔的(落下傷害是真的),第二次是天黑後被殭屍打死。
有個細節我很喜歡:背景音樂是即時合成的,一個音檔都沒有。夜晚那段刻意用了小二度和三全音——就是要讓你坐立難安。

地下城獵手:站著不動,是會出事的
第一人稱射擊,主角 CALEB 身邊跟著一隻會動的 3D 夥伴,四種環境加晝夜切換。我為了取景站著沒動,沒多久就跳出「倒下了」——敵人會自己找上門。

打開開發者工具之後,數字比文案誠實
首頁載入只發出 2 個網路請求:網頁本身,加一個樣式表。第三方 0 個、Cookie 0 個。三款遊戲各自是單一 HTML 檔,624 KB、673 KB、1.7 MB,three.js 引擎直接內嵌——載入之後,整段遊玩期間我再也沒看到任何一個網路請求。
方塊世界按下「儲存遊戲」會寫進瀏覽器 localStorage,一樣沒離開裝置。隱私權政策把理由講得很直接:使用者可能包含兒童與青少年,所以採取最直接的保護方式——完全不收集個資。沒有註冊、沒有留言、沒有上傳,也就沒有外洩的可能。
順帶一提:網站沒裝 Service Worker,斷網就打不開,別當成離線工具。
真正的教材,藏在「技術英文」那一段

render、voxel、procedural generation、collision detection、mesh、animation clip、raycast、noise function——八個字,全部出自這三款遊戲的真實原始碼。
跟背單字表差在哪?背 render 這個字本身沒意義;但當你知道它就是「把 3D 資料變成螢幕上的像素」,而你三分鐘前才在遊戲裡看著那件事發生,這個字就黏住了。語言教學把這個叫 CLIL——不是為了學語言而學語言,而是拿語言去學別的東西,語言自己就會了。
但最值得給孩子看的,其實是「素材來源」那一頁

three.js 是 MIT 授權,CALEB 的 3D 模型是 CC0 公有領域,原始作者 Tomás Laulhé、修改者 Don McCurdy,一個都沒漏。CC0 根本不要求標註,網站還補了一句:不被要求時仍然致謝,才是真正的尊重。
下載區更直白。教你怎麼換成自己的音樂之後,緊接著一段警告:別放流行歌曲、電影配樂或其他遊戲的配樂再散布出去,那是明確的侵權;然後給了三個免費又合法的來源。
這段不是法務文件,是數位公民教育。孩子在網路上做東西遲早會撞上授權問題,在出事之前先學會,比出事之後再處理便宜太多。
那句該換掉的問話
玩家、修改者、創造者。第一階段是消費別人做的東西,第三階段是做出原本不存在的東西。過去這段路要走十年,現在只要幾個月——前提是你講得清楚自己要什麼。
所以下次孩子又抱著平板不放,也許可以換個問法:不是「你玩多久了」,而是「你想不想自己做一個?」三款遊戲都在 games.sop.com.ph,開網頁就能玩,不用註冊。








