LABO 編程,從入門到收購廢紙皮.....

LABO 編程,從入門到收購廢紙皮.....

作者:歐剃

在去年,全球知名撲克牌生產企業任天堂憑藉 Nintendo Switch 主機又大火了一把,首發的《塞爾達傳說:曠野之息》、《超級馬里奧:奧德賽》分別獲得美國《時代》雜誌評選出的「年度十大遊戲」的冠亞軍,可謂大獲全勝。

而今年,任天堂又搞了個大新聞,開發了一套名為 Nintendo Labo 的破紙皮,給 Switch 帶來了更加豐富獨特的體感遊戲體驗,有些人評論說這貨就像是種「魔術」,還有人說它能吊打索尼微軟的最新科技……

「又一次,任天堂用一個成本並不高、本身也非前沿的技術的 Labo 產品,告訴世界,遊戲創意本身比技術要重要的多了。」 —— 科技媒體 PingWest 品玩

喂,我讀書少,你不要騙我啊!這個 Labo 到底是個啥,真的這麼牛逼?

#你從沒van過的「船新」紙模

Nintendo Labo 是任天堂開發的一系列手工DIY紙模套件的總稱,套件里包含紙模所需的各種零件和一個任天堂 Switch 平台的配套遊戲軟體。組裝完成後的紙模可與 Switch 的 Joy-Con 手柄以及本體裝配在一起,組合成名為 Toy-Con 的玩具套件,再配合相應軟體進行體感互動遊戲。

2018年4月20日發售的第一批 Labo 套件包含兩款不同的紙模包:一是「機器人套件」,能打造一副簡單的穿戴式體感設備,讓玩家大屏幕上體驗駕駛高達的感覺;另一個就是我們要討論的重點,「五合一遊戲套裝」。

按說明,這款套件中包含遙控車、釣魚、寵物小屋、競速摩托和紙板鋼琴5個體感互動遊戲所需的紙模和零件。

任天堂官方介紹中用的三個關鍵詞,就很好地概括了這些 Toy-Con 遊戲套件的遊戲體驗:Make(製作)、Play(遊玩)、Discover(探索)。

玩家開箱後,需要自己按照附帶遊戲軟體里的動態裝配圖解,動手製作出每一件遊戲紙模。拜任天堂設計精巧的紙板結構所賜,全程幾乎不需要膠水黏貼和裁剪(手殘黨表示這可以說非常貼心了)。

之後,玩家將 Switch 的 Joy-Con 控制器裝在紙模上,通過各種紙板零件,能和遊戲中的角色或其他紙模零件產生互動。

你以為這就是全部的遊戲內容?太小看任天堂啦!這 5 款小遊戲全部帶有自定義編程等「船新的玩法」呢!

#編程功能其實並不是 Switch 的首創

寓教於樂,可謂是任天堂多年一貫的傳統。還記得小時候玩過的各種XXXX學習機嗎?它們其實都多多少少山寨了任天堂FC紅白機在1984年推出的一款 Family BASIC 編程套件。

↑這個大家應該都認得(圖片來源:電子發燒友網)

↑這個就是當年任天堂FC紅白機的外設: Family BASIC 編程鍵盤和程序卡帶(圖片來源:維基百科)

↑為了讓FC能支持更多擴展存儲,任天堂還出過配套的磁帶存儲器。(圖片來源:維基百科)

↑Family BASIC 在模擬器上的運行截圖(程序來源:metopal.com )

雖然我沒有玩過 Family BASIC,但小霸王上的編程、編樂譜等功能也曾給我留下深刻的印象,那些按照指令在屏幕上漂移的迷宮、像素馬里奧等形象,幾乎可以算是建立了我對計算機編程最初的好奇和憧憬。

# LABO 的新花樣可不少

如今的 Nintendo Labo ,依然很好地繼承了前輩們「在玩中學」的優良傳統。

即使對編程毫無概念的小朋友,在 Discover 頁面也能通過互動動畫實時了解這5個遊戲各自蘊含的科技原理,比如紙板鋼琴的內部其實是中空的,那 Joy-Con 是如何識別按鍵的?這類問題都在對應的小書本圖標里有所解答。

在做好至少一個 Toy-Con,並且了解了其原理之後,神秘的 Labo 編程實驗室才會對玩家開放。

看到上圖中的井蓋了嗎?從那裡跳下去,你會來到一片前所未有的獨特天地:

我們常見到面向對象,面向過程的編程方式,而 Labo 採用的是已經封裝好的事件觸發驅動的編程方式。簡單來說,就是設定好當你對 Joy-Con 、 Toy-Con 或是機器本體做了什麼事的時候,該觸發什麼效果。編程的方式也簡單明了,把代表事件的 Input 方塊,和代表觸發效果的 Output 方塊用線連起來就可以了。

