談起Bolt的Flow Graph其實會覺得它自由度很高,方塊和線是可以隨意擺放,雖然看起來沒有限制很方便使用,但對於完全不會程式還輯的使用者來說,它的高度自由擺放反而成為了入門最大的障礙。
若是真的想要學會Flow Graph,但又想要克服前期的進入點,除了還是花時間多了解Unity的文件,讓自己對其框架和API的用法更加了解外,或許可以用另一套學習工具先行建立更完善的邏輯觀。
在網路上若是找尋視覺化工具,其實會先找到的是以積本(Block)形式呈現的工具,像是
相對於Bot的圖和結點式呈現,積本式呈現或許更適合對程式邏輯觀還認識甚淺的初學者,這點可以從這二個官網上得知,對於低年齡層的程式邏輯教育是會輔以這樣的工具進行。而小孩子可以學會的,絕大對數也適用於年齡較長的初學者。
這裡就簡介下同為視覺化工具,但是以積本形式表達的Scratch。
它有網路版本和桌面版本,可依個人喜好自行決定,功能和界面是一樣的,它本身是用JavaScript開發,而桌面版本只是包進Electron裡,所以使用體驗並無二異。桌面版開啓後會呈現空專案的模式
畫面左側是擺放功能積本元件的地方,而按照分類做收納和標註不同的顏色。而中間的空白區域則是原來組成Script的地方,在Scratch的名詞解釋中,Script就是用Block一個個堆疊而成的。在右手邊那一開始顯示貓的地方是Output,Output下方則為擺放檔案的地方。
接近左上方的分頁,除了一個始的Code之後,還有繪圖區分頁及音效區分頁,可自行研究。切到了繪圖區就隨手試了它提供的小畫家功能,工具相當棒,但出自於程式之手所畫的東西果然很可怕。
若真的受不了身為靈魂畫手的無奈,可以直接從已預設好的圖庫中找取喜歡的圖直接引用。引用其它的圖進入後,可以針對不同的圖寫入不同的Script(這點意外的和Unity裡元件跟著物件的概念相似)。
從Script組合的地方可以了解到所有的積本是由上到下、由裡到外的組合概念,也就是這樣規規矩矩的組合方式,讓初學者不容易犯錯。容錯空間低的好處就是不用擔心擺不擺的上去、要怎麼組合等,給新手絕佳的嘗試空間。但壞錯是很死板,且多個積本開始增加時,現有的IDE沒有提供好的索引工具。
以新手學習的角度來看,到還是很適合的。更多的介紹可從均一平台裡了解。這裡就不再多做描述。它其實可以做到相當複雜的遊戲,礙於本身不太熟悉,就藉用網路上已有的專案,呈現出它的能耐,借花獻佛一番。
若是使用上認為Block的方式比節點方式更適合,但又不滿意Scratch和Blocky提供的IDE,或許可以嘗試Stencyl,它是一個用積本概念撰寫行為的2D遊戲引擎,免費的方案可在本機端進行網頁版和單機版的執行,但要建置、發佈,則需額外付費。
純粹以Flow Graph的角度,個其會認為積本形式的表現方式比節點來的直覺。其實在Unity過往的擴充中,曾有這樣的擴充,可惜近幾年來趨勢偏向圖和節點式呈現。若是能夠結合積木式的Flow Graph加上節點式的State Graph,搞不好才是最為有效率的編輯方式。
在Unity現有的生態中沒有積木式視覺化工具,現有的節點式又是大宗。對於有興趣的開發者,或許也還是專注在節點式的呈現中,就算多花點時間可能也還是值得的。但對於不著重在Unity生態的開發者,積木式視覺化工具生態相當的多元,可以自行了解、嘗試。
Bolt的研究就暫時告一段落,接下來就要進入到Doozy擴充。前面用Bolt不太理解而產生的問題,也會在假日有較多時間時仔細研究一下。若有進展會隨時更新。