7統一遊戲開發語言學習:哪種最好?

想在統一中開始遊戲開發嗎?您需要熟悉這些統一相容語言之一。...

開發遊戲從未如此簡單。像Unity這樣的遊戲開發平臺可以創建從簡單的2D平臺到完全詳細的3D第一人稱射擊的一切。Unity對小型開發人員是免費的,並且有大量關於如何最好地使用編輯器來創建您的想法原型的教程。

unity-languages

學習如何使用Unity程序只會讓你走得更遠。遊戲的真正核心將是決定其行為的代碼。為遊戲開發學習哪種語言可能很難——但在統一的情況下,這很簡單。

1最佳選擇:c#

對於任何一個從Unity開始學習的人,或者任何一個有過面向對象編程知識的人來說,C語言是學習Unity的正確語言。事實上,C語言是平臺上唯一值得學習的語言,這是有充分理由的。

Unity使用Mono,它是微軟.NET框架的跨平臺實現。C#是.NET的主要語言,Unity的所有庫都是用C#代碼構建的。說C是統一的語言並不誇張。Unity已經明確表示,他們認為C#是未來引擎使用的唯一語言。

這是一個好消息,因為C語言功能強大,易於學習。Unity只是學習C#的眾多好理由之一,如果你是初學者,你甚至會發現它更容易理解。開發遊戲使學習更有條理,以項目為基礎的目標使學生對新科目有更深入的瞭解。

隨著C#job系統和ECS的引入,Unity將C#的功能推向了一個新的高度,新的Burst編譯器使它比以往任何時候都快。

2當前的替代方案:javascript

Unity還支持JavaScript,稱為UnityScript。自發布以來,JavaScript已經與C並排出現,成為一種功能齊全的統一開發語言。Unity scripting reference在C#和JavaScript中為庫的大多數元素提供了示例代碼。

這對來自JavaScript背景的開發人員很有用,因為儘管代碼的結構方式不同,但他們可以使用熟悉的語法。然而,有一個問題。

雖然UnityScript看起來和JavaScript很相似,但事實並非如此。UnityScript有類,而JavaScript沒有。多變量聲明和可選分號等JavaScript特性在UnityScript中不可用。

也許最關鍵的是,搜索Unity項目上的JavaScript幫助總是會引起混亂,因為大多數人將其稱為JavaScript而不是UnityScript。網頁設計和遊戲開發的結果都模糊不清,對於純JavaScript開發人員來說,語言之間的差異是一個爭論點。

也許毫不奇怪,Unity宣佈他們將撤回對UnityScript的支持,現在有一個時間表可以讓它退役。您仍然可以將JavaScript與Unity結合使用,但是知道它將要結束,您為什麼要這樣做呢?

三。老三選擇:噓

在統一的早期,可以選擇使用Boo——一種類似Python的語言。這也許並不奇怪,因為布的設計師羅德里戈德奧利維拉(rodrigob.deoliveira)為Unity工作。該語言與.NET和Mono兼容,完全可以通過遊戲引擎實現。出什麼事了?

沒有足夠的人使用它,很可能假設它只是試圖模仿Python。隨著時間的推移,Unity放棄了對Boo的支持,而UnityScript即將進行的更改將使所有舊的Boo腳本在Unity中變得毫無用處。有些人可能會認為這是一個錯失的機會,因為Boo是對.NET編程中類似Python的語法的一次偉大嘗試。

然而,Python的愛好者還有另一個選擇。

4奇怪的選擇:鐵蟒

如果你想開發遊戲,Python可能不是適合你的語言,但它是可能的。在他的微軟開發者社區博客中,Charlie Calvert概述瞭如何從C#運行Python,但這不是為膽小鬼準備的。差不多十年後,IronPython仍在積極開發中。

簡而言之,您需要從GitHub下載IronPython庫,並在您的C項目中引用它們。這將允許您從C腳本調用Python腳本,就像調用任何其他庫一樣。IronPython還允許從Python調用.NET庫。儘管這聽起來很有用,但由於Unity依賴於C語言,所以這個功能並沒有幫助。

IronPython和IronRuby是將C#與Ruby編程語言連接起來的姊妹項目,它們都是非常棒的項目,但它們不適合與Unity一起使用。

5有趣的選擇:lua

統一的外部語言的一個更好的實現是MoonSharp——Lua解釋器。這個項目並不是要取代C語言,更多的是充當橋樑。MoonSharp的完美用例是為遊戲玩家添加一種用Lua語言創建遊戲mod的方法。

你也可以用它來描述對象和設計水平,與你的核心遊戲代碼分開。

如果您已經在用C語言編寫代碼,並且正在尋找一種有趣的方法來與代碼交互,那麼MoonSharp是值得考慮的。因為它在Unity的資產存儲中是免費的,所以您可以直接將它導入到您的項目中。

6插件的最佳語言:c/c++

儘管有強大的Unity庫和C提供的所有可用工具,但有時您可能需要自己的插件。人們選擇插件的主要原因包括速度,或者訪問已經用另一種語言編寫的代碼庫。將這些腳本構建到DLL插件中可以節省重新生成的代碼,並且在某些情況下可以提高性能。

