Inventory UI Design

From Second Life Wiki
Jump to navigation Jump to search

Thoughts on Inventory UI in SL

By Kelly Linden 14:01, 12 March 2007 (PDT)

Right now our inventory is already too complicated for new users with few items and not powerful enough for advanced users with thousands of items. In the end we end up with an inventory that is not good for anyone. At the same time, making it more complex, adding filters and links and more and more is not likely to make it really usable for anyone but the most hard core.

I think something drastic is probably needed to make our inventory actually work, and I'd love to be part of a discussion about it.

What do other's do?

There are existing software systems that have the same problem our inventory does (lots of files). A couple of those are File Systems and Email.

OSX Applications

Apple has shown a will to put ease of use before any other priority so it makes sense to look a bit at some things they do.

One thing I do really like is how they handle applications. An application on windows is a single executable file burried somewhere with all the other files needed to run the program, and linked to from your desktop or start menu. In OSX an Application is *actually* a folder. Usually it doesn't look like one and it doesn't act like one. You double click it to start the app, and it is the only thing you have to move around if you want the app somewhere else. There are no links (though you can make them if you want) and you only see at the top level the data you need. At the same time an advanced user can browse the contents to see the actual executable(s) and other files needed for running the application.

Windows Start Menu

Windows has its cruft and kludge but they do get some things right. In particular the Start menu contains a list of recently or frequently used applications. I don't even know the algorithm used to decide what goes there, but the applications I use most are usually in that short list.

File Systems (more generally)

Both Windows and Mac, and even Linux, limit the locations user created files generally go. Your files go on the desktop or Documents (My Documents) or your home directory. These locations are easy to get to, relatively few and they don't contain any of that 'extra' stuff (programs, config info) that is actually filling your computer.

GUI Filesystems

GUI Filesystems support icons. Any recent incarnation supports custom icons on a per application basis. More recent versions even support thumbnail icons based on the actual data in the file. All these help to quickly and easily visually sort a collection of data and find specific items within the larger set.

Email

Email has it's own problems. However it is a (mostly) full text medium which makes searching it easier. All email clients highlight 'new' items - those that have not yet been viewed - within the normal list. Additionally Google's gmail and 'Threaded' views in traditional email readers automatically attempt to group related data.

Design Ideas

Packaging, Containers, Outfits and Items

A new class of inventory items that are containers. Containers all:

  • Can contain an 'icon' image, which if present is the icon (at 16x16 probably) for the item in inventory.
  • Can contain a 'help' notecard, which can be opened by context menu for the container (right click -> help)
  • Have their own edit interface for adding or removing items

Specific Inventory Types:

  • New inventory type Outfit
    • Contains all the attachments, body parts, clothing and gestures to make the outfit.
    • Outfits when worn are atomic.
      • If you attach an outfit that has any piece that conflicts with an already worn outfit then the entire previous outfit is removed.
      • If the overlap is small (1 piece out of 10 for each of two 10 piece outfits for example), potentially warn user about removing the old outfit.
  • New inventory type Item (or 'Bundle', 'Package', 'Set' etc)
    • A container object that can hold many different things, including outfits but maybe not other Items.
    • May contain meta data about what to do for various actions - drag into world, drag onto avatar etc.
      • For example: When dragged onto an avatar attach this outfit, rez this vehicle on the ground, attach these gestures.
      • Defaults should make sense - dragging an item onto your avatar that contains an outfit will wear the outfit.
  • New inventory type Container
    • An easy generic container type.
    • Can't be put into the world
    • Dragging it *anywhere except another avatar* opens UI for seeing what is inside
      • Existing or improved 'Open' interface.

Icons and Previews

All items get a new optional property: icon.

  • Containers contain the icon as above
  • Other items - objects, notecards, scripts, textures - set the icon in the properties window in inventory.
  • Icons are only shown at 16x16 in inventory by default.
  • Preview mode will show large icons (32x32 or 64x64)
  • Optional preview pane will show large icon (64x64) for the selected item or the item under the cursor.

Recently Used

New and Unread

Inventory Types and Categories