Difference between revisions of "Skinning/ja"

From Second Life Wiki
Jump to navigation Jump to search
m
Line 1: Line 1:
{{multi-lang}}
{{multi-lang}}
< [[Viewer Roadmap|ビューアロードマップ]], [[User Interface Roadmap|ユーザインターフェイスロードマップ]]
== オーバービュー ==
'''スキン作成'''は'''ユーザインターフェイス'''のカスタマイズ機能に幅広く言及しています。'''スキン作成'''プロジェクトは[[User Interface Roadmap|ユーザインターフェイスロードマップ]]の一部と、Linden Lab、サードパーティデベロッパ、そして個人による、主要なソースコードを返る必要のない、アップデートを通してメンテナンス可能な、完全な'''データドリブン'''でカスタマイズ可能なSecond Lifeユーザインターフェイスを作る道程を明確に記述しています。
== 主要 ==
[[User Interface Roadmap|ユーザインターフェイスロードマップ]]をみましょう。
== 関連項目==
== 関連項目==
* [[Viewer Roadmap|ビューアロードマップ]]
* [[Skinning HowTo/Basics/ja|スキン製作方法/基本]] - 現機能でのドキュメント
* [[User Interface Roadmap|ユーザインターフェイスロードマップ]]
* [[Skinning HowTo/Basics/ja|スキン製作方法/基本]] - 現在の性能上のドキュメント


== 目的 ==
== 目的 ==
Line 11: Line 17:
*# カスタムな外形に同じサイズの画像を用いる。(例えばDazzle)
*# カスタムな外形に同じサイズの画像を用いる。(例えばDazzle)
*# HTMLを表示するカスタムフロータとSLURLを通してクライアント側に戻って会話ができるようにする。
*# HTMLを表示するカスタムフロータとSLURLを通してクライアント側に戻って会話ができるようにする。
*# オーダーメイド、あるいは言語オーダーメイドがインストールを通して保有される。
*# UIの一部除去を可能にする"シンプル"スキン。
*# UIの一部除去を可能にする"シンプル"スキン。
*# カスタマイズされたヘルプリンク。
*# カスタマイズされたヘルプリンク。
Line 20: Line 27:
=== フェイズ 0 ===
=== フェイズ 0 ===
* 最初のフェイズはプロジェクト[[Dazzle/ja|Dazzle]]を実装することで、ユーザインターフェイスの色(外観)を買えるための、最初のスキンの実装と、必要とされる抽象化の検証です。
* 最初のフェイズはプロジェクト[[Dazzle/ja|Dazzle]]を実装することで、ユーザインターフェイスの色(外観)を買えるための、最初のスキンの実装と、必要とされる抽象化の検証です。
* 即優先事項:
** {{Jira|VWR-5059}} スキンの変更、クラシックスキンへと戻す機能を含む。
=== フェイズ 1 ウィジェットのクリーンアップ===
{{Jira|VWR-6027}}  スキン作成 フェイズ 1


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


*JIRA: {{Jira|VWR-6027}} スキン作成 - フェイズ 1
=== フェイズ 2 - 選択可能なスキン ===
** ''目標:'' カスタムUIレイアウトをアップデートと配布を通して、変更内容を保存することを、外部開発者とユーザで可能にする。
* '''目標:'''
*** ユーザのローカルディレクトリに変更を保存することを住民に許可する。(例えば、Documents and Settings\User\Application Data\SecondLife\skins)
** 動的再読み込み - クライアントの再起動なしでスキンの選択を可能にする。
*** インストールされたスキンパッケージのためのサーチ場所を定義する
** XUI編集を効果的に分かりやすくして、編集しやすくする。
*** サブタスク: {{Jira|VWR-5059}} スキン変更機能と、オリジナルスキンの復元を含める
*** 例:言語設定を変更するとき、全UI要素がリロードするべき。
*** 編集のみ(文字の翻訳)か完全な上書き(ユーザのカスタマイズ)かどうか、XMLファイルを指定する
** {{Jira|VWR-1885}} 動的なUI要素の再読み込み。(ホットスワッピング):
*** 色定義
*** LLUIImageは空中でテクスチャアセットをスワップ可能にすべき。
*** メニューとオーバーレイバーを含む、5フロータとパネルのXUIファイルの再読み込みを可能にする。
*** {{Jira|VWR-1883}} 異なるテクスチャタイプを適切なサブフォルダ(OIプレキャッシュ等)に移動し、プレインテキスト名を用いる。
*** 全フロータが消失しているUI要素をハンドル可能にして、振る舞うことを可能にするか、オープンとともに適切なメッセージを表示して拒絶するようにする。


*JIRA: {{Jira|VWR-1883}} UIテクスチャキャッシュ
** ''目標:'' UIイメージの追加と変更を容易にする
*** UIイメージからアセットIDと事前キャッキュされたイメージを分離する
*** アセットIDではないファイル名を使用するUIイメージの名称変更をおこなう


