Geek Inspector Addons framework
for Unity
Available in the Unity Asset Store!
The Geek Inspector Addons framework is a set of plugins for Unity, extending the Unity Editor Inspector and co-operating with each other. Their aim is to extend the functionality of the Unity Editor by adding only addons you need. The Geek Inspector Addons framework is planned to become a part of the bigger Geek Addons framework.
Released Geek Inspector Addons
Check the Unity Asset Store!
Below you can find a list of Geek Inspector Addons released in the Unity Asset Store:
Other Geek Addons containing Geek Inspector Addons released in the Unity Asset Store:
In order to test Geek Addons you can use Geek Addons Demo:
Geek Tools
Have you ever been in a situation where you had to rearrange, copy-paste or sort many items in a Unity Inspector list and found it difficult, or select objects referenced by an array range? Now it's easy.
Inspector List & Array Toolkit
The bundle contains essential commands useful for array and list properties.
MOVE-RANGE-LOCK Geek Inspector Addons
Move a range of list or array elements from one place to another
SELECT-RANGE-LOCK Geek Inspector Addons
Select objects based on object references defined in a range of list or array elements
COPY-PASTE-RANGE Geek Inspector Addons
Copy & Paste a range of list or array elements
CUT-INSERT-RANGE Geek Inspector Addons
Cut & Insert a range of list or array elements
List & Array Toolbox
The bundle contains essential commands useful for array and list properties and copy commands in GameObject and Assets menus. It contains commands available in "Editor List & Array Toolkit" and some extra commands.
Editor List & Array Toolkit
The bundle contains essential commands useful for array and list properties and copy commands in GameObject and Assets menus. It contains commands available in "Inspector List & Array Toolkit" and some extra commands.
Geek Addons Demo (Free)
You can use Geek Addons Demo to test Geek Addons
Geek Context Menu
for Unity
First Addons Available in the Unity Asset Store!
Geek Context Menu is a set of plugins for Unity, co-operating within the Geek Inspector Addons framework, extending the Unity Inspector context menus. You will be able to extend or add new context menus for different Unity properties e.g. arrays or lists, by installing addons you need.
Geek Context Menu
for Unity array and list properties
Available in the Unity Asset Store!
Geek Context Menu for arrays and lists is a set of plugins for Unity, extending Unity Inspector context menus related to array properties, e.g. an array of GameObject references, Transforms, ints or floats, co-operating within the Geek Inspector Addons framework.
In the image you can see an example context menu that contains some of Geek Inspector addons. This particular context menu change slightly depending on the range being locked or unlocked. Below you can find more details on what it means.
Geek Inspector Addons
menus and submenus
Available in the Unity Asset Store!
ARRAY & LIST ADDONS
Below you can find the current Geek Inspector Context Menu addons. The names are shortened usually.
SINGLE COMMANDS
- SET range START and LOCK
- SET range END and LOCK
- LOCK range
- UNLOCK range
- RELOCK range
- LOCK ALL
- COPY ALL items
- COPY ALL and LOCK range
- COPY ONE item
- COPY range
- COPY range LOCKED
- COPY and LOCK range and SET (range) END
- PASTE
- PASTE and LOCK range
- DUPLICATE range
- DUPLICATE range LOCKED
- INSERT at [x]
- INSERT at [x] and LOCK
- INSERT and LOCK range at [x]
- APPEND at [x]
- APPEND at [x] and LOCK
- CUT range
- CUT range LOCKED
- DELETE range
- DELETE range LOCKED
- DELETE NULL items in range
- DELETE NULL items in range LOCKED
- SELECT array GAME OBJECTS <a, b>
- SELECT array GAME OBJECTS <START, END> LOCKED
- SELECT array OBJECTS <a, b>
- SELECT array OBJECTS <START, END> LOCKED
- (BASIC) MOVE by +/- 1
SUBMENUS
- SET RANGE to R (submenus)
- SET RANGE to R LOCKED (submenus)
- RESIZE RANGE by R (submenus)
- RESIZE RANGE by R LOCKED (submenus)
- MOVE <a, b> (submenus) (appears when the range is unlocked)
- MOVE <a, b> to array Start or End
- MOVE <a, b> by N
- MOVE <a, b> and LOCK (submenus) (appears when the range is unlocked)
- MOVE <a, b> to array Start or End
- MOVE <a, b> by N
- MOVE <a, b> LOCKED (submenus) (appears when the range is locked)
- MOVE <a, b> to array Start or End
- MOVE <a, b> by N
- MOVE <a, b> and UNLOCK (submenus) (appears when the range is locked)
- MOVE <a, b> to array Start or End
- MOVE <a, b> by N
- DUPLICATE N x range (submenus; duplicate N times)
- DUPLICATE N x range LOCKED (submenus; duplicate N times)
- RING COMMANDS (submenu):
- RING COPY range
- RING COPY range LOCKED
- RING COPY and LOCK range and SET (range) END
- RING PASTE
- RING DUPLICATE range (LOCKED)
- RING CUT range (LOCKED)
- RING DELETE range (LOCKED)
- RING DELETE NULL items in range (LOCKED)
- RING SELECT array GAME OBJECTS <a, b>
- RING SELECT array GAME OBJECTS <START, END> LOCKED
- RING SELECT array OBJECTS <a, b>
- RING SELECT array OBJECTS <START, END> LOCKED
- SHIFT range by N (submenus)
- SORT or REORDER (submenu):
- SORT range
- REVERSE SORT range
- REVERSE items in range
MOVE ARRAY or LIST range ADDON - Example
Example: MOVE the range <4, 7> to the list or array start. It will become <0, 3> and LOCKED. Next, MOVE the LOCKED range <0, 3> by +2. It will become <2, 5> and LOCKED.
ARRAY & LIST ADDON DESCRIPTIONS
Below you can find descriptions of the current Geek Inspector Context Menu addons.
Common terms and identifiers simplifying the descriptions
- clickedINDEX – clicked array or list item index,
- START – current fixed range start,
- END – current fixed range end,
- R – current range size (equal to: END-START+1 in the LOCKED state or b-a+1 in the UNLOCKED state),
- <a, b> – a range where a = clickedINDEX and (b – a + 1) = R
- <START, END>, LOCKED range – a range locked to specific array or list elements that is modified if the position of elements change,
- FIXED range – a range that was usually LOCKED earlier and UNLOCKED later,
- GEEK CLIPBOARD – internal Geek Inspector Addons clipboard.
SINGLE COMMANDS
SET range START and LOCK
SET the array or list range START to clickedINDEX so that the final range is <clickedINDEX, END> and is LOCKED. See the LOCK range command for more information.
SET range END and LOCK
SET the array or list range END to clickedINDEX so that the final range is <START, clickedINDEX> and is LOCKED. See the LOCK range command for more information.
LOCK range
LOCK the range <clickedINDEX, R>. If you execute a command such as MOVE range by N or SHIFT range by N on a LOCKED range, the whole range will be moved or shifted by N too. When you have a LOCKED range, you can click on any array / list item and it will not have any effect on the range a given command will use. The range will be equal to <START, END>.
UNLOCK range
Unlocks the range, which means that the current range will be recalculated based on the current clickedINDEX and current range size R. If you click at a different array or list element, the range will start at that element. The related context menu item is available when the range is LOCKED.
RELOCK range
UNLOCK the range <START, END> and LOCK the range <clickedINDEX, clickedINDEX+R-1>, so that the new range size is unchanged, but the START is equal to clickedINDEX. The related context menu item is available when the range is LOCKED.
LOCK ALL
LOCK the whole range of a given array or list. If you execute a command such as MOVE range by N or SHIFT range by N on a LOCKED range, the whole range will be moved or shifted by N too. When you have a LOCKED range, you can click on any array / list item and it will not have any effect on the range a given command will use. The range will be equal to <START, END>.
COPY ALL items
COPY all array or list items to the GEEK CLIPBOARD.
COPY ALL and LOCK range
COPY all array or list items to the GEEK CLIPBOARD and LOCK the whole array / list range.
COPY ONE item
COPY ONE clicked item to the GEEK CLIPBOARD.
COPY range
COPY the range <clickedINDEX, clickedINDEX+R-1> to the GEEK CLIPBOARD.
COPY range LOCKED
COPY the LOCKED range <START, END> to the GEEK CLIPBOARD.
The related context menu item is available when the range is LOCKED.
COPY and LOCK range and SET (range) END
COPY the range <START, clickedINDEX> to the GEEK CLIPBOARD and LOCK it. Set the range END to clickedINDEX.
PASTE
PASTE the GEEK CLIPBOARD contents at the clickedINDEX. The pasted values will override the old ones. The whole content and the last item must fit in the array or list.
The related context menu item is available when the range is UNLOCKED.
PASTE and LOCK range
PASTE the GEEK CLIPBOARD contents at the clickedINDEX. The pasted values will override the old ones. Next, LOCK the pasted range. The whole content and the last item must fit in the array or list.
The related context menu item is available when the range is UNLOCKED.
DUPLICATE range
DUPLICATE the range <clickedINDEX, clickedINDEX+R-1>. The whole content is appended just after the content being duplicated.
The related context menu item is available when the range is UNLOCKED.
DUPLICATE range LOCKED
DUPLICATE the LOCKED range <START, END>. The whole content is appended just after the content being duplicated.
The related context menu item is available when the range is LOCKED.
INSERT at [x]
INSERT the GEEK CLIPBOARD contents at the x=clickedINDEX and just before the item[clickedINDEX]. No items are overridden during this operation.
The related context menu item is available when the range is UNLOCKED.
INSERT at [x] and LOCK
INSERT the GEEK CLIPBOARD contents at the x=clickedINDEX and just before the item[clickedINDEX]. Next, lock the range of inserted elements. No items are overridden during this operation.
The related context menu item is available when the range is LOCKED.
INSERT and LOCK range at [x]
INSERT the GEEK CLIPBOARD contents at the x=clickedINDEX and just before the item[clickedINDEX]. Next, lock the range of inserted elements. No items are overridden during this operation.
The related context menu item is available when the range is UNLOCKED.
APPEND at [x]
APPEND the GEEK CLIPBOARD contents just after the x=clickedINDEX and just before the next item: clickedINDEX+1. No items are overridden during this operation.
The related context menu item is available when the range is UNLOCKED.
APPEND at [x] and LOCK
APPEND the GEEK CLIPBOARD contents just after the x=clickedINDEX and just before the next item: clickedINDEX+1. Next, lock the range of appended elements. No items are overridden during this operation.
The related context menu item is available when the range is LOCKED.
CUT range
CUT the range <clickedINDEX, clickedINDEX+R-1> so that it is copied to the GEEK CLIPBOARD and deleted.
The related context menu item is available when the range is UNLOCKED.
CUT range LOCKED
CUT the LOCKED range <START, END> so that it is copied to the GEEK CLIPBOARD and deleted.
The related context menu item is available when the range is LOCKED.
DELETE range
DELETE the range <clickedINDEX, clickedINDEX+R-1>.
The related context menu item is available when the range is UNLOCKED.
DELETE range LOCKED
DELETE the LOCKED range <START, END>.
The related context menu item is available when the range is LOCKED.
DELETE NULL items in range
DELETE NULL items in the range <clickedINDEX, clickedINDEX+R-1>.
DELETE NULL items in range LOCKED
DELETE NULL items in the LOCKED range <START, END>.
SELECT array GAME OBJECTS <a, b>
SELECT array GAME OBJECTS referenced directly or indirectly by elements in the range <clickedINDEX, clickedINDEX+R-1>.
The final range and the range end must fit in the array or list. The related context menu item is available when the range is UNLOCKED and element values are Unity game object or component references.
SELECT array GAME OBJECTS <START, END> LOCKED
SELECT array GAME OBJECTS referenced directly or indirectly by elements in the range <START, END>.
The final range and the range end must fit in the array or list. The related context menu item is available when the range is LOCKED and element values are Unity game object or component references.
SELECT array OBJECTS <a, b>
SELECT array OBJECTS referenced by elements in the range <clickedINDEX, clickedINDEX+R-1>.
The final range and the range end must fit in the array or list. The related context menu item is available when the range is UNLOCKED.
SELECT array OBJECTS <START, END> LOCKED
SELECT array OBJECTS referenced by elements in the range <START, END>.
The final range and the range end must fit in the array or list. The related context menu item is available when the range is LOCKED.
(BASIC) MOVE by +/- 1
MOVE the range <clickedINDEX, clickedINDEX+R-1> by +1 or -1. The final range and the range end must fit in the array or list.
SUBMENUS
SET RANGE to R (submenus)
SET range to <clickedINDEX, clickedINDEX+R-1> so that the range size equals R. R is chosen by one of the command submenu items.
SET RANGE to R LOCKED (submenus)
SET range to <START, START+R-1> so that the range size equals R. R is chosen by one of the command submenu items. Next, update the LOCKED range. The related context menu item is available when the range is LOCKED. See the LOCK range command for more information.
RESIZE RANGE by R (submenus)
RESIZE the range <clickedINDEX, clickedINDEX+currentR-1> by R, so that the final range is <clickedINDEX, clickedINDEX+currentR+R-1>, where currentR is the range size before the operation. R is chosen by one of the command submenu items.
RESIZE RANGE by R LOCKED (submenus)
RESIZE the range <START, END> by R, so that the final range is <START, END+R>, where currentR is the range size before the operation. R is chosen by one of the command submenu items. Next, update the LOCKED range. The related context menu item is available when the range is LOCKED. See the LOCK range command for more information.
MOVE <a, b> (submenus)
MOVE the range <clickedINDEX, clickedINDEX+R-1>:
- to the array Start or End.
- by N.
The final range and the range end must fit in the array or list. N is chosen by one of the command submenu items.
MOVE <a, b> and LOCK (submenus)
MOVE the range <clickedINDEX, clickedINDEX+R-1>:
- to the array Start or End.
- by N.
Next, LOCK the range. The final range and the range end must fit in the array or list. N is chosen by one of the command submenu items. See the LOCK range command for more information.
MOVE <START, END> LOCKED (submenus)
MOVE the range <START, END>:
- to the array Start or End.
- by N.
Next, update the LOCKED range. The final range and the range end must fit in the array or list. N is chosen by one of the command submenu items. The related context menu item is available when the range is LOCKED. See the LOCK range command for more information.
MOVE <START, END> and UNLOCK (submenus)
MOVE the range <START, END>:
- to the array Start or End.
- by N.
Next, UNLOCK the range. The final range and the range end must fit in the array or list. N is chosen by one of the command submenu items. The related context menu item is available when the range is LOCKED.
DUPLICATE N x range (submenus; duplicate N times)
DUPLICATE the range <clickedINDEX, clickedINDEX+R-1> N times. The whole content is appended just after the content being duplicated.
DUPLICATE N x range LOCKED (submenus; duplicate N times)
DUPLICATE the LOCKED range <START, END> N times. The whole content is appended just after the content being duplicated.
RING COMMANDS (submenu)
RING commands treat the array or list like a ring buffer. Once the last element is reached, it goes to the first element (index 0).
RING COPY range
Similar as “COPY range”, but it treats the array or list as a “ring buffer”.
RING COPY range LOCKED
Similar as “COPY range LOCKED”, but it treats the array or list as a “ring buffer”.
RING COPY and LOCK range and SET (range) END
Similar as “COPY and LOCK range and SET (range) END”, but it treats the array or list as a “ring buffer”.
RING PASTE
Similar as “PASTE”, but it treats the array or list as a “ring buffer”.
RING DUPLICATE range (LOCKED)
Similar as “DUPLICATE range (LOCKED)”, but it treats the array or list as a “ring buffer”.
RING CUT range (LOCKED)
Similar as “CUT range (LOCKED)”, but it treats the array or list as a “ring buffer”.
RING DELETE range (LOCKED)
Similar as “DELETE range (LOCKED)”, but it treats the array or list as a “ring buffer”.
RING DELETE NULL items in range (LOCKED)
Similar as “DELETE NULL items in range (LOCKED)”, but it treats the array or list as a “ring buffer”.
RING SELECT array GAME OBJECTS <a, b>
Similar as “SELECT array GAME OBJECTS <a, b>”, but it treats the array or list as a “ring buffer”.
RING SELECT array GAME OBJECTS <START, END> LOCKED
Similar as “SELECT array GAME OBJECTS <START, END> LOCKED”, but it treats the array or list as a “ring buffer”.
RING SELECT array OBJECTS <a, b>
Similar as “SELECT array OBJECTS <a, b>”, but it treats the array or list as a “ring buffer”.
RING SELECT array OBJECTS <START, END> LOCKED
Similar as “SELECT array OBJECTS <START, END> LOCKED”, but it treats the array or list as a “ring buffer”.
SHIFT range by N (submenus)
SHIFT the range <clickedINDEX, clickedINDEX+R-1> by N. It is a “RING” version of the command “MOVE range by N”. The array or list is treated as a ring buffer. When the last element is reached, it goes to the first element (index 0).
SHIFT range by N LOCKED (submenus)
SHIFT the LOCKED range <START, END> by N. It is a “RING” version of the command “MOVE range by N LOCKED”. The array or list is treated as a ring buffer. When the last element is reached, it goes to the first element (index 0).
SORT or REORDER (LOCKED) (submenu)
SORT range
SORT the range <clickedINDEX, clickedINDEX+R-1> by string, value or referenced object name.
SORT range LOCKED
SORT the LOCKED range <START, END> by string, value or referenced object name.
REVERSE SORT range
REVERSE SORT the range <clickedINDEX, clickedINDEX+R-1> by string, value or referenced object name.
REVERSE SORT range LOCKED
REVERSE SORT the LOCKED range <START, END> by string, value or referenced object name.
REVERSE items in range
REVERSE the order of items in the range <clickedINDEX, clickedINDEX+R-1>.
REVERSE items in range LOCKED
REVERSE the order of items in the LOCKED range <START, END>.
Geek Inspector GUI Addons
Available in the Unity Asset Store!
More information on Geek Inspector GUI Addons coming soon.
Visit Unity Asset Store to Buy Geek Inspector Addons
Visit our products in the Unity Asset Store!