中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

[Unity3d]自定義鼠標

發布時間:2020-02-27 10:15:44 來源:網絡 閱讀:239 作者:蓬萊仙羽 欄目:游戲開發

我們在用unity3d開發自己的游戲的時候,自定義游戲中的鼠標也是經常要用到的,那我就得學學,其實原理很簡單,先將鼠標給隱藏,然后在鼠標的位置上畫出一個自定義的鼠標貼圖,這樣看起來就像一個自定義的鼠標。當然我這里利用的是跨平臺方案,Unity的GUI效率不高,如果我們要用特定的某個平臺的自定義鼠標,那就去用特定的接口函數,這樣效率會高一點。這里我寫的就是一個跨平臺方案,一種通用的方法。

舉例:

如果是windows平臺的話,我們如果要隱藏鼠標就用SetCursor()這個方法,

注意:

1.GUI坐標系的原點是在左上角,而屏幕坐標系采用的是一種OpenGL坐標系原點是在左下角,所以這就存在一個坐標轉換的問題!

2.update()和FixedUpdate()的區別:

Update() 和 FixedUpdate()在游戲中都會在更新的時候自動循環調用。

但是Update是在每次渲染新的一幀的時候才會調用,也就是說,這個函數的更新頻率和設備的性能有關以及被渲染的物體(可以認為是三角形的數量)。在性能好的機器上可能fps 30,差的可能小些。這會導致同一個游戲在不同的機器上效果不一致,有的快有的慢。因為Update的執行間隔不一樣了。

而FixedUpdate,是在固定的時間間隔執行,不受游戲幀率的影響。有點想Tick。所以處理Rigidbody的時候最好用FixedUpdate。


PS:FixedUpdate的時間間隔可以在項目設置中更改,Edit->Project Setting->time  找到Fixed timestep。就可以修改了。


操作:

1.隱藏鼠標是:Screen.showCursor = false;

2.顯示自定義鼠標

public Texture CursorTexture;  void OnGUI() { 	Vector3 mousePos = Input.mousePosition; 	//因為GUI坐標系原點是左上角,而屏幕坐標系原點是在左下角,所以要轉換 	GUI.DrawTexture(new Rect(mousePos.x-CursorTexture.width/2,Screen.height - mousePos.y-CursorTexture.height/2,CursorTexture.width,CursorTexture.height),CursorTexture); }

效果:

[Unity3d]自定義鼠標

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

un %d
AI

开阳县| 宣汉县| 临西县| 新竹市| 滨州市| 海林市| 定远县| 赤峰市| 都匀市| 德州市| 客服| 新晃| 芦山县| 宁城县| 漯河市| 松江区| 白玉县| 车险| 建德市| 监利县| 印江| 阳高县| 闵行区| 内黄县| 三原县| 阿勒泰市| 浙江省| 婺源县| 高州市| 马山县| 元阳县| 银川市| 青铜峡市| 边坝县| 吉首市| 泰宁县| 蛟河市| 大城县| 加查县| 武义县| 刚察县|