Open MasamiYitsuse opened 6 years ago
フレームバッファに直接レンダリングせず、テクスチャにレンダリングした場合に、元データのテクスチャの状況によってはパーツの継ぎ目が黒ずんでしまう場合があります。
Ver1.0.26以降でこれを解消する場合、テクスチャにレンダリングするアニメーションオブジェクトに対して下記の手順を行うようにしてください。
※下記の手順の最初にも書かれていますが、できる限り設定を変更するマテリアルは、大元のマテリアル(Assets/SpriteStudio6/Material/*)を直接変更しないようにしてください(元の環境に戻さなくてはならない場合に非常に苦労することになります)。 SS6PUモードでは、インポートしたデータのマテリアル(インポートしたフォルダのMaterialフォルダの中)は、大元のデータ(インポータ設定のAdvanced Options>Preset Materialに定義されているマテリアル……以降「インポータ設定マテリアル」)の複製になります。 UnityNativeモードでは、初期状態では、インポータ設定マテリアルで指定されている大元のマテリアルを直接使用しています。
※紹介はしていますが非推奨です。できるだけ2か3の方法を採るようにしてください。非推奨の理由としては、今後のバージョンアップなどでデータすべてを再インポートなどする時に手間がかかる可能性があるためです(一応インポート前のマテリアルの設定は維持するようにはなってはいますが……ヒューマンエラーを減らすためにも、アプリケーションにインポートすることが決定したデータは、できるだけバッチインポートリストなどで管理した方が、後の再インポートなどが楽になります)。
上記処置で通常時と何が変わるかの具体的な内容についてですが…… マテリアルの「Output PreMultiplied Alpha」をチェックすることによって、シェーダが出力するピクセル色が「乗算済アルファ」の色成分になります(計算としては、ピクセルのRGBの値に、Aを乗算した値になります)。
それとともに乗算済アルファの場合、すでに色成分にAが加味されている形となりますので、ブレンド時の合成式で描画ピクセルのアルファを使用している場合、それを加味しないように変更する必要があります。
Ver.1.0.23以前は、本機能は対応しておりませんので、Ver.1.0.26以降に更新するか・Ver.1.0.23以前用のシェーダを直接書き変える必要があります。
本件については、念のため、 #36 も参照して下さいますようお願い致します。
[補足] Ver.1.1.0以降でインポートしたSS6Playerモードのデータは、上記の再設定を行う必要はありません。 ※Ver.1.1.0以降では上記の設定を標準状態に変更しました。
フレームバッファに直接レンダリングせず、テクスチャにレンダリングした場合に、元データのテクスチャの状況によってはパーツの継ぎ目が黒ずんでしまう場合があります。
Ver1.0.26以降でこれを解消する場合、テクスチャにレンダリングするアニメーションオブジェクトに対して下記の手順を行うようにしてください。
※下記の手順の最初にも書かれていますが、できる限り設定を変更するマテリアルは、大元のマテリアル(Assets/SpriteStudio6/Material/*)を直接変更しないようにしてください(元の環境に戻さなくてはならない場合に非常に苦労することになります)。 SS6PUモードでは、インポートしたデータのマテリアル(インポートしたフォルダのMaterialフォルダの中)は、大元のデータ(インポータ設定のAdvanced Options>Preset Materialに定義されているマテリアル……以降「インポータ設定マテリアル」)の複製になります。 UnityNativeモードでは、初期状態では、インポータ設定マテリアルで指定されている大元のマテリアルを直接使用しています。
インポート後のデータを直接変更する場合
※紹介はしていますが非推奨です。できるだけ2か3の方法を採るようにしてください。非推奨の理由としては、今後のバージョンアップなどでデータすべてを再インポートなどする時に手間がかかる可能性があるためです(一応インポート前のマテリアルの設定は維持するようにはなってはいますが……ヒューマンエラーを減らすためにも、アプリケーションにインポートすることが決定したデータは、できるだけバッチインポートリストなどで管理した方が、後の再インポートなどが楽になります)。
インポートするデータ全てに適用する場合
バッチインポータのリストで設定する場合
上記処置で通常時と何が変わるかの具体的な内容についてですが…… マテリアルの「Output PreMultiplied Alpha」をチェックすることによって、シェーダが出力するピクセル色が「乗算済アルファ」の色成分になります(計算としては、ピクセルのRGBの値に、Aを乗算した値になります)。
それとともに乗算済アルファの場合、すでに色成分にAが加味されている形となりますので、ブレンド時の合成式で描画ピクセルのアルファを使用している場合、それを加味しないように変更する必要があります。
Ver.1.0.23以前は、本機能は対応しておりませんので、Ver.1.0.26以降に更新するか・Ver.1.0.23以前用のシェーダを直接書き変える必要があります。
本件については、念のため、 #36 も参照して下さいますようお願い致します。