Unity常用API,unity中文api參考手冊(cè)Unity常用API1、Event Function:事件函數(shù)Reset():被附加腳本時(shí)、在游戲物體的組件上按Reset時(shí)會(huì)觸發(fā)該事件函數(shù)Start():在游戲初始化時(shí)會(huì)執(zhí)行一次Update():每一幀都會(huì)運(yùn)行這個(gè)方法FixedUpdate():會(huì)在指定幀調(diào)用該方法多......
1、Event Function:事件函數(shù)
Reset():被附加腳本時(shí)、在游戲物體的組件上按Reset時(shí)會(huì)觸發(fā)該事件函數(shù)
Start():在游戲初始化時(shí)會(huì)執(zhí)行一次
Update():每一幀都會(huì)運(yùn)行這個(gè)方法
FixedUpdate():會(huì)在指定幀調(diào)用該方法多少次
LateUpdate():晚于Update的運(yùn)行順序,但是FPS和Update是一樣的
Awake()Start():都是在游戲物體初始化運(yùn)行一次,但是Awake的運(yùn)行順序高于Start的,并且只要腳本中存在Awake方法,則無論是否掛載了該腳本都會(huì)執(zhí)行該方法
OnEnable():當(dāng)將物體的SetActive設(shè)置為true時(shí)就會(huì)自動(dòng)調(diào)用調(diào)用該方法
OnDestory():當(dāng)關(guān)閉游戲則會(huì)調(diào)用該方法
2、Time時(shí)間類函數(shù):
Time.time表示從游戲開發(fā)到現(xiàn)在的時(shí)間,會(huì)隨著游戲的暫停而停止計(jì)算。
Time.timeSinceLevelLoad表示從當(dāng)前Scene開始到目前為止的時(shí)間,也會(huì)隨著暫停操作而停止。
Time.deltaTime表示從上一幀到當(dāng)前幀時(shí)間,以秒為單位。【一般用來控制角色、動(dòng)畫的運(yùn)動(dòng)】
Time.fixedTime表示以秒計(jì)游戲開始的時(shí)間,固定時(shí)間以定期間隔更新(相當(dāng)于fixedDeltaTime)直到達(dá)到time屬性。
Time.fixedDeltaTime表示以秒計(jì)間隔,在物理和其他固定幀率進(jìn)行更新,在Editgt;ProjectSettingsgt;Time的Fixed Timestep可以自行設(shè)置。
Time.SmoothDeltaTime表示一個(gè)平穩(wěn)的deltaTime,根據(jù)前N幀的時(shí)間加權(quán)平均的值。
Time.timeScale時(shí)間縮放,默認(rèn)值為1,若設(shè)置lt;1,表示時(shí)間減慢,若設(shè)置gt;1,表示時(shí)間加快,可以用來加速和減速游戲,回放等、非常有用。如果游戲中控制運(yùn)動(dòng)的都是使用了Time.deltatime的話,則可以通過設(shè)置Time.timeScale=0來暫停其運(yùn)動(dòng)等。
Time.frameCount總幀數(shù)
Time.realtimeSinceStartup表示自游戲開始后的總時(shí)間,即使暫停也會(huì)不斷的增加。【一般用作性能測(cè)試】
Time.captureFramerate表示設(shè)置每秒的幀率,然后不考慮真實(shí)時(shí)間。
Time.unscaledDeltaTime以秒計(jì)算,完成最后一幀的時(shí)間不考慮timescale時(shí)候與deltaTime相同,若timescale被設(shè)置,則無效。
Time.unscaledTime從游戲開始到現(xiàn)在所用的時(shí)間不考慮timescale時(shí)候與time相同,若timescale被設(shè)置,則無效。
3、GameObject類:
【1】、創(chuàng)建游戲物體的三種方法:
通過其構(gòu)造器來創(chuàng)建GameObject go=new GameObejct(游戲物體名);//一般是用來創(chuàng)建空的游戲來存放其他東西的。
Instantiate GameObject.Instantiate(prefab)//根據(jù)Prefab或者是另外一個(gè)游戲物體來創(chuàng)建(克隆Colon),可以實(shí)例粒子、等其他的游戲物體,很是常用的
CreattePrimitive GameObject.CreatePrimitive(PrimitiveType.**)//創(chuàng)建原始的游戲物體,基本的幾何體
【2】、為游戲物體添加組件,其中組件可以是我們自己自定義的腳本GameObject.AddComponentlt;組件名gt;
【3】、屬性、變量:
GameObject.activeInHierarchy游戲物體是否處于激活狀態(tài),與父類有關(guān),父類被取消激活,則子類也是取消激活的
GameObject.activeSelf自身的激活狀態(tài),與父類無關(guān),只與自身有關(guān)?!究刂平M件的激活與取消激活則使用.enable=false/true】
GameObject.tag游戲物體的tag標(biāo)簽,具體的由程序員自定義設(shè)置
GameObject.SetActive(false/true)通過參數(shù)的控制來設(shè)置其游戲物體的激活狀態(tài),true為激活狀態(tài),反之為取消激活狀態(tài)。
【4】、UnityEngine.Object中的共有方法與變量
name:名字,調(diào)用該變量,則無論是通過GameObject還是Component都是返回游戲物體的名字
Destroy():刪除游戲物體,但是不會(huì)立馬在unity中刪除,而是會(huì)先進(jìn)行回收,等確定沒對(duì)象使用的時(shí)候,在進(jìn)行刪除
DontDestroyOnLoad():當(dāng)加載新的場景的時(shí)候,不刪除這個(gè)場景中的某個(gè)游戲物體
FindObjectTypelt;gt;
FindObjectsTypelt;gt;:t通過類型來進(jìn)行查找,是進(jìn)行全局的查找,則就是在整個(gè)場景中進(jìn)行查找
FindGameObjectWithTag:如果查到的是多個(gè),則只返回查找到的第一個(gè)
FindGameObejctsWithTag返回查找到的游戲物體集合
【5】、消息的發(fā)快遞
BroadcastMessage()廣播發(fā)快遞消息,則該物體上對(duì)應(yīng)的方法會(huì)被調(diào)用,同時(shí)這個(gè)游戲物體上的子物體上對(duì)應(yīng)的方法也會(huì)被調(diào)用的
SendMessage()發(fā)快遞消息,只會(huì)對(duì)這個(gè)游戲物體中腳本上的方法發(fā)快遞消息
SendMessageUpwards()廣播發(fā)快遞消息,但是和BroadcastMessage()是相反的,在調(diào)用自身的方法時(shí)也會(huì)向上傳遞,調(diào)用其父類的方法
【6】、游戲組件的查找
Cube cube=target.GetComponentlt;Cubegt;();返回一個(gè)對(duì)應(yīng)的組件,如果有多個(gè),則只返回第一個(gè)
Cube[]cc=target.GetComponentslt;Cubegt;();返回該游戲物體上所有符合條件的組件,返回一個(gè)組件數(shù)組
Cube[]xx=target.GetComponentsInChildrenlt;Cubegt;();返回該游戲物體上的對(duì)應(yīng)組件,同時(shí)返回該游戲物體的子類上對(duì)應(yīng)的組件
Cube[]yy=target.GetComponentsInParentlt;Cubegt;();返回該游戲物體上的對(duì)應(yīng)組件,同時(shí)返回該游戲物體的父類上對(duì)應(yīng)的組件
4、MonoBehaviours的類:
【1】、繼承的變量成員
enabled:返回該組件是否被激活或者是被禁用,可以通過該變量來進(jìn)行設(shè)置
isActiveAndEnabled:只能返回該組件是否激活的標(biāo)志位,不能設(shè)置該變量,為只讀的
tag:該組件所對(duì)應(yīng)的游戲物體的標(biāo)簽
name:該組件所對(duì)應(yīng)的游戲物體的名字
【2】、Invoke等方法、變量:將添加要調(diào)用的方法添加到等待隊(duì)列中,然后等待用戶設(shè)定的時(shí)間后,進(jìn)行隊(duì)列中的方法調(diào)用。
Invoke(方法1,float time):在等待time的時(shí)間后調(diào)用方法1
bool i=IsInvoking(方法1)返回bool值,如果方法被添加到隊(duì)列中,但沒有被運(yùn)行則返回true,如果經(jīng)過一段時(shí)間后該方法被調(diào)用了則會(huì)返回false;
InvokeRepeating(方法1,time,number):等待time時(shí)間后,會(huì)重復(fù)開始運(yùn)行方法1,每秒鐘運(yùn)行number次。
CancelInvoke()會(huì)暫停通過Involve/InvokeRepeating的運(yùn)行,但是一般來說CancelInvoke會(huì)和InvokeRepeating組合調(diào)用。參數(shù)由自己設(shè)定
擴(kuò)充:在腳本的類前添加[ExecuteInEditMode]:則該腳本不用按游戲運(yùn)行按鈕就會(huì)開始編譯,只限在編輯模式里面
在腳本的共有變量前添加[HideInInspector]:則該共有變量不會(huì)在Inspector面板進(jìn)行顯示
5、Coroutines:協(xié)程:
1、定義協(xié)程:IEnumerator方法名()
{
yield return 0/null;
yield return new WaitForSeconds(1.0f);//等待一定時(shí)間在運(yùn)行下面的代碼
}
2、開啟協(xié)程:StartCoroutines(方法名());
說明:協(xié)程開啟會(huì)繼續(xù)執(zhí)行下面代碼,不會(huì)等協(xié)程方法運(yùn)行完再執(zhí)行接下來的方法
3、開啟與關(guān)閉協(xié)程時(shí),StartCoriutine(參數(shù))、StopCoroutine(參數(shù))其中的參數(shù)要互相對(duì)應(yīng),如果傳遞的是方法名,則兩個(gè)方法中的參數(shù)就要是方法名,如果是IEnumerator的返回值,則其中兩個(gè)方法發(fā)的參數(shù)就要是IEnumerator的返回值
1、private IEnumerator coroutine;
coroutine=WaitAndPrint();
StartCoroutine(coroutine);
StopCoroutine(coroutine);
2、StartCoroutine(WaitAndPrint);
StopCoroutine(WaitAndPrint);
4、StopAllCoroutines()停止所有的協(xié)程,不管你是怎么調(diào)用的
6、OnMousexx鼠標(biāo)觸發(fā)事件:如果是通過Collider進(jìn)行觸發(fā)檢測(cè)的話,則要在設(shè)置中打開允許進(jìn)行射線檢測(cè)。
OnMouseDown():當(dāng)鼠標(biāo)按下的時(shí)候觸發(fā),按一次觸發(fā)一次
OnMouseDrag():當(dāng)鼠標(biāo)按住不放的時(shí)候一直觸發(fā),是每一幀進(jìn)行觸發(fā)
OnMouseUp():當(dāng)鼠標(biāo)抬起的時(shí)候觸發(fā),只執(zhí)行一次
OnMouseEnter():當(dāng)鼠標(biāo)進(jìn)入的時(shí)候觸發(fā),進(jìn)入一次觸發(fā)一次
OnMousetOver():當(dāng)鼠標(biāo)在觸發(fā)物體的上面時(shí),則一直觸發(fā)
OnMouseExit():當(dāng)鼠標(biāo)移出的時(shí)候觸發(fā)
OnMouseUpAsButton()相當(dāng)于是按鈕的功能,當(dāng)鼠標(biāo)在同一個(gè)游戲物體上按下抬起的時(shí)候才會(huì)觸發(fā),按下與抬起不在同一個(gè)游戲上的話則不會(huì)進(jìn)行觸發(fā)。
7、Mathf類:所有的成員均為靜態(tài)的
Mathf.Abs()返回絕對(duì)值的
Mathf.Ceil()向上取整的,10.1gt;11
Mathf.Clamp(value,min,max)如果value的值在minmax之間的話就返回value,但是如果value的值小于min,則返回min,如果value的值大于max,則返回max,一般是用在控制角色血量,當(dāng)玩家的血量減少的時(shí)候,不會(huì)出現(xiàn)出現(xiàn)低于0和大于100的情況hp=Mathf.Clamp(hp,0,100);
Mathf.ClosePowerOfTwo(value):取得離value的2次方最近的值
Mathg.DeltaAngke:取得兩個(gè)角度之間的最小夾角
Mathf.Floor向下取整
Mathf.Pow(i,j)取得i的j次方
Mathf.MoveToWards()一般用來做移動(dòng)控制,是勻速的運(yùn)動(dòng),加速度固定的
Mathf.Lerp()差值運(yùn)算,一般是用來控制動(dòng)畫、運(yùn)動(dòng),越往后運(yùn)行的越慢的。
Mathf.PingPong(t,maxValue)類似乒乓球的來回運(yùn)動(dòng),起始值是0,通過t變量來控制值由0向maxValue移動(dòng),當(dāng)t大于maxValue的時(shí)候又向0進(jìn)行移動(dòng),然后就這樣的來回往復(fù)運(yùn)動(dòng),一般t變量用時(shí)間Time.deltatime來進(jìn)行控制的。
8、Input輸入類:
GetKey()按鍵一直按著時(shí)觸發(fā)
GetKeyDown按鍵被按下那一刻進(jìn)行觸發(fā)
GetKeyUp按鍵被按下后抬起時(shí)觸發(fā)
GetMouseButton(0/1/2)1:左鍵2:右鍵3:中鍵鼠標(biāo)一直按著時(shí)觸發(fā)
GetMouseButtonDown()鼠標(biāo)按下那一刻觸發(fā)、
GetMouseButtonUp()鼠標(biāo)抬起的那一刻時(shí)觸發(fā)
GetButtonDown()
GetButton()
GetButtonUp()這三個(gè)的參數(shù)是用戶自定義的虛擬按鍵進(jìn)行觸發(fā),其他的和上面的一樣
GetAxis(虛擬軸名)通過按下的虛擬軸來返回~1之間的值,開始值是0,然后向/1進(jìn)行漸漸的變化,有一定的加速度。一般用來控制運(yùn)動(dòng)的,比如是賽車的加速運(yùn)動(dòng)等
GetAxisRaw()其他的和GetAxis差不多,就是少了漸變效果,返回值只有0 1三個(gè)
anyKeyDown當(dāng)任何按鍵被按下(包括鼠標(biāo)按鍵)時(shí)返回true
anyKey當(dāng)任何按鍵被按著(包括鼠標(biāo))時(shí)返回true
mousePosition返回鼠標(biāo)在屏幕上的像素坐標(biāo),【屏幕坐標(biāo)】z軸衡為0的
9、Vector2;二維向量
magnitude:返回向量的長度
normalized;返回這個(gè)向量長度為1的矢量,不管這個(gè)向量多長,也是返回1的矢量,只是返回值,不對(duì)原向量的值產(chǎn)生影響
Normalize()無參數(shù)的,也是向量化,但是調(diào)用該方法會(huì)改變?cè)蛄恐?,使其的值被向量化?/p>
ClampMagnitude();將一個(gè)向量限制在參數(shù)中指定的長度之間
MoveToWards()用來做勻速的運(yùn)動(dòng),由一個(gè)位置向另一個(gè)位置進(jìn)行移動(dòng)
sqrMagnitude對(duì)求向量的的長度時(shí)不進(jìn)行開平方根運(yùn)算了,減少性能的損耗,一般是用來比較兩個(gè)向量的長度大小的。
其他的參考API文檔即可,較為簡單。
擴(kuò)充:向量是結(jié)構(gòu)體,為值類型,修改其中的變量的時(shí)候要整體進(jìn)行修改,不能單獨(dú)的進(jìn)行單個(gè)變量的賦值修改
10、Vector3:三維變量
Cross()插乘運(yùn)算【左手法則】,通過兩個(gè)向量來獲得另一個(gè)向量的方向,然后進(jìn)行相關(guān)的判斷
Project()投影運(yùn)算
Reflect()反射運(yùn)算
Slerp()按照角度進(jìn)行插值,與lerp的按照位置信息進(jìn)行插值的,一般用在炮臺(tái)的旋轉(zhuǎn),使旋轉(zhuǎn)的更加平滑
11、Random隨機(jī)數(shù)類:
InitState():通過參數(shù)指定的種子,然后再調(diào)用Range()產(chǎn)生隨機(jī)數(shù)的時(shí)候會(huì)依據(jù)種子來進(jìn)行生成,則每一次運(yùn)行所生成的隨機(jī)數(shù)都是一樣的,是偽隨機(jī)數(shù)。一般要生成的隨機(jī)數(shù)不同,可以設(shè)置參數(shù)為System.DataTime.Now.Ticks:通過時(shí)間戳來完成
insideUnitFCircle:在單位為1的園內(nèi)隨機(jī)生成一個(gè)位置信息,如果要在更大的圓中生成,則可以在后面*圓的半徑信息。一般用來控制隨機(jī)生成敵人的位置信息
insideUnitSphere:在單位為1的球內(nèi)隨機(jī)生成一個(gè)位置信息,如果要在更大的球中生成,則可以在后面*圓的半徑信息。
12、四元數(shù)Quaternion:
歐拉角【eylarAngles】與面板中的值對(duì)應(yīng)和四元數(shù)【rotation】之間是可以進(jìn)行轉(zhuǎn)換的,一般歐拉角是用來讓用戶可以直觀的看到的,而四元數(shù)是用來控制內(nèi)部的運(yùn)算的。
.eulerAngles將四元數(shù)轉(zhuǎn)變?yōu)闅W拉角
Euler()將歐拉角轉(zhuǎn)變?yōu)樗脑獢?shù)
.LookRotation()讓玩家通過設(shè)置四元數(shù)來進(jìn)行望向敵人的旋轉(zhuǎn),將向量方向轉(zhuǎn)變?yōu)樗脑獢?shù)
Vector3 temp=enemy.positionplayer.position;//獲得兩個(gè)位置信息之間的變量,是主角望向敵人,所以要設(shè)置向量的方向是指向敵人的
enemp.y=0;//如果不想主角在望向他的時(shí)候出現(xiàn)低頭的情況,也就是y軸的值出現(xiàn)了變化了。
player.rotation=Quaternion.LookRotation(temp);
slerp()在做朝向的旋轉(zhuǎn)的時(shí)候,不建議使用lerp,而是建議使用slerp,使其的旋轉(zhuǎn)朝向更為平滑,更加的自然
Quaternion target=Quaternion.LookRotation(temp);
player.rotation=Quaternion.Slerp(player.rotation,target,Time.deltaTime);//插值的緩慢旋轉(zhuǎn)
13、Rigidbody:剛體組件,控制角色的移動(dòng)
.position:可以通過剛體來控制運(yùn)動(dòng),在控制運(yùn)動(dòng)方面,使用rigibody.positon比transform.porition計(jì)算要快的多,相關(guān)的物理計(jì)算也是在剛體中計(jì)算好了,但是不建議使用這個(gè)方法來持續(xù)的控制物體的運(yùn)動(dòng),不平滑,控制一兩次的時(shí)候還可以使用
MovePosition()對(duì)position的優(yōu)化,其中利用了插值運(yùn)算,一般持續(xù)運(yùn)動(dòng)的則使用這個(gè)方法,不出現(xiàn)卡頓的現(xiàn)象
,rotation:
MoveRotation用來控制剛體的旋轉(zhuǎn)的,一般不建議使用rotation,比較耗性能,建議使用MoveRotation(),然后配合Quaternion,slerp()進(jìn)行使用,使其更加的平滑
AddForce()為剛體添加力,一般可以用在賽車游戲中,當(dāng)進(jìn)行短時(shí)的加速則可以給以限定時(shí)間的AddForce方法
14、Camera;相機(jī)組件:
當(dāng)相機(jī)的標(biāo)簽是main cream時(shí),可以通過Camer.main來進(jìn)行主相機(jī)cream組件的查找射線,用來檢測(cè)鼠標(biāo)在屏幕上的位置信息,以及觸碰到什么
Ray ray=cameraMain.ScreenPointToRay(Input.mousePosition);//獲得相機(jī)到鼠標(biāo)之間的射線
RaycastHit hit;//用來存放射線檢測(cè)到的游戲物體的信息的
bool temp=Physics.Raycast(ray,out hit);//進(jìn)行射線檢測(cè)
15、Application
SreeamingAcsets:該文件下的資源不會(huì)被壓縮,導(dǎo)入是什么類型還是什么類型,【主要是音頻、視頻資源】
dataPath:工程文件路徑
streamingAssetsPath:可以通過文件流來進(jìn)行讀取的文件路徑
persistenDataPath:可以實(shí)例的文件路徑
tempporaryCachePath:臨時(shí)的文件路徑
Application.OpenURL()打開指定的網(wǎng)址
Application.Quit()退出游戲的運(yùn)行
.CapturScreenshot(游戲截圖)用來截圖的,字符串為截圖fileName
Application.identifier標(biāo)識(shí)名
.companyName公司名
productName產(chǎn)品名
instalMode安裝包名
isEditor是否在編輯器模式
isFocused是否在焦點(diǎn)
isMoliePlatform是否是移動(dòng)平臺(tái)
isPlaying
isWebPlayer
platform編輯器的平臺(tái)
unityVersion unity版本號(hào)
version項(xiàng)目文件版本號(hào)
runInBackground是否可以在后臺(tái)運(yùn)行
UnityEditor.EditorApplication.isPlaying=false;//在編輯器模式下推出編輯狀態(tài)
16、SceneManager場景類
SceneManager.LoadScene()加載下一個(gè)場景,一般是用在另一個(gè)場景不是太大的情況下
SceneManager.LoadSceneAsync()異步加載下一個(gè)場景,返回AsyncOperation類型,里面包含了加載的信息,加載的進(jìn)度條等等。可以讓用戶緩解等待加載場景的時(shí)間
sceneCount獲得當(dāng)前加載的場景個(gè)數(shù)
sceneCountInBuildSettings在Build面板中加載的場景個(gè)數(shù)
GetActiveScene()獲取已經(jīng)加載的當(dāng)前場景的信息
GetSceneAt(index)加載index索引的場景
當(dāng)加載新的場景的時(shí)候會(huì)觸發(fā)下面的事件:
activeSceneChanged當(dāng)有新場景被加載的時(shí)候就會(huì)調(diào)用這個(gè)事件
sceneLoaded當(dāng)有新場景加載完成的時(shí)候就會(huì)觸發(fā)這個(gè)事件
擴(kuò)充:事件的注冊(cè)時(shí)通過加方法來進(jìn)行注冊(cè)的:
SceneManger.activeSceneChanged+=OnAcitiveScenenChanged;
17、射線檢測(cè):一般射線檢測(cè)要在射線檢測(cè)的范圍內(nèi),并且被檢測(cè)物體要有Collider
Ray ray=new Ray(起點(diǎn),方向);
PaycastHit hit;//hit中存放的是射線檢測(cè)的碰撞信息
bool temp=Physics.Raycast(ray,out hit);//具體的重載方法邊用邊查
Ray ray=new Ray(this.transform.position+transform.forward,transform.forward);//創(chuàng)建射線
RaycastHit hit;//存儲(chǔ)射線檢測(cè)到的游戲物體信息
if(Physics.Raycast(ray,out hit))//通過返回值來判斷射線是否檢測(cè)到相關(guān)的物體了
{
Debug.Log(hit.collider.gameObject.name);
}
擴(kuò)充:
Raycast;檢測(cè)的是射線碰撞到的第一個(gè)物體,不具有穿透性
RaycastAll:返回的是RaycastHit數(shù)組,具有穿透性,可以返回檢測(cè)到的多個(gè)游戲物體
18、代碼監(jiān)聽觸發(fā)事件:
lt;Buttongt;().onClick.AddListener(方法名);//當(dāng)觸發(fā)button組件,則會(huì)觸發(fā)指定的方法名的方法
通過實(shí)現(xiàn)接口來注冊(cè)監(jiān)聽事件:using UnityEgine.EventSystems;導(dǎo)入命名空間
IPointerDownHandler鼠標(biāo)按下的事件,具體的接口參考手冊(cè)
Raycast Target:如果取消勾選則不做事件監(jiān)聽了,則無法實(shí)現(xiàn)檢測(cè)了
19、www類,下載是用來在網(wǎng)絡(luò)中下載資源的,
public string url=http://img.taopic.com/uploads/allimg/120727/20199520HG1030762.jpg;
IEnumerator Start()
{
WWW www=new WWW(url);
yield return www;
Renderer renderer=this.GetComponentlt;Renderergt;();
renderer.material.mainTexture=www.texture;
}
20、Touches觸摸事件:
Input.touches:返回放在屏幕上的手指信息,返回?cái)?shù)組
Touch touch1=Input.touches[0];
touch1.position;
TouchPhase pahse=touch1.phase phase是用來返回手指的狀態(tài)的
21、Debug.DrawRay(ray.oridin,ray.direction)繪制射線,第一個(gè)參數(shù)是原點(diǎn),第二個(gè)是方向
22、CharacterController角色控制器
.SimpleMove(【vector3】)簡單移動(dòng)
.isGrounded判斷是否到地面上,bool值
.Move()與simpleMove的區(qū)別是要*Time.deltatime、而且simpleMove會(huì)使用自帶的重力
OnCOntrollerColliderHit(ControllerCollidrHit hit)當(dāng)有碰撞到其他的碰撞器的時(shí)候會(huì)觸發(fā)這個(gè)事件函數(shù)【hit保存碰撞到的物體信息】
23、Mesh的設(shè)置:
material mesh指定人是什么樣子的,material指定人的膚色是什么樣子的
24、API變更:
棄用:Application.LoadLevel();
新的:SceneManager.LoadScene();加載新的場景
棄用
新的:Scene scene=SceneManager.GetActiveScene();//獲得當(dāng)前活動(dòng)場景的信息
SceneManger.LoadScene(scene.buildIndex)//重新加載當(dāng)前場景
OnLevelWasLoaded()當(dāng)場景被加載的時(shí)候調(diào)用,被棄用了
改成事件了:sceenLoaded
特別聲明:以上文章內(nèi)容僅代表作者本人觀點(diǎn),不代表ESG跨境電商觀點(diǎn)或立場。如有關(guān)于作品內(nèi)容、版權(quán)或其它問題請(qǐng)于作品發(fā)表后的30日內(nèi)與ESG跨境電商聯(lián)系。
二維碼加載中...
使用微信掃一掃登錄
使用賬號(hào)密碼登錄
平臺(tái)顧問
微信掃一掃
馬上聯(lián)系在線顧問
小程序
ESG跨境小程序
手機(jī)入駐更便捷
返回頂部