內置可用的 Input 類型有 8 大類:

  • Toy-Con: 用 Labo 遊戲的紙模來觸發事件
  • If an IR Marker is Seen: 當紅色手柄的紅外線攝像頭捕獲到紅外標記時觸發的事件
  • Console:由 Switch 主機的狀態觸發
  • If the Joy-Con is Face Up:當某個手柄靜止在某個特定的姿態時觸發
  • If a Control Stick is Moved: 推動某個手柄的搖桿時觸發
  • If a Button is Pressed:按下某個按鈕時觸發
  • If Shaken:搖晃某個手柄時觸發
  • If Touched:點擊主機屏幕上的 Input 方塊時觸發

Output 則簡單的多,只有4種:

  • Emit IR Light:激活某個手柄的紅外攝像頭,放出紅外照明光
  • LightUpScreen:點亮屏幕上的 Output 方塊
  • Make Sound:主機發出特定的聲音
  • Vibrate:手柄震動

此外,還提供了6種中間方塊,用於邏輯運算:

  • Comment:注釋方塊,我知道你們都不看它
  • Bullseye:和紅外標記聯動,當紅外攝像頭捕捉到的標記位於 Bullseye 方塊內時觸發
  • Counter:計數器,當 input 觸發的次數達到指定數字時觸發,可以設置 input 觸發時將增加,減少數字,還是將計數器歸零
  • Timer:計時器,定時觸發事件
  • NOT:非運算,當 Input 方塊沒觸發時,觸發連接到的 Output 方塊
  • AND:與運算,當連接到的多個 Input 方塊都觸發時,觸發連接到的 Output 方塊

你也許會問,那「或運算 OR 」去哪裡了?由於每個 Input 方塊可以連接到多個 Output 方塊,反之亦然,所以不用 And 方塊的時候,就默認是 OR 的關係,也就是當連接到的多個 Input 方塊中的任意一個被觸發時,對應的 Output 方塊就被觸發。

具體每一大類中都有許多代表不同事件的觸發方塊可選:

各種事件方塊還可以進行詳細設置,比如按下按鈕的方塊,可以設定具體哪個手柄的哪個按鈕按下才觸發:

聽起來是不是非常有意思?沒錯,兼顧了趣味豐富、簡明直觀、功能全面,還有多種感測器和 Toy-Con 加持的 Nintendo Labo 真是老少(碼農)咸宜,特別適合家長和孩子一起學編程!(不,我真的不是為了自己玩買的 Switch!)

#他們怎麼玩的這麼6啊

Labo才發售兩天,微博上的 @NS新聞速報 就馬上搞出了個山寨 Quick Draw (對,就是 1-2-Switch》里的快槍手遊戲,對戰雙方需要在倒計時結束後迅速拔槍對射),自稱總共用了40個節點,包含了倒計時,提示音……

遊戲界面是這樣的:

遊戲「代碼」一覽:

無獨有偶,不滿足於 Labo 只能彈鋼琴的音樂大佬 @劉毅寧 直接開發出了一款大師之……二胡!利用 Joy-Con 的按鍵,加上動作感應,再區分內弦外弦,演奏的感覺相當逼真!

除了純玩,還有人把 Labo 的編程功能用於改善人們的生活質量。比如一般的電動輪椅,在有些手部不方便的人士看來,必須通過按鈕控制還是挺辛苦的。日本的オリィ研究所和任天堂合作,拿 Labo 的摩托車部件,做了一個電動輪椅控制器!用戶只需要左右前後搖晃摩托車 Toy-Con ,即可實現前進後退轉彎等功能——要是這個功能得以推廣,也是特別貼心了~

此外,任天堂還放出了許多Toy-Con圖紙,你可以自己收購一堆廢紙皮來列印,組裝成額外的 Toy-Con 部件,可以說是特別貼心了……

#編程 = 玩 + 創造

看了這麼多,你心動了嗎?是不是也打算自己買一套回來玩?但這其實並不是重點,因為雖然 Switch 花樣繁多,但它自帶的編程功能畢竟比較簡單,在應對複雜的過程和對象時往往力不從心,也缺乏 NAND 、 XOR 等邏輯運算功能,輸出也只有簡單的幾種… 啊,扯遠了,真正的重點在於, Labo 通過簡單的「低科技」技術,和非凡的創意,實現了相當魔幻的體感遊戲效果,真正把編程分解成了「玩」和「創造」,將編程學習的門檻又放低了許多。

曾幾何時,編程還是只有專門的計算機專家才能完成的,在黑黢黢的屏幕上上下閃爍著詭異文字的神秘技術。但隨著新的編程工具不斷出現,以及 Scratch、樂高編程機器人等不斷普及,編程思想和編程技術也逐步為大家(特別是少年兒童)所熟悉,所掌握。而 Labo ,正是這片全新的星辰大海中,最耀眼閃亮的新星。

嗯,不打算買《給寶寶的 C++ 教程》了,先去買套 Labo 吧。(逃

更多閱讀:

你肯定不知道,任天堂 Switch 還能用來學編程...


推薦閱讀:

TAG:編程 | 任天堂Switch | 任天堂Labo |