在大多數情況下,C++將是用於插件創建的語言,但是C也同樣有效。只要代碼構建到一個DLL中,它就可以被放在Unity的plugin文件夾中,並在代碼中引用。然而,如果你已經習慣於C/C++中的編碼,那麼學習C語言將是一個相對簡單的任務。

7插件的新語言:rust

生鏽是一種語言,周圍有很多嗡嗡聲。經驗豐富的程序員喜歡它提供的難以置信的數量的控制,同時避免了編寫不安全語言如C++的陷阱。Rust是Mozilla在2009年創建的,它是開發人員快速開發高性能軟件的一種方法。

雖然不可能直接在Unity中編寫Rust,但是可以從Unity代碼訪問用Rust編寫的函數和方法。吉姆弗萊明涵蓋了如何做在他的崗位上媒體的細節。

如果這看起來很熟悉,那是因為這是創建本機插件的另一種方法。通過利用Rust與其他語言接口的能力,您可以使用Unity的DllImport屬性直接從C代碼調用Rust函數。當然,這中間有幾個步驟,閱讀Jim的後續文章,同時對FFIs(foreign function interfaces)有一個很好的理解,這是很好的建議!

一個簡單的選擇

Unity對任何非C語言的態度都是明確的,對Unity的不斷改進依賴於這種一心一意。再加上微軟對C語言的不斷改進,學習C語言開發Unity遊戲是一件輕而易舉的事。一定要檢查團結學習一個更簡單的方法來學習遊戲開發。

這並不是你唯一的選擇,Unity只是一個引擎,還有很多遊戲開發軟件可供選擇。

  • 發表於 2021-03-21 18:18
  • 閱讀 ( 59 )
  • 分類:程式設計

你可能感興趣的文章

你將來應該學習哪種程式語言?

... 根據PayScale,JavaScript開發人員的平均底薪是72500美元。如果你向下定位,它會變得更高。例如,前端Web開發人員職位的平均底薪為88500美元,而高階前端開發人員職位的平均底薪為119500美元。 ...

  • 發佈於 2021-03-11 19:38
  • 閲讀 ( 56 )

尋找最好的程式語言?從這裡開始!

...Mac、Linux、Android、iOS和HTML5在內的數十個平臺。從我們的統一初學者指南開始。 Java:Java程式設計師可以使用開源LibGDX框架從頭開始快速建立遊戲。這個框架可以匯出到任何支援Java的桌面平臺,再加上Android和iOS。...

  • 發佈於 2021-03-12 12:24
  • 閲讀 ( 64 )

javascript移動應用:是的,有一個框架

... 如果你想建立****,你需要一個用於遊戲開發的框架。這樣的框架可以完成所有的繁重工作,因此您可以用一兩行程式碼完成複雜的任務(例如,載入影象或移動世界相機)。而且相量器是同類中最好的。 ...

  • 發佈於 2021-03-13 05:23
  • 閲讀 ( 34 )

用unity編寫遊戲:初學者指南

...用性和廣泛的功能集使它成為快速遊戲開發的理想選擇。統一是如此靈活,你甚至可以使自己的自定義遊戲控制器與一點DIY的訣竅! ...

  • 發佈於 2021-03-13 11:55
  • 閲讀 ( 51 )

每天5分鐘學習一門新語言的6種快速方法

... 這個應用程式怎麼這麼高效?Duolingo課程是遊戲化的,這使得學習過程更加有趣和參與,因為你的遊戲方式進入新的語言。 ...

  • 發佈於 2021-03-13 16:52
  • 閲讀 ( 43 )

使用這8款android應用程式,快速輕鬆地學習新技能

...emrise是一個特別有趣的語言應用程式,因為它使你的學習遊戲化。該應用程式還附帶了來自世界各地的大量語言目錄。 ...

  • 發佈於 2021-03-13 18:21
  • 閲讀 ( 49 )

要構建android應用程式,您需要學習以下7種程式語言

...的其他環境中使用該語言,例如使用Unity和C#建立複雜的遊戲。一個用Xamarin構建的應用程式的例子?市場觀察。 ...

  • 發佈於 2021-03-15 11:36
  • 閲讀 ( 49 )

如何選擇正確的web程式語言

...的語法也是一個優勢。包括像Minecraft或DIY Flappy Bird這樣的遊戲,讓孩子們的程式設計變得有趣和容易。以下是一些適合初學者的語言: ...

  • 發佈於 2021-03-16 01:36
  • 閲讀 ( 64 )

9個最好的程式碼遊戲,以建立你的程式設計技能

... 這就是為什麼你應該留出時間來玩這些編碼遊戲和挑戰。它們不僅是一種有趣的休息方式,而且透過實踐和體驗,您可以更快地學習並保留更多資訊。 ...

  • 發佈於 2021-03-17 21:19
  • 閲讀 ( 40 )

8款真正有效的最佳語言學習應用程式

...興趣擴充套件你的新語言技能,看看Memrise Pro吧,它提供遊戲、聊天機器人和離線學習模式。 ...

  • 發佈於 2021-03-18 05:08
  • 閲讀 ( 61 )