unity3D用什么語言開發好?
一、總結
一句話總結:選c#
同時U3D團隊也會把支持的重心轉移到C#,也就是說文檔和示例以及社區支持的重心都在C#,C#的文檔會是最完善的,C#的代碼實例會是最詳細的,社區內用C#討論的人數會是最多的。
1、unity3d中常用的開發語言有哪些?
c#
UlityScript
2、為什么ulity3d中c#速度比UnityScript快?
裝箱拆箱
C#的速度更快,但原因是UnityScript會涉及到頻繁的裝箱拆箱操作,進而生成的CIL代碼與C#有差異,而並非UnityScript是動態語言且沒有經過編譯。
3、CIL是什么?
通用中間語言
通用中間語言(Common Intermediate Language,簡稱CIL)(曾經被稱為微軟中間語言或MSIL)是一種屬於通用語言架構和.NET框架的低階(lowest-level)的人類可讀的編程語言。目標為.NET 框架的語言被編譯成CIL,然后匯編成字節碼。CIL類似一個面向對象的匯編語言,並且它是完全基於堆棧的。它運行在虛擬機上,其主要的語言有C#、Visual Basic .NET、C++/CLI以及 J#。由於C#和通用語言架構的標准化,字節碼現在已經官方地成為了CIL。
4、UnityScript和JavaScript的關系式什么?
長得像
UnityScript和JavaScript除了長得像之外,根本就沒有什么關系。你在JavaScript里如魚得水,在UnityScript中如果不小心就可能埋下隱患,而一些隱患可能藏得很深。而且UnityScript也是靜態語言,也需要編譯,所以看不出來選擇它作為開發語言為什么會有人覺得快。
二、內容在總結中
很有意思的問題.
來看看網絡大拿們所做的總結.
當然結果需要您自行考慮.
首先,下文摘錄自InfoQ<JS OR C# 不存在的腳本之爭>
到底C#和Unity3D里的JS誰好呢?
最常見的問題無非是: 用js寫的u3d游戲和用c#寫的u3d游戲,到底誰的運行效率高啊?
最常見的回答為非是: 肯定是C#啊,因為js是動態的。肯定不如編譯的語言好。
第二常見的問題無非是: 用js開發和用c#開發,哪個更快更適合我啊?
第二常見的回答無非是: js適合個人開發,敏捷快速。c#適合公司開發,規范嚴謹。
咱們還是用和剛才討論與javascript的區別時一樣的思路來整理C#和UnityScript的不同,也就是按照先本質,再表現的順序。同時兼顧回答一下上面的兩個問題。
本質求同存異
開篇就說了,UnityScript是和C#同一個層面的語言,也需要經歷從源代碼到CIL中間語言過渡,最終到編譯成原生語言的過程。所以本質上,最終運行的都是從CIL編譯而來的原生機器語言。但的確會有C#比較快的現象,那么問題出在哪呢?
一個可能但不是唯一的答案就是 UnityScript和C#生成CIL中間語言不同。
這一點想想也很簡單,就像上文提到的var的問題,如果使用Object來處理var的問題,則不可避免的是頻繁的裝箱拆箱的操作,這對效率的影響是很大的。
所以的確,C#的速度更快,但原因是UnityScript會涉及到頻繁的裝箱拆箱操作,進而生成的CIL代碼與C#有差異,而並非UnityScript是動態語言且沒有經過編譯。
現實很單純
開發到底是使用C#還是UnityScript呢?如果不考慮運行的效率,僅僅考慮開發時候的感受,小匹夫就談談自己的看法好啦——那就是珍惜時間,遠離UnityScript。
首先有幾個事實我們要清楚:
UnityScript是脫胎於.NET平台的第三方語言Boo的。所謂的第三方語言和C#的區別,就跟自己到底是不是親生的,爹到底是不是隔壁老王是一樣的。差距可能是全方位,立體式的。社區支持,代碼維護,甚至是編譯出來的CIL代碼質量都可能有很大的差距。選擇UnityScript之前,問問自己之前聽說過Boo嗎?別忘了UnityScript和Boo的淵源。
UnityScript和JavaScript除了長得像之外,根本就沒有什么關系。你在JavaScript里如魚得水,在UnityScript中如果不小心就可能埋下隱患,而一些隱患可能藏得很深。而且UnityScript也是靜態語言,也需要編譯,所以看不出來選擇它作為開發語言為什么會有人覺得快。
插件的支持。貌似大多數都是C#寫的吧。
好吧,如果上面的3點都不能說動你,那就看看官方的態度好了。

