㈠ unity3D用什麼編程語言
利用Unity3D開發的話:
編寫代碼一般是C#(2019版本里新建腳本目前只看到了這個,也可能因為我沒裝其他環境
)
渲染相關shader編寫的就需要其他語言了(HLSL之類的)
㈡ 自學unity3d一般多長時間學會
自學U3d並不容易,一般參加培訓學習的話基本都四個月。unity3d培訓課程主要分六大階段,內容涵蓋AR綜合項目的講解、C#編程語言、Unity引擎、項目架構與項目管理、VR綜合項目及圖形學、面試階段。自學需要更久,且沒有項目經驗很難找工作。
行業應用:
ATM領域應用(汽車、運輸、製造)
工業VR/AR的應用場景就是構建在數字世界與物理世界融合的基礎之上,作為銜接虛擬產品和真實產品實物之間的橋梁,VR和AR內容為Unity驅動。
全世界所有VR和AR內容中60%均為Unity驅動。Unity實時渲染技術可以被應用到汽車的設計、製造人員培訓、製造流水線的實際操作、無人駕駛模擬訓練、市場推廣展示等各個環節。
Unity最新的實時光線追蹤技術可以創造出更加逼真的可交互虛擬環境,讓參與者身臨其境,感受虛擬現實的真實體驗。Unity針對ATM領域的工業解決方案包括: INTERACT工業VR/AR場景開發工具、Prespective數字孿生軟體等等。
全球頂級的50家AEC公司和10家領先汽車品牌中,已有超過一半的公司正在使用Unity的技術。戴姆勒集團子公司Protics已經使用Unity研發了專門的混合現實流水線;工業巨頭ABB使用Unity打造一個增強型實地流程輔助系統;沃爾沃和Varjo使用VR技術創造安全駕駛功能。
寶馬BMW使用Unity實現實時光線追蹤汽車設計可視化;雷克薩斯Lexus使用Unity製作實時渲染市場推廣展示;宜家IKEA Place,用戶購買傢具之前查看實際效果等。
以上內容參考:網路-Unity
㈢ unity3d 如何編程實現終止一個腳本的調用和重新調用
腳本也是一個component,如果要enable或者disable 的話,就和平常的組件一樣就行了,比如一個Script.js的腳本賦到一個gameObject上,
Script script = gameObject.GetComponent<Script>();
script.enabled = false;//script.enabled = true
或者AddComponent和Object.Destroy(組件)
㈣ 學unity3d需要什麼基礎
可以給你推薦一些資料:
1、Unity 3D腳本編程:使用C#語言開發跨平台游戲
2、Unity 游戲開發
3、Unity 入門精要(名字不敢全打對,自己查查吧)
4、Unity 極世界
5、xxx學院的unityA計劃教程
其實untiy只是一款好用的游戲引擎,內容學下來再看還是不算多的,關鍵的是要自己動手去做去思考才能慢慢了解開發過程,基礎課程講的內容其實都是差不多的,都是在教使用原理跟C#語法,(NGUI、javascript、非Mecanim的動畫知識完全可以不去聽,unity5+及以下的也別看了,已經過時了)找個培訓機構的課程,跟著練習下來,可以說對unity的基本使用已經入門了。
到了提升實戰的階段,就要接觸一些高質量的學習資料才能最快的提升自己,因為這時候你已經有了一定的知識儲備對untiy引擎的使用也已經了解了,需要聽一些作者把多年開發經驗的精髓總結到一個實戰項目中或者代碼架構清晰有效的的課程,這種課程不用多,跟著學一兩部就非常必要有效了,好的甚至可以學兩三遍,其實自己學懂掌握一套厲害的架構基本上可以應對一切開發需求了。這時候其他的教程也可以挑著快速的看看,聽個大概就可以了,找裡面優秀的地方仔細思考思考記下來就可以了,本人是游戲開發愛好者,新入門的愛好者可以加百賭網盤好友焉豆派失陪,有時間可以免費分享資料,自己利用業余時間學習在線下學了好多課程了,最後刪了好多好多,因為真的深深的感覺到很多商業性質太強的教程就是浪費學習者寶貴的時間,講課前沒有想好思路,出了bug這里改改那裡改改,最後不報錯就行了,像這樣低質量的,就不建議有基礎的開發者再聽了。
㈤ Unity3D\2D手機游戲開發 是哪個腳本編的
Unity支持三種腳本,C#、JS、跟Boo腳本。這三種語言當屬C#最流行,因為C#語言的風格更符合Unity的編程思想。
㈥ unity3d特效需要會編程嗎
你可以先去【繪學霸】網站找「影視特效技術」板塊的【免費】視頻教程-【點擊進入】完整入門到精通視頻教程列表: www.huixueba.net/web/AppWebClient/AllCourseAndResourcePage?type=1&tagid=312&zdhhr-11y04r-1767230042558289940
想要系統的學習可以考慮報一個網路直播課,推薦CGWANG的網路課。老師講得細,上完還可以回看,還有同類型錄播課可以免費學(贈送終身VIP)。
自製能力相對較弱的話,建議還是去好點的培訓機構,實力和規模在國內排名前幾的大機構,推薦行業龍頭:王氏教育。
王氏教育全國直營校區面授課程試聽【復制後面鏈接在瀏覽器也可打開】: www.cgwang.com/course/ystxcoursemobilecheck/?zdhhr-11y04r-1767230042558289940
在「影視特效技術」領域的培訓機構里,【王氏教育】是國內的老大,且沒有加盟分校,都是總部直營的連鎖校區。跟很多其它同類型大機構不一樣的是:王氏教育每個校區都是實體面授,老師是手把手教,而且有專門的班主任從早盯到晚,爆肝式的學習模式,提升會很快,特別適合基礎差的學生。
大家可以先把【繪學霸】APP下載到自己手機,方便碎片時間學習——繪學霸APP下載: www.huixueba.com.cn/Scripts/download.html
㈦ 學Unity3D游戲開發要掌握多少c#基礎,另外還要學習dx或是opengl嗎
unity3d用的C#和開發Winform、ASP.net的C#是不一樣的,主要是作為一種腳本語言來進行場景中對象的控制和和業務邏輯的實現,所以如果有任何一門面向對象編程語言的經驗,那熟悉一下C#的基本語法就可以開始編程了,這里的重點恰恰不是需要C#的特性而是需要熟悉面向對象語言的共性以及Unity3D腳本編程的特點特別是ScriptingAPI(當然您如果重點在插件開發、伺服器端開發等方面,那就另說)。重點不是記憶而是應用和理解,實際上常用的場景對象並不多,並且像美工、程序員、構架師等不同的開發角色需要掌握的重點也不一樣,就算是美工還分場景、模型、地形等不同的重點,所以硬要去記住所有的對象參數再進行開發是不現實的,何況unity3D的一大優勢在於第三方插件極其豐富,當你使用不同的插件時又需要了解插件的各種參數,有的插件參數多達幾十項。所以重點在於使用和理解,先從核心的和你當前開發急用的方面開始,最後你會發現參數雖多,實際上分類就那麼些,比如控制transform的、控制shader的、控制gui的、控制rendering、控制network的……你最終會對這些參數形成一個大綱,然後即使是沒用過的插件參數也可以顧名思義的立刻會用了。這個很不好說啊,按目前實際工作來看最多的是腳本類的編程吧,然後還有伺服器端編程、插件編程、shader編程……,不是說那個方面需求多就是重點,比如基礎的腳本編程,門檻很低,以後能勝任的人會越來越多。依我看如果想走得遠,需要對各類編程都了解,特別是能整合不同方面的開發、能做構架(這樣就可以讓老闆看你臉色了,呵呵)。
㈧ unity3d怎麼用腳本激活腳本
C#是一種非常典雅而強大的編程語言,它的dot-syntax命名法則基於Java,所以如果你具有Java編程背景將感到非常舒服。不過區別也還是有一些的,最明顯的應該是在C#中屬性以及方法的名稱約定俗稱都是以大寫字母開頭的。 C#的特性列表實在太長,這使得ActionScript實在是看起來有些相形見絀。 C#與Actionscript從本質上是極為相似的。
運算符重載
它允許程序員為+-*/這樣的運算符定義特殊的行為。它的優勢在向量加法運算中就可以明顯體現出來,在ActionScript中,要計算向量之和,你需要書寫類似下面的代碼:
view sourceprint?1.var c:Vector3D = a.add(b);
復制代碼
在多於兩個向量相加時代碼的易讀性會變得很差。如果在C#中重載+運算符,代碼將會變成下面的形式:
view sourceprint?1.Vector3 c = a + b;
復制代碼
在Unity3D中所有向量的運算符都進行了重載。如果你希望自己實現,運算符重載也非常簡單,對於上面的例子,代碼大致是下面這個樣子的:
view sourceprint?1.public static Vector3 operator + (a:Vector3, b:Vector3) {
return new Vector3(a.x + b.x, a.y + b.y, a.z + b.z);
}
復制代碼
這其中有一些簡單的規則:運算符函數永遠都是靜態的(static),並且需要返回它所定義的對象類型。不過它的參數可以是任何類型的,因此完全可以重載加法或乘法運算符使其支持向量與浮點數或者與矩陣的運算——而這一切都要得益於C#對運算符重載功能的支持。
方法重載
方法重載可以允許我們定義多個同名但參數不同的方法。它不但對一般方法起作用而且也可以應用於構造函數——如果有多種途徑來初始化一個對象,那麼你可以為每一種途徑定義一個專有的構造函數。而且方法重載同樣可以應用於運算符方法,這一點上面已經提到了。
在Unity3D API中一個關於運算符重載最好的例子就是』Transform.Rotate()』這個方法,它被重載了三次以滿足不同的旋轉參數:
view sourceprint?1.void Rotate (Vector3 eulerAngles, Space relativeTo)
void Rotate (float xAngle, float yAngle, float zAngle, Space relativeTo)
void Rotate (Vector3 axis, float angle, Space relativeTo)
復制代碼
你可以指定歐拉角,也可以指定旋轉軸以及旋轉角度。ActionScript可以使用默認參數來模擬方法重載,但是這樣做並不方便也不便於理解。
Getter/Setter語法
C#聲明參數的方法非常簡明扼要,在ActionScript中需要兩個方法——一個』get』一個』set』,而在C#中的代碼則是這樣的:
view sourceprint?1.public float Size { get; set; }
復制代碼
在這種情況下,你不需要額外做任何工作編譯器就會自動創建一個私有屬性,當然,這樣的定義沒什麼用處,下面列舉一個稍微復雜點的,包括一個public的get以及private的set:
view sourceprint?1.public float Area {
get { return size * size; };
private set { size = Mathf.Sqrt(value) };
}
復制代碼
想必你應該已經注意到了,盡管C#源自Java,在C#中卻並不使用』function』和』var『關鍵詞——這樣做之所以好是因為這兩個關鍵詞完全是冗餘的病情不會為代碼增加任何有價值的信息。對於其他特性,我推薦看看indexers,generic types,structures以及enumerators,在上面提到的C# Pocket Book中都有詳細介紹,許多C#教程中也有涉及。
編輯C#
很多編輯器都支持C#,微軟提供的Visual C# Express Edition免費而且非常好用,支持代碼自動補完功能,但是只對應Windows平台(顯然的)。對於Max平台Mono Develop看起很強大但是還並不是很穩定。 不幸的是Eclipse的C# plugin目前為止非常不穩定,所以我並不推薦,但好在它目前還處於Alpha階段。當然,不論如何,我們最後至少還可以求助於TextMate。
最後需要提到的是Unitron——Unity3D自帶的默認編輯器。在開發者中間它並不怎麼流行,而且我看到有人抱怨他過於基本了,我並不認同這種觀點。雖然它不如FDT之於ActionScript那樣強大,但是它非常穩定而且具備基本的代碼自動補完功能,自動補完功能在默認設置下是關閉的,要開啟該功能需要打開』Preferences』,你會在』General』面板的底端找到這個選項,如此一來我相信Unitron還是值得一用的。
我們中很多人都是在瀏覽器環境下認識Javascript的,而Javascript也是很多人平生第一次使用的編程語言。如果是這種情況的話,你很可能會立刻開始使用Javascript進行Unity3D的編程而不必操心要學習什麼新東西,畢竟,如Unity3D所說,任何使用C#可以完成的事同樣可以使用Javascript完成。
但是從長遠考慮的話,C#可以提供更好的代碼管理,完整的OOP支持,strong typing以及掌握一門優秀編程語言所帶來的成就感。
㈨ 我是個unity3d的新手,不想走彎路,請問unity3d能實現虛擬虛擬裝配練習和培訓的功...
你可以先去【繪學霸】網站找「游戲特效/unity3D」板塊的【免費】視頻教程-【點擊進入】完整入門到精通視頻教程列表: www.huixueba.net/web/AppWebClient/AllCourseAndResourcePage?type=1&tagid=306&zdhhr-11y04r-502334195
想要系統的學習可以考慮報一個網路直播課,推薦CGWANG的網路課。老師講得細,上完還可以回看,還有同類型錄播課可以免費學(贈送終身VIP)。
自製能力相對較弱的話,建議還是去好點的培訓機構,實力和規模在國內排名前幾的大機構,推薦行業龍頭:王氏教育。
王氏教育全國直營校區面授課程試聽【復制後面鏈接在瀏覽器也可打開】:
www.cgwang.com/course/gecoursemobilecheck/?zdhhr-11y04r-502334195
在「游戲特效/unity3D」領域的培訓機構里,【王氏教育】是國內的老大,且沒有加盟分校,都是總部直營的連鎖校區。跟很多其它同類型大機構不一樣的是:王氏教育每個校區都是實體面授,老師是手把手教,而且有專門的班主任從早盯到晚,爆肝式的學習模式,提升會很快,特別適合基礎差的學生。
大家可以先把【繪學霸】APP下載到自己手機,方便碎片時間學習——繪學霸APP下載: www.huixueba.com.cn/Scripts/download.html
㈩ Unity3d如何寫一個用可視化的按鈕控制物體的顯示和隱藏的腳本
1.新建工程,創建C#腳本,名稱自擬。
程序清單:
using UnityEngine;
using System.Collections;
public class Button1 : MonoBehaviour {
// 標志符,用於控制按鈕文本
public int flag = 0;
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
}
// GUI函數
void OnGUI () {
// 隱藏按鈕
if (flag == 1) {
if (GUI.Button (new Rect (100, 100, 100, 100), "隱藏")) {
flag ++;
flag %= 2;
}
}
// 顯示按鈕
else {
if (GUI.Button (new Rect (100, 100, 100, 100), "顯示")) {
flag ++;
flag %= 2;
}
}
// 顯示物體,但不影響按鈕
if (flag == 1) {
transform.renderer.enabled = true;
}
// 隱藏物體,但不影響按鈕
else {
transform.renderer.enabled = false;
}
}
}