<commit_before>baum2
=====

## 画像付きの紹介記事

http://qiita.com/kyubuns/items/b4c0c92e60754a8dc544

## 初期設定

### Photoshop

* Baum2/PhotoshopScript/Baum.jsをPhotoshopのPluginsディレクトリ以下にコピーしてください。

### Unity

* baum2.unitypackageを展開してください。
    * 展開後、Baum2ディレクトリはどこに移動させても構いません。
* Baum2/Sample以下を参考に、好きなディレクトリに「BaumSprites」「BaumPrefabs」「BaumFonts」という空のファイルを作ってください。
    * BaumSprites: psdから生成されたSpriteを保存するディレクトリになります。
    * BaumPrefabs: psdから生成されたPrefabを保存するディレクトリになります。
    * BaumFonts: Prefabを作る際に使用するFontの参照先になります。
* psd上で使用するFontは、BaumFontsファイルを置いたディレクトリに置いておいてください。

## 使い方

### Photoshop上での操作

* psdを作ります。(psdの作り方参照)
* File -> Scripts -> Baum2を選択し、中間ファイルの出力先を選択します。

### Unity上での操作

* 生成された中間ファイルをBaum2/Importディレクトリ以下に投げ込みます。
* 自動的に「BaumPrefabs」を配置したディレクトリにprefabが出来上がります。
* 後は、Sample/Sample.csを参考にスクリプトからBaumUI.Instantiateで実行時に生成してください。

### psdの更新方法

* 同じように中間ファイルを生成後、Baum2/Importディレクトリ以下に投げ込むと、prefabが上書き更新されます。
    * この時、prefabのGUIDは変更されないためScriptに対する参照を張り直す必要はありません。

## psdの作り方

### 基本

基本的にPhotoshop上の1レイヤー = Unity上の1GameObjectになります。  
UIの一部をアニメーションさせたい場合などは、Photoshop上のレイヤーを分けておいてください。  

### Text

* Photoshop上の **Textレイヤー** は、Unity上でUnityEngine.UI.Textとして変換されます。
* フォントやフォントサイズ、色などの情報も可能な限りUnity側も同じように設定されます。

### Button

* Photoshop上の **名前が"Button"で終わるグループ** は、Unity上でUnityEngine.UI.Buttonとして変換されます。
* このグループ内で、最も奥に描画されるイメージレイヤーがクリック可能な範囲(UI.Button.TargetGraphic)に設定されます。

### Slider

* Photoshop上の **名前が"Slider"で終わるグループ** は、Unity上でUnityEngine.UI.Sliderとして変換されます。
* このグループ内で、名前がFillになっているイメージレイヤーがスライドするイメージ(UI.Slider.FillRect)になります。

### List

// TODO

### Pivot

* Photoshop上のルート直下にあるグループにのみ使えます。
* 名前の後ろに *@Pivot=TopRight* のようにPivotを指定できます。

### コメントレイヤー

レイヤー名の先頭に#をつけることで、出力されないレイヤーを作ることが出来ます。

## 動作確認環境

* Unity: Unity5.3.4p4
* PhotoshopScript: Adobe Photoshop CC 2015.5<commit_msg>Listの説明書いた<commit_after>baum2
=====

## 画像付きの紹介記事

http://qiita.com/kyubuns/items/b4c0c92e60754a8dc544

## 初期設定

### Photoshop

* Baum2/PhotoshopScript/Baum.jsをPhotoshopのPluginsディレクトリ以下にコピーしてください。

### Unity

* baum2.unitypackageを展開してください。
    * 展開後、Baum2ディレクトリはどこに移動させても構いません。
* Baum2/Sample以下を参考に、好きなディレクトリに「BaumSprites」「BaumPrefabs」「BaumFonts」という空のファイルを作ってください。
    * BaumSprites: psdから生成されたSpriteを保存するディレクトリになります。
    * BaumPrefabs: psdから生成されたPrefabを保存するディレクトリになります。
    * BaumFonts: Prefabを作る際に使用するFontの参照先になります。
* psd上で使用するFontは、BaumFontsファイルを置いたディレクトリに置いておいてください。

## 使い方

### Photoshop上での操作

* psdを作ります。(psdの作り方参照)
* File -> Scripts -> Baum2を選択し、中間ファイルの出力先を選択します。

### Unity上での操作

* 生成された中間ファイルをBaum2/Importディレクトリ以下に投げ込みます。
* 自動的に「BaumPrefabs」を配置したディレクトリにprefabが出来上がります。
* 後は、Sample/Sample.csを参考にスクリプトからBaumUI.Instantiateで実行時に生成してください。

### psdの更新方法

* 同じように中間ファイルを生成後、Baum2/Importディレクトリ以下に投げ込むと、prefabが上書き更新されます。
    * この時、prefabのGUIDは変更されないためScriptに対する参照を張り直す必要はありません。

## psdの作り方

### 基本

基本的にPhotoshop上の1レイヤー = Unity上の1GameObjectになります。  
UIの一部をアニメーションさせたい場合などは、Photoshop上のレイヤーを分けておいてください。  

### Text

* Photoshop上の **Textレイヤー** は、Unity上でUnityEngine.UI.Textとして変換されます。
* フォントやフォントサイズ、色などの情報も可能な限りUnity側も同じように設定されます。

### Button

* Photoshop上の **名前が"Button"で終わるグループ** は、Unity上でUnityEngine.UI.Buttonとして変換されます。
* このグループ内で、最も奥に描画されるイメージレイヤーがクリック可能な範囲(UI.Button.TargetGraphic)に設定されます。

### Slider

* Photoshop上の **名前が"Slider"で終わるグループ** は、Unity上でUnityEngine.UI.Sliderとして変換されます。
* このグループ内で、名前がFillになっているイメージレイヤーがスライドするイメージ(UI.Slider.FillRect)になります。

### List

* Photoshop上の **名前が"List"で終わるグループ** は、Unity上でBaum2.Listとして変換されます。
* このグループ内には、Itemグループと、Maskレイヤーが必須です。
    * Itemグループ内の要素がリストの1アイテムになります。
    * Maskレイヤーがそのリストにかかるマスクになります。
* 詳しくはサンプルをご覧ください。

### Pivot

* Photoshop上のルート直下にあるグループにのみ使えます。
* 名前の後ろに *@Pivot=TopRight* のようにPivotを指定できます。

### コメントレイヤー

レイヤー名の先頭に#をつけることで、出力されないレイヤーを作ることが出来ます。

## 動作確認環境

* Unity: Unity5.3.4p4
* PhotoshopScript: Adobe Photoshop CC 2015.5
{'fraction_non_alphanumeric': 0.10958178930651138, 'fraction_numerical': 0.017469560614081524, 'mean_word_length': 7.997619047619048, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 7, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6450820', 'n_tokens_mistral': 2689, 'n_tokens_neox': 2458, 'n_words': 139}