PngPlacement
0.6.0.0
ゲーム内にPNGを配置するプラグイン
★お約束
「MODはKISSサポート対象外です。」
「MODを利用するに当たり、問題が発生しても製作者・KISSは一切の責任を負いかねます。」
「カスタムメイド3D2を購入されている方のみが利用できます。」
「カスタムメイド3D2上で表示する目的以外の利用は禁止します。」
★不具合があったら
したらば改造スレに報告をしていただければ可能な範囲で対応します。
★情報
※ 重要 ※
Unity5対応版(0.6.0.0より)へアップデートする場合、「Config」フォルダ内にある「shaders」ファイルの
コピーを忘れないようにしてください。
この手順を怠ると正常に動作しません。
メイドが一人もいない状態で本プラグインの操作パネルを表示しても使用できません。
その状態で(ゲーム側によって)メイドが呼び出されても本プラグインは有効になりません。
いったん操作パネルを閉じて、再度表示する操作をすれば使用出来るようになります。
クリックによるPNGオブジェクト選択機能は、手前にあるPNGオブジェクトが優先的に選択されます。
透明PNGが手前にある場合、奥にあるPNGオブジェクトがクリック出来るように見えても
手前のPNGオブジェクトが選択されるので注意してください。
手前のPNGオブジェクトが邪魔なら一時的に無効化してください。
※手動コンパイル時のエラー(警告)について
「'UnityEngine.ParticleSystem.Particle.randomValue' は古い形式です」と表示されますが、
これは問題ありません。
通常使われていない機能(変数)を無理やり使っているためです。
Unityがバージョン5になったら動かないかも
★最近の更新
0.6.0.0
・本体バージョン1.41(Unity5版)に対応
Unity4版では動作しないおそれがあります。
機能の変更はありません。
インストール時に注意点があります。
0.5.0.0
・「効果」(エフェクト機能)を一新&名称を「PS」に変更
→従来の方式を廃止し、同一のオブジェクトを大量に飛ばす方式に変更
(パーティクルシステム)
→設定が非常に多いので別テキストで説明しています。
→設定が煩雑なわりに使い道はあまりないかもしれない
・メイドにアタッチ出来るポイントの追加
→胸部、股、左右の上腕(二の腕)、前腕、ふともも、すねの計10カ所。
→互換性維持のために設定の並び順がちょっといびつ
・円柱形の立体配置時に、上下面にテクスチャを描画しない配置方法を追加
→上下面にテクスチャが描画されなくなるほか、側面部分のテクスチャ描画方法を変更
→通常は一枚のテクスチャを前面と後面に二度描画するが、一枚でぐるっと描画するようになる
→アタッチ機能と併用すれば腕輪のような物も作成可能
→といっても着脱が面倒なので通常通り衣装MODで作ったほうがいい
・レンダーキューの初期値を3100から3200に変更
・初期の画像素材に6点追加
★前提
「UnityInjector」が正常に作動する事。
★インストール
1、「CM3D2.PngPlacement.plugin.dll」を有効な「UnityInjector」フォルダにコピーしてください。
2、「PngPlacement」フォルダを「UnityInjector\Config」内にコピーしてください。
※ 重要 ※
Unity5対応版(0.6.0.0より)へアップデートする場合、「Config」フォルダ内にある「shaders」ファイルの
コピーを忘れないようにしてください。
この手順を怠ると正常に動作しません。
※同梱の「CM3D2.PngPlacement.plugin.cs」はソースファイルです。
「UnityInjector」フォルダ内にある「CM3D2.PngPlacement.plugin.dll」がプラグイン本体です。
「UnityInjector」フォルダをゲーム本体の「UnityInjector」フォルダにそのまま上書きでOK。
※アップデートの場合は手順の2は不要です。
ただし簡単な素材の追加がある場合があるのでお好みでコピーしてください
★使い方
「P」キーを押下で操作パネルが表示されます。
ただし画面上にメイドがいないとパネルを操作しても効果は表れません。
操作パネル表示キーは変更可能です。
(後述)
★操作パネル説明
☆PNG/効果/F
操作パネルのモードを切り替えます。
・PNG
PNG配置
・効果
エフェクト機能
・F
ファイルの保存/読み込み
--- PNG ---
☆フォルダ分け
標準では「PngPlacement」フォルダ内とサブフォルダ内ある全てのPNG画像が選択対象になりますが、
これをオンにするとフォルダ毎に画像を選択出来るようになります。
オンにするとフォルダ選択ボタンが表示されます。
ただしサブフォルダ内のフォルダまではフォルダ分けはされません。
(ルートフォルダ内にあるフォルダのみが選択可能)
画像の種類ごとにフォルダを分けると便利です。
ただし本プラグインの設定を保存後に画像ファイルの場所を変更すると、
画像ファイルが見つからなくなるため読み込みに失敗し表示されなくなるので注意してください。
☆画像選択(「<」「>」ボタン)
配置したい画像を選択します。
画像の種類は自由に追加することができます。
(後述)
☆配置
画像を画面内(メイドの頭上)に配置します。
場所は任意に移動できます。
画面上にメイドがいないと配置できません。
☆形状選択ボタン(初期値:平面)
立体物を生成する場合に形状を選択します。
形状はPNGオブジェクト生成後に変更することはできません。
平面以外の立体物の場合、PNGオブジェクトのドラッグ移動は
オブジェクトのどこを掴んでも可能です。
☆六面UV(直方体選択時のみ)
直方体のテクスチャを六面別々に描画します。
実際にどのように描画されるかは同梱の「4_6menTest.png」をゲーム内に配置してみれば
すぐに分かると思います。
横幅を6分割した長さが一面あたりの横幅の長さとなります。
雑誌のような形状はゲーム内に配置後、スケールZの値を小さくすれば作れます。
この設定は配置後に変更はできません。
☆上下面なし(円柱選択時のみ)
円柱の上下面へのテクスチャの描画をせずに配置します。
その他、側面へのテクスチャ描画方法も変更されます。
通常の描画方法では一枚のテクスチャを前後面に二回描画する感じですが、
上下面なしで配置した場合は一枚のテクスチャで円柱全体を包み込むように描画します。
これにより、前面と後面とで違う表示が可能になります。
この設定は配置後に変更はできません。
☆照明の影響を受ける
配置したPNGオブジェクトは通常照明の影響は受けませんが、これをオンにして配置したPNGオブジェクトは
照明の角度によって影が発生します。
後から変更可能です。
☆追加のシェーダー
従来のシェーダーではPNGオブジェクト同士を交差させようとすると、必ずどちらか一方のオブジェクトが
前面に表示され、画像を突き抜ける表現はできませんでした。
追加のシェーダーは他の3DオブジェクトのようにPNGオブジェクト同士をめり込ませることができます。
従来のシェーダーと表現自体は同じです。
この設定は後から変更可能です。
※※ 立体オブジェクト時のシェーダーについて ※※
立体オブジェクトは専用のシェーダーを使用します。
1、照明の影響を受けない
2、照明の影響を受ける
3、照明の影響を受ける(追加のシェーダーオン)
1と2は平面の時とほぼ同じ描画となります。
1のシェーダーの利点は照明に影響されないことですが、場合によっては欠点となります。
2のシェーダーは照明によって明度が変わりますが、角度的に照明が全く当たらない面は
真っ黒になってしまう欠点があります。
3のシェーダーは1と2を合わせたような描画で、本来は影となる面を若干発光させます。
光の当たらない面を発光させることで、照明の影響を受けながら光の当たらない面の色や模様などが
描画されるようになります。
3のシェーダーの欠点は、自己発光しているため一定以下の明るさにはならないことです。
照明を真っ暗にしても1のシェーダーのように暗闇でも一定の明るさで描画されます。
必要に応じて立体オブジェクトの明度を下げるなどして対応してください。
☆リロード
画像フォルダ内のPNG画像を再検索します。
追加された画像があれば新たに読み込みます。
画像を削除、あるいは名前を変更した場合、その画像が現在ゲーム上に配置されているならば
そのPNGオブジェクトは削除されます。
既存の画像のサイズを変更した場合は正常に描画されないおそれがあります。
----
☆オブジェクト選択
画面上に配置したPNGオブジェクトを選択します。
☆ドラッグ開始
クリックすると、画面上に配置したPNGオブジェクトを移動可能にします。
現在選択されているPNGオブジェクトの中心に白い球が表示されますので、これを
ドラッグすることで任意の位置に移動できます。
立体オブジェクトの場合はオブジェクトのどこを掴んでもドラッグ移動が可能です。
☆⇔
クリックすると、PNGオブジェクトの移動が可能なボタンを表示します。
微調整や、PNGオブジェクトが他のオブジェクトに埋まって移動が困難になった場合などに便利です。
☆クリック選択
クリックすると、画面上に配置したPNGオブジェクトをクリックで選択する事ができます。
クリック選択モード中は選択中のPNGオブジェクトの周りに枠が表示されます。
☆「<」「>」ボタン
PNGオブジェクトのアタッチ対象となるメイドを選択します。
シーンの途中でメイドが追加された場合は画面上のメイド情報は更新されません。
いったん操作パネルを閉じ、再度表示させることで更新されます。
シーンの途中でメイドがいなくなった場合は自動で更新されます。
その際、いなくなったメイドにアタッチしていたPNGオブジェクトは削除されます。
☆アタッチ(デフォルト:アタッチなし)
メイドの頭や体などにPNGオブジェクトが追従します。
☆カメラ追従回転
メイドへのアタッチが有効な場合に、PNGオブジェクトの回転をカメラに追従します。
メイドにアタッチしていない通常のPNGオブジェクトと同様の動作をします。
この設定はメイドへのアタッチが無効の場合は表示されません。
☆カメラ追従回転停止
オンにすると、PNGオブジェクトのカメラに追従する回転を停止します。
☆カメラ相対位置固定
オンにすると、PNGオブジェクトの位置をカメラとの相対位置に固定します。
PNGオブジェクトは常にカメラ前に貼り付くことになります。
このモードがオンの場合、「カメラ追従回転停止」は無効となります。
☆左右反転
PNGオブジェクトを左右反転させます。
☆照明の影響を受ける
オンにするとPNGオブジェクトは照明の影響を受けます。
オフにすると照明の状態に関わらず常に一定の状態で表示されます。
☆追加のシェーダー
追加のシェーダーのオン/オフを切り替えます。
---これより以下の設定は右側に表示されます---
☆スケール
PNGオブジェクトを0〜3倍の間で拡大/縮小します。
☆スケール倍率
スケール倍率を1〜10倍の間で指定します。
最終的なサイズは「スケール×スケール倍率」となります。
☆スケールZ:X
選択中のPNGオブジェクトが立体物の場合に、奥行きのスケール(Z)を変更します。
奥行きはデフォルトで画像の横幅(X)と同じに設定されています。
「スケールZ」のボタンを押すことで基準を縦幅(Y)に変更します。
この設定は選択中のPNGオブジェクトが平面の場合には表示されません。
☆回転X/Y/Z
PNGオブジェクトを回転できます。
☆赤/緑/青/透
画像の色と透明度を変更します。
☆明度
画像の明度を下げます。
ブルーム効果で過度に発光してしまっている場合などに有効です。
☆レンダーキュー
オブジェクトの画面への描画順を指定します。
数値が大きいほど手前に描画されます。
衣装によってはレンダーキューがデフォルトの数値よりも高く設定されているものがあります。
PNGオブジェクトよりも高いと透けてしまうので、これで調整してください。
☆選択オブジェクト削除
選択中のPNGオブジェクトを削除します。
--- PS ---
※この項目は同梱の「パーティクルシステム(エフェクト機能)について」を参照してください。
--- F ---
ファイルの保存、読み込み関係
☆Target(初期値: PNG)
ファイルの保存/読み込み対象をPNG配置にするかPS(エフェクト)機能にするかを変更します。
☆「- - -」ボタン
ファイルに保存されている設定を読み込みます。
何も保存されていない状態では「- - - 」と表示されます。
☆新規保存
現在の設定を新しく保存します。
適当に分かりやすい名前を付けて保存してください。
☆上書き保存
現在選択されている設定に上書きして保存します。
何も選択されていなければ自動的に新規作成します。
☆名前変更
現在選択中の設定の名前を変更します。
☆削除
現在選択中の設定を削除します。
★PNG画像の追加
「UnityInjector\Config\PngPlacement」フォルダ内にPNG画像を配置することで、
本プラグインで使用可能な画像の種類を追加することができます。
サブフォルダも検索されます。
本プラグインの設定を保存した後にPNG画像の場所を変更するとファイルからの復元に失敗するので
注意してください。
画像サイズはどんなサイズでも読み込めるはずですが、大きすぎるとメモリを大きく消費するかもしれません。
※ゲーム起動中に追加/削除した場合は「リロード」ボタンで更新できます。
「PngPlacement\thumb」フォルダ内に追加したPNGファイルと同名のファイルを配置することで
操作パネル上に表示される画像(サムネイル画像)を指定することができます。
「thumb」フォルダ内に同名ファイルがない場合は「PngPlacement」内のPNGファイルを
サムネイルとして使用します。
サムネイル画像は大きな画像は必要ありません。
「64×64」くらいで十分です。
サムネイル画像は正方形画像でないとアスペクト比がおかしくなります。
エフェクト機能で使用出来る画像サイズはピクセル数が65536までです。
(256×256まで。300×200とかでもOK)
★キーコンフィグ(キーカスタマイズ)
以下の手順で操作パネル表示キーの「P」キーを変更可能です。
1、本プラグインのバージョン0.3.0.0以降を導入した状態でゲームを起動
2、ゲームを終了。
3、「UnityInjector\Config\PngPlacement」フォルダ内に「_PngPlacement.xml」というファイルが
作られるので、テキストエディタ等で開く。
4、以下のノード(タグ)を探す。
----
----
5、「val="○"」の○がキーの指定なので、変更したいキー名に書き変えて保存する。
6、ゲームを起動する。
ゲーム起動中に編集しても反映されません。
他の設定もおかしくなるおそれがあるので、ゲーム起動中は編集しないのが無難です。
キー名に使用出来る文字列は以下のページ下部の「Keys」を参考にして下さい。
(半角小文字で指定する事に注意)
http://docs.unity3d.com/ja/current/Manual/ConventionalGameInput.html
たとえば「F1」キーに変更する場合は
----
----
と書き換えます。
※エラーが出る場合は半角英数で入力されているか、上記URLで指定されている
書式通りかを確認してください。
★仕様
配置したPNG画像は、常にカメラのほうを向くように設定されています。
ただしY軸(上下方向)は回転しません。
そのため、カメラをPNGオブジェクトの上方/下方を通過するように動かした場合、
180度向きが変わります。
上もしくは下からの角度がきつくなるほど思い通りに表示できない場合があります。
※0.1.0.0より追従回転の停止機能があります。
PNGオブジェクトをクリックで選択する機能と、複数メイド撮影プラグインのIK(メイドをドラッグで動かすやつ)は
干渉するらしく、メイドの前面にPNGオブジェクトがあるとIK操作ができません。
その場合はPNGオブジェクトと被らないように視点移動するか、
一時的にPNGオブジェクトを無効にすることで対応してください。
特に透明PNGを使用している場合、何もないように見えて透明なPNGオブジェクトを
クリックしてしまっている場合があります。
★更新履歴
0.6.0.0
・本体バージョン1.41(Unity5版)に対応
0.5.0.0
・「効果」(エフェクト機能)を一新&名称を「PS」に変更
・メイドにアタッチ出来るポイントの追加
・円柱形の立体配置時に、上下面にテクスチャを描画しない配置方法を追加
・レンダーキューの初期値を3100から3200に変更
・初期の画像素材に6点追加
0.4.0.0
・複数のメイドに対するアタッチに対応
・立体オブジェクトの生成機能追加
・フォルダ毎に画像を選択する機能を追加
・画像の色、透明度を変更可能に
・操作パネルのレイアウトを変更
・「照明の影響を受ける」「追加のシェーダー」の変更時に明度がリセットされていたのを修正
・エフェクトに使用可能な画像がひとつもない場合に画像選択でフリーズしていたのを修正
・初期の画像素材に9点追加(立体用)
0.3.0.0
・設定の保存機能追加
・キーコンフィグ(キーカスタマイズ)機能追加
・PNGオブジェクトをメイドにアタッチする機能追加
・シェーダーを変更
・画像の明度を変更できるように
・「UnityInjector\Config\PngPlacement」以下のサブフォルダに存在するPNGも読み込むように変更
・「カメラ相対位置固定」がオンの時の回転方法を変更
・操作パネル上からPNGオブジェクトを移動可能に
・「回転Z」のみ最大値を180に変更
・操作パネルを分割
・エフェクト機能の画像選択で使用できない画像は除外するように
・初期の画像素材に1点追加
0.2.0.0
・シェーダーの種類を追加
・レンダーキューを変更できるように
・レンダーキューの初期値を3000から3100に変更
・PNGオブジェクトの無効機能追加
・PNGオブジェクトの位置をカメラとの相対位置で固定する機能を追加
・クリック選択モードのオフ→オン操作でPNGオブジェクト選択枠の表示がおかしくなっていたのを修正
・画像フォルダリロード後、PNGオブジェクト選択枠の表示がおかしかったのを修正
・初期の画像素材に3点追加
0.1.0.0
・PNGオブジェクトのカメラ追従回転を停止する機能を追加
・「サイズ」の名称を「スケール」に変更
・PNG画像のサイズをオブジェクト配置時の大きさに反映するように変更
・サイズ変更方法に「スケール倍率」を追加
・上記に伴い、「スケール(元・サイズ)」の最大値を5から3に変更
・エフェクト機能で使用出来る画像のサイズを「256×256」以下に限定
・フォルダ内の画像のリロード機能を追加
・PNGオブジェクト配置毎に画像分のメモリを消費していたのを改善
・クリック選択モード中、操作パネルとPNGオブジェクトが重なっている時に誤作動を起こしていたのを修正
・エフェクト選択ボタンの「<」の動作がおかしかったのを修正
・サムネイル画像が存在しない場合にコンソールにエラーを表示しないように変更
0.0.0.0
・初版