Unity技術積累

關於Unity攝像機總是莫名改變覆蓋範圍的問題。

Generic 命名空間中包含幾個新的泛型集合類.

老油條需要花時間好好總結一下rigidbody2D組件,比如一般情況下爲什麼要加rigidbody2D組件。
總結OnTriggerExit/Enter2D(Collider2D )函數。

Unity有時會出現這樣一種錯誤,編輯完腳本後Inspector卻沒有變化,重啓之後上一次編輯的內容全部丟失。並且Inspector中黃色提示,要求先修改compiler error.

鐵律:碰撞體重疊,則只有一個碰撞體能被檢測到。
分割線2017/6/27
//——————————————//—————————————————//
Unity設置body動畫時,設置的部分不動,其他部分動是怎麼回事?
額,問題解決了,但是問題到底出在哪裏並不知道。談談修改了哪些部分。
首先在Sprite裏把“body”的名字改成了body;然後,把原先場景裏的body刪除重新導入,修改位置,修改大小;把原先設置在body上的剛體設置到Hero父級上;最後,手殘的吧Tagged和Layer設置好。最最後,記得勾選上Hero的Animator組件。

Untiy動畫怎樣由60幀(每分)設置成42幀(每分)?
直接拖動循環範圍的(一組)關鍵幀到42幀處。循環的範圍就從0幀到42幀。

如果想使某一部位的動畫快於其他部分的動畫怎麼辦?
只需將這部分動畫的末端幀前移。

其他項目的較色片段如何應用到新的動畫角色上?如何使拷貝的資源顯示在Animation視窗之中?先把資源拖動到Animator視窗之中,在打開角色的Animation窗口就看到OK了。

碰撞檢測也可以用來檢測鼠標點擊。

如何從一個腳本調用另一個腳本?
getComponent()獲取腳本,它還可以用來獲取組件,比如getComponent< T >()。獲得的是一個對象的引用。

如何解釋Prefeb?
它就類似於C++中的類,有它容易得到的,是衆多實例Instance。

如何消除Scene中花花的背景對佈置角色的影響?
Hierachy中選中花花的背景——》取消選擇Inspector中Sprite Renderer的勾選。

如何設置Z軸位置?
1-sorting layer 2-order 3-修改Z值。

解決Character莫名翻滾的問題。
rigidbody2D——》constraints(約束)——》freeze rotation *Z勾選

瞬移問題:
把所有的transform.position.x置0後微調。

鬼畜問題的解決:
轉向之後Vector2.x沒有利用Mathf.Sign取正確的符號(即方向)。

跳躍控制放在UpDate()而不放在FixedDate()的原因?
Update是在每次渲染新的一幀的時候纔會調用;FixedUpdate是在固定的時間間隔執行,不受遊戲幀率的影響。Tick:在處理Rigidbody的時候最好用FixedUpdate。FixedUpdate的時間間隔可以在項目設置中更改,點擊 Edit - Project Setting - time 找到 Fixed timestep,就可以修改了。

Unity中Rigidbody2D裏的Simulated選項有什麼用?
勾選了才能動彈。

攝像機跟隨移動中主角出現的鬼畜現象怎麼解決?
當攝像機沒有移動時,主角也不會出現鬼畜。

字段初始值設定項無法引用非靜態字段、方法或屬性的問題
下面代碼出錯的原因,在類中定義的字段爲什麼不能用?

public class Test 
{
public Test()
{
}
public int Age=23;
public int temp = Age;//ERROR 字段初始值設定項無法引用非靜態字段、方法或屬性
}

C#規定在類內部只能定義屬性或者變量,並初始化,不能直接變量引用變量。

在初始化類實例之前就調用了字段

c# 中字段的初始化先於構造函數。

string y = “asdf” + x; 實際上是 y = “asdf” + this.x;

因爲這時this還沒被初始化,所以編譯會報錯。

屬性內存和變量內存的分配的時間不一樣。
屬性是用的時候分配,變量是在類初始化時候分配。

如何修改Unity材質的摩擦係數?
××× Collider 2D——》Meterial——》選擇——》Assets——》edge;

如何修改類似Transform.position.x?
中間變量temp(Vector3型)

線性插值Lerp
static function Lerp (from : float, to : float, t : float) : float
基於浮點數t返回a到b之間的插值,t限制在0~1之間。當t = 0返回from,當t = 1 返回to。當t = 0.5 返回from和to的平均值。

DeltaTime的使用

Collider2D的Is Trigger勾選與否的重大差別:
兩個碰撞體相撞,其中一個勾選,都會觸發腳本執行等等。
相應的,過多勾選,碰撞體會“失效”,比如本來主角可以行走的地面,豬腳直接下墜。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章