Skinning/ja

From Second Life Wiki
Jump to navigation Jump to search

< ビューアロードマップ, ユーザインターフェイスロードマップ

オーバービュー

スキン作成ユーザインターフェイスのカスタマイズ機能に幅広く言及しています。スキン作成プロジェクトはユーザインターフェイスロードマップの一部と、Linden Lab、サードパーティデベロッパ、そして個人による、主要なソースコードを返る必要のない、アップデートを通してメンテナンス可能な、完全なデータドリブンでカスタマイズ可能なSecond Lifeユーザインターフェイスを作る道程を明確に記述しています。

主要

ユーザインターフェイスロードマップをみましょう。

関連項目

目的

  • Second Lifeの外観を更に容易にカスタマイズする内部編集ツールを可能にする
  • 外部の開発者と住民の利用者の意見を役立てて、ビューアのアップデートを通じて継続し、カスタイマイズして作成したスキン"パッケージ"を蓄積する。
    • "スキン作成"が沢山のことを意味できるようにする。このプロジェクトでは、スキン作成は以下を最初に意味するでしょう。
    1. カスタムな外形に同じサイズの画像を用いる。(例えばDazzle)
    2. HTMLを表示するカスタムフロータとSLURLを通してクライアント側に戻って会話ができるようにする。
    3. オーダーメイド、あるいは言語オーダーメイドがインストールを通して保有される。
    4. UIの一部除去を可能にする"シンプル"スキン。
    5. カスタマイズされたヘルプリンク。
  • あなたが望むのであれば、前向きな設計材料を挙げるのに'discussion'ページを用いてください。

タスク

Skinning pwiki.jpg

フェイズ 0

  • 最初のフェイズはプロジェクトDazzleを実装することで、ユーザインターフェイスの色(外観)を買えるための、最初のスキンの実装と、必要とされる抽象化の検証です。
  • 即優先事項:
    • VWR-5059 スキンの変更、クラシックスキンへと戻す機能を含む。

フェイズ 1 ウィジェットのクリーンアップ

VWR-6027 スキン作成 フェイズ 1

  • 目標:
    • パラメータ化された全ウィジェットのコンストラクタを作る。
    • レイアウトからウィジェットコンテントを分離する。
    • ハードコードされた絵とレイアウトを除去する。
    • 付加UIのクリーンアップ
    • 全 XUI指定ロジックをpostBuild()呼び出しから発生するようにする。
    • VWR-1884 ハードコードされた絵と色の除去
      • プログラムに関わる絵と要素の除去。例:ボリュームスライダー
      • いくつかのアイコンその他から背景を除去。(アルファを使う)
      • 全イメージでトリミングと拡大縮小を確実にする。
      • 境界線の固定サイズの指定を可能にする(例えば、ボタングラフィックと狭い境界線のサイズを正確に)
      • 色やその他の、ヴィジェットの付加要素を可能にする
      • サブタスク: VWR-2447 テキストの影付け設定をXMLの構造にせず、視認性のある要因に生じさせる。
      • 全パネル/フロータのレイアウトをデータドリブンにすべき。
      • 色、他のグローバルUI設定など、全UI設定をXMLへ移す。
      • \xui\en-us内の使わない(レガシー)xmlファイルを削除する。
      • llUICtrlFactoryプロパティを使って、全ての存在するフローターを作成する。

フェイズ 2 - 選択可能なスキン

  • 目標:
    • 動的再読み込み - クライアントの再起動なしでスキンの選択を可能にする。
    • XUI編集を効果的に分かりやすくして、編集しやすくする。
      • 例:言語設定を変更するとき、全UI要素がリロードするべき。
    • VWR-1885 動的なUI要素の再読み込み。(ホットスワッピング):
      • 色定義
      • LLUIImageは空中でテクスチャアセットをスワップ可能にすべき。
      • メニューとオーバーレイバーを含む、5フロータとパネルのXUIファイルの再読み込みを可能にする。
      • VWR-1883 異なるテクスチャタイプを適切なサブフォルダ(OIプレキャッシュ等)に移動し、プレインテキスト名を用いる。
      • 全フロータが消失しているUI要素をハンドル可能にして、振る舞うことを可能にするか、オープンとともに適切なメッセージを表示して拒絶するようにする。