U3D官方團隊基於數據分析做出的一個語言被使用的百分比圖。
由於Boo語言的使用量基本可以忽略,所以從Unity5.0版本開始就會停止對Boo的文檔支持。同時消失的還有從菜單創建Boo腳本的選項“Create Boo Script”。從U3D團隊對Boo的態度,也可以窺見和Boo聯系密切的UnityScript未來的走勢。
同時U3D團隊也會把支持的重心轉移到C#,也就是說文檔和示例以及社區支持的重心都在C#,C#的文檔會是最完善的,C#的代碼實例會是最詳細的,社區內用C#討論的人數會是最多的。
感謝INFOQ提供的原文支持.
告訴你吧,大公司基本都用C#,所以你也不用想太多,直接C# 吧,至於語言,沒有好壞之分,就看哪個適合自己的風格。其實,時間長了你會發現,兩種真的差不多,根本不用糾結這個,沒啥區別,一看都能懂。 另外,新手的話可以 搜一下 unity3D學院,去這個論壇看看,有不少好的資源可以學習借鑒。還是很不錯的。純手寫,望采納!
參考:unity3D用什么語言開發好?_百度知道
https://zhidao.baidu.com/question/561548710.html
三、Unity3D用什么語言開發好?用什么開發工具?

對於Unity相信很多人多不陌生,用一句話來描述就是:Unity是游戲引擎、游戲開發工具。支持的維度 3D,2D,可以進行3D,2D游戲開發。對編程有所認知的朋友,大概會說“你問Unity是干什么?開發游戲一個開發工具”。在程序員的工作生涯中,開發工具使用最為常見,因為針對不同的編程語言使用不同的開發工具是有所差異的,需要安想裝不同的開發環境,如最近很火的小程序需要用微信web開發者工具,VS是開發C#常用的工具。那么,作為開發工具Unity3D支持什么語言?下面就讓我們收集一下信息,一起來了解一下Unity3D用什么語言開發好?
Unity百科里關於編程語言寫的是C#和JS兩種語言?對於不是計算機專業的朋友,可能對兩個語言很陌生。簡單的接受一下兩種語言的運用情況吧!
JS是一個腳本語言,全稱是JavaScript,請注意它不是Java,兩個不是一個東西,不要弄混!目前運用最多的方面就是前段開發,可以做一些也沒交互,最為簡單就是用js實現鼠標點擊事件。
C#是微軟公司的開發的,我最早接觸net開發采用的語言就是C#,支持C#開發的最廣泛的軟件就是VS(Microsoft Visual Studio,安裝包很大),個人的看法:C#在語言邏輯、安全等方面比JS更具有限。
從市場上Unity開發語言的選擇中,C#備受企業青睞!為了能向企業輸送對口人才!藍鷗Unity3D用C#語言開發!
上面我提了一下VS安裝包比較大,相對於Unity自帶的mono軟件(用來寫腳本的軟件)更便捷。為了方便安裝,藍鷗Unity3D開發腳本使用mono軟件進行編寫。
關於藍鷗Unity3D用什么語言開發好就簡單介紹到這里,歡迎大家留意一起交流!
參考:Unity3D用什么語言開發好?用什么開發工具? - 藍鷗_嘟嘟加油中的博客 - CSDN博客
https://blog.csdn.net/qq_36703442/article/details/54377015
