現(xiàn)在unity的ui用NGUI好還是UGUI好

現(xiàn)在unity的ui用NGUI好還是UGUI好

UGUI是開(kāi)源的,性能的話應(yīng)該比NGUI高,各有優(yōu)缺點(diǎn)。但是目前還是喜歡NGUI,NGUI功能多點(diǎn),有現(xiàn)成可以利用的東西。

有時(shí)候需要像素字體,我不知道UGUI如何使用像素字體,UGUI不支持圖文混排。

還有待各路的大神完善下UGUI的這些東西。

Unity3D5.x學(xué)習(xí)是學(xué)NGUI還是學(xué)UGUI

作為一個(gè)從事Unity開(kāi)發(fā)5年,現(xiàn)百科在任職Unity講師的老人,我建議你學(xué)習(xí)UGUI
理由如下:

UGUI的整體思路在5.X后已經(jīng)重新被定義,而整體定義的開(kāi)發(fā)者是NGUI的作者,Unity公司邀請(qǐng)NGUI作者加入U(xiǎn)nity后,重新只做了整套的UGUI。
從本質(zhì)上來(lái)說(shuō),二者從很多部分很接近,但是UGUI更加高效,因?yàn)閁GUI的首先方式是CanvasRenderer,而NGUI的實(shí)現(xiàn)則是通過(guò)MeshRenderer,從性能和理念上都差了那么一些。

在學(xué)習(xí)了UGUI以后,你可以再學(xué)習(xí)一下NGUI,畢竟現(xiàn)在有很多公司的項(xiàng)目還沒(méi)有從NGUI轉(zhuǎn)型到UGUI。

在Unity的**論壇里有這樣一句話評(píng)價(jià)NGUI,在Unity4.6前,NGUI這類第三方插件是**的UI插件,而NGUI則是**。通過(guò)這句話,你可以自己得出UGUI的比重。

Unity3D——使用UGUI制作小地圖

?UGUI制作小地圖的方法和NGUI也沒(méi)多大區(qū)別,同樣是通過(guò)Camera+RenderTexture來(lái)實(shí)現(xiàn)。細(xì)節(jié)方面的美化可以自行通過(guò)美工來(lái)完善。

為了更好的適應(yīng)新的UI系統(tǒng),學(xué)習(xí)NGUI之余也使用UGUI來(lái)制作同樣效果的東西。

首先,我們創(chuàng)建一個(gè)Camera對(duì)象,改名為MiniMapCamera,設(shè)置Rotation讓其視野朝下,面向地面,修改Projection為Orthographic。通過(guò)Size來(lái)調(diào)整攝像機(jī)高度。 然后,Create——UI——RawImage,生成Canvas和RawImage,在Canvas下創(chuàng)建一個(gè)空物體叫做MiniMap,然后在MiniMap下創(chuàng)建一個(gè)Image對(duì)象,并給Image對(duì)象添加Mask組件(達(dá)到圓形效果),修改Image對(duì)象名字為Mask,修改組件Image的SourceImage為Knob(Unity自帶圓形Image)將RawImage拖拽到Mask下。 接下來(lái),在Pojects面板內(nèi)創(chuàng)建一個(gè)RenderTexture,并將其拖拽到MiniMapCamera的TargetTexture中。

設(shè)置RawImage的對(duì)象為該Texture。此時(shí)便能有一個(gè)初步的小地圖了。 為了美化這個(gè)簡(jiǎn)陋的小地圖,我們可以在MiniMap下再添加一個(gè)RawImage,選擇一個(gè)喜歡的圖作為遮罩,確保該RawImage排在Mask下,這樣便能覆蓋Mask作為外遮罩對(duì)象。

然后修改MiniMapCamera的CulingMask來(lái)選擇小地圖能看見(jiàn)的層。具體細(xì)節(jié)可以按自己的喜好來(lái)調(diào)節(jié)。 這樣小地圖便完成了,給上一個(gè)DIY效果圖(依舊是**案例作為素材)。