* JIRA: {{Jira|VWR-1884}} きめうちされた絵と色を除去する
=== フェイズ 3 - XMLウィジェットレイアウト ===
** ''目標'' コードから、幾つかのUIイメージを取り除く
* '''目標:'''
*** プログラムでつくった絵と要素、例えばボリュームスライダーなどを除去する
** XUIテンプレート - 全てのウィジェットを基本データドリブンにして、基本ウィジェットのサブタイプとしての付加テンプレートを可能にする。
*** (アルファをつかう)アイコンなどから幾つかの背景を取り除く
*** XMLにウィジェット初期値をおく。
*** 全てのイメージがトリミングと目盛り付けられるのを確実にする
*** XMLにウィジェットレイアウトデータをおく。
*** 境界線の固定サイズの指定を可能にする(例えば、ボタングラフィックと狭い境界線のサイズを正確に)
** {{Jira|VWR-1882}} 希薄なXUIファイル
*** 色やその他の、ヴィジェットの付加要素を可能にする
*** XUIファイルの冗長性をなくし、可読性を高める。
*** サブタスク: {{Jira|VWR-2447}} テキストの影付け設定をXMLの構造にしない
*** XUIファイルに初期値ではない値のみを含むようにする。
*** コードから全初期値を除去する。(XMLクリーンアップ)
*** 全XMLファイルを出力し、初期値ではない値のみを書く、製作ツールの作成。
*** 同時にXMLアウトプットのクリーンアップ。
** 自動的にフロータ位置とサイズを保存する。
*** 最小化位置を含む。 (現在は保存されない)
** UI XML フォーマットのドキュメント


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


* 全てのリリースで、自動化された変更リストのジェネレータ
== 将来のフェイズ ==
* strings.xml - XUIファイルとは関係のないテキストのための、グローバルな翻訳対
* 他のユーザによる、簡単なインストールのために住民のパッケージ変更と容易な配布を可能にする


=== フェイズ 3 ===
=== I18N ===
'''XUIファイルの掃除'''
* '''目標:'''
** SLビューアの完全な国際化
** ログインでダウンロード可能なXMLファイルからサーバメッセージの翻訳を含む。


*JIRA: {{Jira|VWR-1882}} わずかなXUIファイルに
=== スキンパッケージング ===
** ''目標:'' 冗長的ではなく、更に読みやすいXUIファイルにする
{{Jira|VWR-7078}} 住民のカスタマイズとパッケージ化を可能にする
** 各ヴィジェットのために、初期要素と'templates.xml'ファイルを作成する
*** 共通要素設定のためのほかのテンプレートにもまた、ここで宣言されるものを可能にする
*** ウィジェットがテンプレートで宣言できるようにする(標準的な型の一つを初期値にする)
** コードから全ての初期値を取り除く(XML クリーンアップ)
*** 全ての既存XMLファイルのプロセスと、初期値ではない値のみを書き出すツールを作成する
*** 同時にXMLの出力を整える


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


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


=== フェイズ 4 ===
=== 動的レイアウト ===
'''データ駆動型メニュー'''


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


* JIRA: {{Jira|VWR-1885}} UI要素の動的再読み込み
** ''目標:'' XUI編集の効果を見やすくする
** 動的再読み込み - クライアントの再起動なしで読み込まれる全てのUI要素の実装
*** メニューとオーバーレイバーを含む全てのフローターの再読み込みを可能にする
*** 全てのフローターはUI要素を失う処理と、合理的なあるいはしかるべきメッセージを隠し立てしないのを拒む振る舞いであろうことを保障します。
** 例えば、言語設定の変更で、全てのUI要素は再読み込みされるでしょう


=== フェイズ 5 ===
=== データドリブン UI ===
'''動的レイアウト'''
* 完全なUIのデータドリブン化。コントロールフローロジックのみがコードに含まれるようにすべき


* ヴィジェットのレイアウト言語を向上し、自動サイズ変更を付与します


* JIRA: {{Jira|VWR-1886}}
=== 他の特定リクエスト ===
** ''目標:'' 更に容易にカスタマイズされるメニューとオーバレイバーを有効にします
* アイコン的なパネルの作成を可能にする(例えばビルドツール)
*** 名称でフロータを開くボタンを許可します
** 完全なアイコン的ボタンとフロータでの指定タブのオープンボタン機能の連結
*** 指定のタブで開くサポートを含みます
* ドッキング/ホスティング - 3Dウィンドウレイアウト要素とドックされたフロータの採用
*** 別の、開く(フォーカスを当てる)そして新しいインスタンスを開いている、異なる状態間の行き来
** 場合によって、アプリケーションウィンドウの外側にフロータを出力を許可する
** 単純なものと、進んだ使用法での広範囲(崩れた)になるメニューを許可します。
** "viewer.xml"でのオーバーレイバーとメニューバーのレイアウトの指定
*** サイドバー、あるいは隅のパネルにボタン追加が可能になるように付与される、複数の"overlay bars"を許可します


* JIRA: {{Jira|VWR-1887}}
** ''目標:'' XUIレイアウトデータの変更を容易にします
*** レウアウト言語での標準モデルを選択します(例えばCSSやqt-likeのような?)
*** レイアウトの意図のためのグループ化のための要素を許可します
*** レイアウト情報が与えられていないときの自動レイアウト要素


=== 仕様の要求 ===
* 一般的に利用できるアイコンパネル(例えば作成ツール)の作成
** 完全なアイコンボタンの組み合わせとフローターの指定タブを開けるボタン用の能力
* ドッキング(ホスティング) - 3Dレイアウト要素の作成とドッキングされたフローターの許可
** できる限りアプリケーションウィンドウの外側に存在するフローターの許可
[[Category:Skinning/ja]]
[[Category:Skinning/ja]]

Revision as of 08:05, 30 November 2008

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

オーバービュー

スキン作成ユーザインターフェイスのカスタマイズ機能に幅広く言及しています。スキン作成プロジェクトはユーザインターフェイスロードマップの一部と、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 フォーマットのドキュメント
      • [[Skinning HowTo/Basicsja|スキン製作方法/基本のドキュメントの改善
    • 首尾一貫したウィジェットインターフェイス - 全ウィジェットインターフェイスの首尾一貫化、インターフェイスを通してのみウィジェットにアクセスする

動的レイアウト

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


データドリブン UI

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


他の特定リクエスト

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