Unity3d 自定義滑鼠

2021-06-21 17:18:29 字數 1037 閱讀 8433

我們在用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.顯示自定義滑鼠

[csharp]view plain

copy

print

?public

texture cursortexture;  

void

ongui()    

效果:

Unity3d 自定義滑鼠

我們在用unity3d開發自己的遊戲的時候,自定義遊戲中的滑鼠也是經常要用到的,那我就得學學,其實原理很簡單,先將滑鼠給隱藏,然後在滑鼠的位置上畫出乙個自定義的滑鼠貼圖,這樣看起來就像乙個自定義的滑鼠。當然我這裡利用的是跨平台方案,unity的gui效率不高,如果我們要用特定的某個平台的自定義滑鼠,...

unity3d 自定義滑鼠樣式紋理

方法1 用ngui自己做乙個 缺點,移動慢,無法在比ngui相機深度更高相機顯示 方法2 ongui畫 gui.drawtexture new rect input.mouseposition.x m.width 2,screen.height input.mouseposition.y m.hei...

unity3d更改滑鼠樣式

專案中滑鼠指標樣式換成自己定義的滑鼠樣式 1.指標的texture type需要設定為cursor,也就是在project檢視裡選中滑鼠樣式,在inspector texture type裡選擇cursor 2.若要更改整個專案的預設滑鼠樣式可以在edit project setting playe...