unity編輯器和外掛程式的製作 四 1

2021-09-30 12:17:01 字數 2400 閱讀 1774

好久沒有更新,有些急事終於處理完了,接著更新部落格!

廢話不多說,接著上面的講,今天我們來接著講述。

前面說到 怎麼去建立乙個自己 ,用**繪製乙個色塊,今天我們來講述下,怎麼繪製乙個在場景裡面。

首先 我們先做下的功課。

有些人可以會遇到 我放進去的素材為什麼編譯之後會變模糊那,這是由於,在unity中你沒有修改的屬性,導致的。

在 texture模式下,

我們來分析下這種的屬性,

wrap mode 這個是選擇 時候四方連續是會用到,也可以減輕,白邊的影響。

filter mode 是 的 檔案模式,說白一點就是 點,兩角線,三角線。。越高質量越大,記憶體也就越高。

anise level 說白了 這個 我還沒用到 ,貌似是點陣圖才會用到。

max size 最大支援(注意哦是最大哦,假如我的圖是100*100的 你選擇1024 沒關係的 不會浪費 記憶體的,因為這裡說的是最大的圖集支援,如果你的超過了1024,那這個值也要跟著變。)

format 這個就是 壓縮模式了,決定記憶體的最重要的部分,三個選項,自動壓縮(最節省),16位壓縮(還可以說的過去),真彩色可以說沒有壓縮,保證質量的同時記憶體相應的增大了。

高階選項模式:最為常用的模式。

non power of 2 :如果你不想你的圖變成 正方形符合2的n次方的圖,就選擇none,這樣可以保證你圖的大小的合理性。不然選自動適應,最大適應,最小適應。

cubemap: 一般不使用,這個是用在模型上面的貼圖。

read/w:是否支援讀寫,建議勾選。

其他看下文件。

format:一般我們用32位的,也可以選擇16位的。減少記憶體。

最後 送一句話,小圖盡量拼成大圖,對uv(也可以使用ngui的自動壓縮略圖,也可以自己壓縮,後面會講怎麼製作自己的圖集),大圖最好不要超過1024,面的數量盡量的減少,盡量使麵合併。 目的減少記憶體,減少drawcall。

前面講了,我們繪製片,下面,我們做的之需要兩部。

1.把shader換掉,前面使用的是,純色的shader,下面我們將使用,帶貼圖的shader。

2.前面我們使用的是固定的寬和高,因為的大小不是固定的,所以我們要把比例進行適配一下。

上**:

shader部分,很簡單:

shader "vk/vktextureshader" 

}subshader

pass }}

}

呼叫前面的,繪製片的公用方法類initbase,繼承vkview ,前面已經有,複製就好。

using unityengine;

using system.collections;

public class vkimageview : vkview

public void updateimageview()else

}else

if(im**iewdefultmat!=null)

if(im**iewdefultmesh!= null)

} public void switchbutton()

}

editor下面的 編輯器類

using unityengine;

using system.collections;

using unityeditor;

[customeditor(typeof(vkimageview))]

public class vkimagevieweditor : editor

guilayout.beginhorizontal();

if(guilayout.button("2x"))

if(guilayout.button("1x"))

if(guilayout.button("1.5x"))

guilayout.endhorizontal();

guilayout.beginhorizontal();

if(guilayout.button("changename"))

}if(guilayout.button("switchbutton"))

guilayout.endhorizontal();

im**iew.updateimageview();

if(im**iew!=null)

editorutility.setdirty (im**iew);

editorutility.unloadunusedassets ();}}

認識Unity編輯器

儲存整個專案所有資源的載體。專案中無論是從外部匯入的包 package 資源 後面有詳細 講解 模型資源,音訊資源,還是自己建立的各種指令碼 材質等,都需要在本檢視中儲存 編輯與展現出來。scene 場景檢視 視覺化展現與編輯當前場景中所有的遊戲物件。本檢視與上面層級檢視的區別是 場景檢視是視覺化遊...

Unity編輯器拓展

有時候為了加快效率,不得不做一些方便的小工具,尤其是有那種改變體屬性,調整ui布局,或者調整字型,有選擇性的新增修改元件的時候,如果乙個兩個手動該沒問題,如果物件數量很多,而且只是做一些簡單的更改的時候,那還是推薦大家先做乙個工具,還能練練手。時候會比如我們需要用鉸鏈把一串transform連起來,...

Unity編輯器擴充套件

unity引擎除了提供大部分通用的功能以外,還為開發者提供了編輯器的擴充套件開發介面,開發者可以編寫編輯器指令碼,打造適合自己的遊戲輔助工具和定製的編輯器。以前指令碼開發中使用的一些api和元件類,都屬於執行時類,unity還提供了編輯器類用於編輯器的擴充套件開發,包括編輯器環境下使用的gui類,編...