詳細教程**:
《1》canvas的render mode的三種模式介紹:
1.screen space -overlay可以理解為unity為你自動設定好了uicamera,而且這個相機的depth值是大於100的(相機能設定的最大depth值為100)
2.screen space—camera:將ui渲染在攝像機檢視頂部,但ui元素可以進行透視效果旋轉,可以進行座標的轉換,recttransformutility.screenpointtoworldpointinrectangle這個api就必須在該模式才有效
3.world space:將畫布物件放置在場景中,就好像ui是3d場景中的一部分。
《2》recttransformutility.screenpointtoworldpointinrectangle(uguicanvas, new vector2(input.mouseposition.x, input.mouseposition.y), camera.main, out mousepos);將螢幕空間點轉換為世界空間點,該點在矩形變換的平面上
引數一:需要轉換到的目標檢視平面,比如canvas
引數二:需要轉換的座標
引數三:相機,
引數四:返回的轉換後的座標變數,out關鍵字,只出不進
《3》static functionangle(from: vector3,to: vector3) : float
由from和to兩者返回乙個角度。形象的說,from和to的連線和它們乙個指定軸向的夾角。
如z = -vector3.angle(vector3.up, mousepos - transform.position);
《4》給物體旋轉座標,四元數的運用: transform.localrotation = quaternion.euler(0, 0, z);
quaternion.euler(x,y,z) 返回乙個繞x軸旋轉x度再繞y軸旋轉y度再繞z軸旋轉z度的quaternion
Unity 2D遊戲開發中關於UI層的設定
首先我也是剛開始玩unity,還很缺經驗。在學習製作 俄羅斯方塊 遊戲時,我需要在介面上顯示分數 時間,以及開始 結束遊戲等ui元素。我們直接將ui元素新增完成時,會發現在scene中,ui介面相比於遊戲的視窗來說實在太大了。當然了,這樣不管它,最終也是可以顯示出ui元素的。從圖下可以看到,在 ca...
Unity2D 渲染層級
渲染層級 camera 攝像機 depth 值越高物體越在上面 在同乙個camera中 sorting layer 越在下面的sorting layer 越在上面 例如 player 層物體顯示在default層物體的上面 最後 order in layer 誰的數值大,誰在上方 一般設計思路 第一...
Unity2D動畫繫結
這次做了乙個unity的2d動畫,記錄一下,怕下次忘了怎麼做。首先是先決條件,推薦使用unity2019.2或更高版本,安裝 2d animation 和 2d psd importer 包。官方文件 資源檔案需要 psb 格式,直接使用ps另存為psb格式就可以了。我是線在手機上隨便畫了乙個,然後...