譯 Godot系列教程三 場景例項化(續)

2022-02-06 15:46:45 字數 1109 閱讀 3777

場景例項化帶來很多便利的用法,總體來說有:

場景例項化真正強悍的地方就在於它是以一種卓越的設計語言的機制執行的。這一點使得godot區別於其它引擎,並有很大的不同。godot整個引擎從底層開始都是圍繞著這個概念進行設計的。

在使用godot製作遊戲時,建議把mvc或er圖這樣的設計模式先拋開一邊,而開始用更自然的方式思考遊戲:設想出遊戲中的可見元素,這些元素可由任何人去命名,而不僅僅是開發者。

例如,這是一款簡單的射擊遊戲能設想出的元素:

幾乎對於任意型別的遊戲,提煉出這樣一張圖(diagram)都非常簡單。僅需將腦子裡出現的元素記下來,然後用帶剪頭的線標註出所代表的所有者關係就行了。

一旦這種圖確定好了,製作遊戲的過程就是先為圖上的這些節點建立相應場景,然後利用場景例項化(通過編碼或編輯器直觀操作)來代表其所有者關係。

對於大多數的遊戲開發或通常意義的軟體開發來說,時間都是花費在架構設計及填充架構中的遊戲元件上。而基於場景的設計使得整個開發過程變快很多,而且更直觀,讓你可以更關注遊戲本身的東西。基於場景/場景例項化的設計,由於多數的元件直接對應到某個場景,極大的節省了那部分架構設計的工作。這樣,專案中幾乎不需要或者僅需少量架構性**即可。

下面是乙個較為複雜的例子 - 乙個開放世界型別的遊戲,帶有很多資源檔案(asset),並有些互動效果:

先製作一些帶有家具的房間,將它們聯絡起來。再製作房子,並將那些房間作為其內部構成。

房子可以作為城堡的一部分,城堡中會有很多房子。最後,城堡可以放到世界地形圖中。還可以將前面建立的守衛及其它非玩家角色(npc)新增給城堡。

使用godot時,遊戲可以根據需要快速壯大,因為僅僅是更多的子場景在被建立和例項化。godot的編輯器也是面向非程式設計師的操作習慣設計的,常規團隊開發環境的角色:三維或二維設計師、關卡設計師、遊戲設計師、動畫師等等都能使用編輯器介面進行協作。

不用有太多擔心啦,這部分文件的最重要目的讓你對實際開發過程中場景和例項化的用法產生一些認知。要想全部理解,最好的方式是動手去做些遊戲。

譯 SVM零基礎系列教程(一)

譯者注 本人研一,專案原因需要了解svm知識,奈何向量相關知識全都還給本科老師,這一部分完全沒看懂,直到看到了國外某部落格寫的這個svm系列教程,深入淺出,只要有初中數學基礎即可看懂,特別適合我這樣的。於是翻譯該系列教程,幫助和我一樣經歷的同學早日掌握svm。全系列目錄 這是我寫的svm背後的數學原...

GCC系列教程 三

這一節,我們來關注下gcc的常用引數 有機會也好多加練習啦。首先來看看我們gcc的版本吧,gcc version這個命令就會顯示gcc的版本號啦 好啦,下面開始下面開始講解gcc的常用引數啦o o.引數詳解 c 只啟用預處理,編譯,和彙編,也就是他只把程式做成obj檔案 例子用法 gcc c hel...

MongoTemplate 教程系列(三)

mongodb中聚合 aggregate 主要用於處理資料 諸如統計平均值,求和等 並返回計算後的資料結果。有點類似sql語句中的 count mongodb語法 db.collection name.aggregate aggregate operation 複製 aggregationresul...