|
|
(22 intermediate revisions by 3 users not shown) |
Line 1: |
Line 1: |
| '''Under Construction'''
| | #REDIRECT [[Project Snowstorm]] |
| = Overview =
| |
| == Author ==
| |
| [[User:Steve Linden]] | |
| == Summary ==
| |
| This is an outline of the projects being worked on and considered by Linden Lab with the objective of improving the user interface.
| |
| == Objectives ==
| |
| The primary objectives for improving the user interface are:
| |
| * Improve the ease of use of the Second Life Client, specifically related to the UI
| |
| * Increase the ability for third parties and individuals to customize the look and functionality of the Second Life Client
| |
| * Provide a useful framework for alternative clients, e.g. lightweight clients, mobile clients, etc.
| |
| = Projects =
| |
| == Step 1: Clean up the XML User Interface (XUI) ==
| |
| * Make the interfaces to all UI components (widgets) consistent
| |
| * Clean up and re-design the layout format for UI components
| |
| * Document the XUI format
| |
| == Step 2: Tackle high nail customization ==
| |
| * [[Skinning]] - Improve the ability to customize the look of the client
| |
| ** Separate out UI textures, use file names that correspond to the XUI files
| |
| ** Make all visual elements of the UI art driven, including backgrounds, etc.
| |
| ** Make XUI loading hierarchical so that packaging customizations and individual customizations can be leaded and will be preserved across updates
| |
| ** Make menus collapsible so that simplified UI layouts can be provided
| |
| * [[Data Driven UI]] - Phase 1
| |
| ** Make simple UI functionality like opening UI windows purely data driven
| |
| * [[Modal UI]]
| |
| ** Make various usage modes of the UI such as navigation, object edit, apearance edit, etc explicit
| |
| ** Allow user customizable modes
| |
| ** Group all relevant settings (e.g. mouse click / alt click / ctrl click behaviors, arrow key behavior, etc) with modes
| |
| ** Allow full keyboard customization, including per-mode overrides
| |
| == Step 3: Data Driven UI
| |
| * [[Data Drive UI]] - Phase 2
| |
| ** Convert all menus and the overlay bar to be fully data driven so that they can be easily re-designed
| |
| ** Create a UI console window that can execute simple UI commands
| |
| ** Allow simple batch files to be loaded on startup or executed from the client
| |
| == Step 4: Lightweight Client ==
| |
| * [[LLViewerApp]]
| |
| ** Clean up the client initialization, update, and render loops so that individual pieces (e.g. 3D rendering) can be de-prioritized or disabled
| |
| ** Abstract login code so that it is independent of any UI or rendering
| |
| ** Improve error handling, including a watchdog for infinite loops
| |
| * Create a sample UI only client
| |