游戲制作到一定階段后,一定會出現(xiàn)一些gameobject的“模板”。比如一個敵人一定會有一個“enemy behaviour”、“box collider”等。雖然prefab可以用來作為“預(yù)制件”,但是prefab產(chǎn)生的物體和prefab自身有關(guān)聯(lián),同時還要從project菜單里去找到prefab再拖出來。
一個解決方案是擴(kuò)展編輯器菜單,就像右鍵hierachry時出現(xiàn)的3d object、2d object一樣。可以創(chuàng)造gameobject的菜單有兩個,一個是頂部菜單的gameobject,另一個是hierachry的右鍵菜單。
在unity editor extensions – menu items 的文章中提到了如何擴(kuò)展頂部菜單.
1
2
3
4
5
6
7
8
9
10
11
|
using unityengine; using unityeditor; public class menuitems { [menuitem( "tools/clear playerprefs" )] private static void newmenuoption() { playerprefs.deleteall(); } } |
但是沒有提到hierachry右鍵菜單的擴(kuò)展。
在此文章提到,hierachry右鍵菜單其實來自于頂部gameobject的菜單,只是截取了其中的“一段”。如果要擴(kuò)展,只需要把添加到gameobject菜單的菜單項的優(yōu)先級設(shè)置到這“一段”之間即可。這樣就可以同時出現(xiàn)在gameobject菜單和hierachry右鍵菜單中了。
1
2
3
4
5
6
7
|
public static class test { [menuitem( "gameobject/mymenu/do something" , priority = 0)] static void init() { debug.log( "here" ); } } |
下圖顯示了兩個菜單中各項的優(yōu)先度。可以看到只要優(yōu)先度在0到49之間,就可以同時出現(xiàn)在兩個菜單中。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持服務(wù)器之家。
原文鏈接:http://www.cnblogs.com/yangrouchuan/p/6690689.html