フェイズ 3 - XMLウィジェットレイアウト

  • 目標:
    • XUIテンプレート - 全てのウィジェットを基本データドリブンにして、基本ウィジェットのサブタイプとしての付加テンプレートを可能にする。
      • XMLにウィジェット初期値をおく。
      • XMLにウィジェットレイアウトデータをおく。
    • VWR-1882 希薄なXUIファイル
      • XUIファイルの冗長性をなくし、可読性を高める。
      • XUIファイルに初期値ではない値のみを含むようにする。
      • コードから全初期値を除去する。(XMLクリーンアップ)
      • 全XMLファイルを出力し、初期値ではない値のみを書く、製作ツールの作成。
      • 同時にXMLアウトプットのクリーンアップ。
    • 自動的にフロータ位置とサイズを保存する。
      • 最小化位置を含む。 (現在は保存されない)
    • UI XML フォーマットのドキュメント

フェイズ 4 - "シンプルUI"スキン

  • 目標: SLの簡易化したインターフェイスを可能にして、カスタムスキンをビューアにパッケージされるようにする。
    • アドバンスドメニューをデータドリブンにする。
    • データドリブンコールバック - UIコールバック
      • 全メニューアイテムとオーバレイボタンを完全にデータドリブン可能にする。
    • VWR-1886 他の簡易化された以下のようなTBDタスク
      • 名前からフロータを開くボタンを許可する。
      • 特定タブを開くことをサポートする。
      • シングルトンステート間のトグリングを識別し、新しいインスタンスを開く。
      • シンプルとアドバンスドでの拡大/折りたたみメニューを可能にする
        • オーバーレイバーの指定レイアウトと"viewer.xml"でのメニューバー
        • サイドバーあるいはボタン付与可能なコーナーパネルを追加する複数の"オーバーレイバー"を可能にする

将来のフェイズ

I18N

  • 目標:
    • SLビューアの完全な国際化
    • ログインでダウンロード可能なXMLファイルからサーバメッセージの翻訳を含む。

スキンパッケージング

VWR-7078 住民のカスタマイズとパッケージ化を可能にする

  • 目標:
    • スキンの配布とパッケージ化を容易にする
    • 外部デベロッパと住民のアップデートを通した変更とカスタムUIレイアウトの配布を維持可能にする
    • スキンのwebベース配布/ダウンロードを考慮し、ライブアップデートを可能にする
    • 編集のみ(翻訳)あるいは完全な上書き(ユーザカスタマイズ)の指定ファイル
    • 全リリースのための変更リスト作成の自動化
      • 大衆翻訳も用いて(例:SecondLife)、翻訳をおおざっぱに通しておく
    • 住民のパッケージ変更を許可して、他のユーザによる簡易インストールでの容易な配布
      • Edit > Preferences > Skinsのオプションをさらによくする
        • a) 設定にドロップダウンオプションを追加
        • b) XMLファイルからのオプション充填
      • Zipファイルからのスキン読み込みサポート追加
      • 全プラットフォームでのスキンインストーラ調査

カスタマイズサポート

  • 目標: XUIのクリーンアップと簡易な追加スキン作成環境
    • 自動的なフロータ位置とサイズの保存 - フロータでの明快なふちコントロールに必要な削除
      • layout.xmlの作成、app/skinsでの初期内蔵、user/skinsでのカスタム値
      • 最小化位置の保有(現在は保存されない)
    • XUIドキュメンテーション - UI XML フォーマットのドキュメント
    • 首尾一貫したウィジェットインターフェイス - 全ウィジェットインターフェイスの首尾一貫化、インターフェイスを通してのみウィジェットにアクセスする

動的レイアウト

  • VWR-1887 ウィジェットレイアウト言語の保有と自動サイズ化の追加
    • 目標: XUIレイアウトデータを変更しやすくする
      • レイアウト言語に標準的なモデルを採用する(例:CSS? qt-lite?)
      • レイアウト意図のために要素グループ化の採用
      • レイアウト情報が公開されない時のレイアウト要素の自動化


データドリブン UI

  • 完全なUIのデータドリブン化。コントロールフローロジックのみがコードに含まれるようにすべき


他の特定リクエスト

  • アイコン的なパネルの作成を可能にする(例えばビルドツール)
    • 完全なアイコン的ボタンとフロータでの指定タブのオープンボタン機能の連結
  • ドッキング/ホスティング - 3Dウィンドウレイアウト要素とドックされたフロータの採用
    • 場合によって、アプリケーションウィンドウの外側にフロータを出力を許可する