キャラ画像が白く反転表示されてしまう件

93 views
Skip to first unread message

Admin User

unread,
Oct 20, 2022, 1:09:21 PM10/20/22
to 宴ユーザーグループ
Unityの習熟度: Unityとしては3年程度か
宴のバージョン: 3.7.4
UnityのバージョンとOS: Unity2020.3.25f1 Mac
Xcode: 14.0.1
iOS:16.0.2

お世話になっております。
現在Unityを使用してスマホ向けの(Android、iOS)のゲームを開発しておりまして、
会話シーンをADVパートを宴に呼び出す形で使用しております。

Androidでは想定通りの挙動をしているのですが、
iOSで挙動がおかしいので質問させてください。
現在のバージョンになって初回のiOSビルドで発生いたしました。

想定外の挙動とはiOSでは画面タップ押下時(新しい台詞の表示の際)
キャラに切り替え時にキャラ画像が白く反転されてしまう事象となります。
シナリオとソースコードは共通のものを使用しております。
発生頻度は全シナリオで発生となります。

過去ログを探しましたが類似事象がない為、
環境依存、特に使用している宴のバージョンが古いのが理由と類推しています。
一部の宴のソースを軽微な部分ですが独自修正している為、
宴最新版での検証はまだ行っていない形です。
事象の実機のスクリーンショットを添付いたします。

お手数ですが対応方法のご教授をお願いいたします。

添付資料:
 宴問い合わせ_221020_1.png
  反転してしまっている時のスクリーンショット
 宴問い合わせ_221020_2.png
  後続のテキスト(正常時)スクリーンショット

宴問い合わせ_221020_1.png宴問い合わせ_221020_2.png

以上、よろしくお願いします。

マッドネスラボ

unread,
Oct 20, 2022, 6:30:12 PM10/20/22
to 宴ユーザーグループ
機種依存ということは、おそらくはシェーダーの不具合だと思います。
キャラクターの切り替え時に起きるのであれば、
過去に修正した不具合で1つ心当たりがあります。
https://groups.google.com/g/utageuser/c/SZ8moGTO_-M/m/vWXYqmKYAAAJ

修正後のシェーダーのみをパッケージしたファイルを、この返信にも添付しました。
そのバージョンの宴(3.7.4)であればそのまま適用できると思いますので、プロジェクトに適用して動作確認してみてください。

ただ、ご報告にある不具合とは起きている現象が違うので、修正されないかもしれません。
もし修正されないようでしたら、下記の詳しい状況も教えていただけるでしょうか。
・テクスチャ書き込みやダイシングを使っていいるか
・不具合の起きるタイミングの詳細
 フェードイン・・・何もないところで新しくキャラクターを描画するとき
 クロスフェード・・・すでに表示されているものがあるものに重ねて新しく表示する場合、表情変えやパターン変えなども含む
 どちらのタイミングで起きるか
・アセットバンドルを使っているか
 (シェーダーを更新したら、アセットバンドルの更新も必要なので、更新してから確認お願いします) 
・不具合の起きた機種(起きない機種がもしあればそれも)
 iPhone SE(第3世代)、iPhone 13 などのバージョンをお願いします。
・シェーダーや、それを操作するソースコードを改変しているか
・宴を最新版にアップデートしても同じ現象が発生するか


2022年10月21日金曜日 2:09:21 UTC+9 jils...@gmail.com:

マッドネスラボ

unread,
Oct 20, 2022, 6:36:12 PM10/20/22
to 宴ユーザーグループ
追記です。

>現在のバージョンになって初回のiOSビルドで発生いたしました。
現在のバージョンというのは、プロジェクトのビルドバージョンでしょうか?
その前後で、Unityや、XCodeのバージョンも変わっているでしょうか?
また、不具合の発生する機種( iOS 端末 )であっても、前回のバージョンでは不具合は発生しなかったのでしょうか。



2022年10月21日金曜日 7:30:12 UTC+9 マッドネスラボ:

マッドネスラボ

unread,
Oct 20, 2022, 10:08:43 PM10/20/22
to 宴ユーザーグループ
さらに 追記 です。
すみません、添付ファイルを忘れていました。



2022年10月21日金曜日 7:36:12 UTC+9 マッドネスラボ:
FixShaderCrossFade.unitypackage

Admin User

unread,
Oct 21, 2022, 12:51:16 AM10/21/22
to 宴ユーザーグループ
ご回答ありがとうございます。

今後の対応予定の記載と、質問頂いた内容の返答をいたします。

■今後の対応予定
①>修正後のシェーダーのみをパッケージしたファイルを、この返信にも添付しました。
 >そのバージョンの宴(3.7.4)であればそのまま適用できると思いますので、プロジェクトに適用して動作確認してみてください
②>・宴を最新版にアップデートしても同じ現象が発生するか
上記の実施は本日中に作業します。
障害対応として本日中に下記①②それぞれの順番で対応を行う予定です。
また動作確認は本日のかなり遅い時間になる見込みです。

■質問頂いた内容
>・テクスチャ書き込みやダイシングを使っていいるか
宴上では特に使っておりません。
基本的に宴はキャラの画像描画と台詞の使用となります。
ADVパートして呼び出している以外は、基本的な使い方をしています。

>・不具合の起きるタイミングの詳細
クロスフェードです。
初回のキャラ表示の際には画像描画の際には発生していません。

>アセットバンドルを使っているか
使用していません。
開発が一通り終わったら対応検討でした。

>・不具合の起きた機種(起きない機種がもしあればそれも)
発生した機種はiPhone 12Proです。
他の機種について発生するかは別途確認します。
ただ、Mac上のシュミレータでも正常に表示出来ていませんでした。
その為、端末固有の問題ではなく、iOS上の描画系の問題と考えています。
発生していないのは前述の通りAndroid系全般です(何台かで確認しています)
Androidで主要なバグの対応をして大きな問題が解消したので、iOS側の検証フェーズに入って
本件が発覚した形です。

>・シェーダーや、それを操作するソースコードを改変しているか
画像描画周りは改変しておりません。サウンド周りの修正です。

>現在のバージョンというのは、プロジェクトのビルドバージョンでしょうか?

>その前後で、Unityや、XCodeのバージョンも変わっているでしょうか?
>また、不具合の発生する機種( iOS 端末 )であっても、前回のバージョンでは不具合は発生しなかったのでしょうか。
失礼いたしました、説明が不足しておりました。
こちら側で開発しているプロジェクト自体のビルドバージョンとなります。
最後にiOS側で実機したバージョンは21年9月で、その際は発生しておりませんでした。
当時の環境は、iPhoneとMacの機種は同一です。
しかし、Unity2019、Xcodeは不明ですが当時の最新と記憶していますので、それぞれ変更しています。
また、宴のバージョンがかなり古いのは、スパイラル開発的なスタイルで長期開発しているのが原因です。

以上、よろしくお願いします。

2022年10月21日金曜日 11:08:43 UTC+9 マッドネスラボ:

マッドネスラボ

unread,
Oct 21, 2022, 3:34:09 AM10/21/22
to 宴ユーザーグループ
詳細なご報告ありががとうございます。助かります。

不具合があるのがクロスフェード時なので、やはりシェーダーが原因の可能性が高いです。(特に他に影響しそうな要素もなさそうです)
Unityバージョンの影響を受けてしまうシェーダーの書き方になっていたのかもしれません。
お時間のある時に修正パッケージのほうを確認してみてください。

2022年10月21日金曜日 13:51:16 UTC+9 jils...@gmail.com:

Admin User

unread,
Oct 21, 2022, 11:27:25 AM10/21/22
to 宴ユーザーグループ
お疲れ様です。

動作検証が完了しましたので報告です。

宴は主要で使用しているアセットですので、
当初の予定を変更して、一気に宴側を最新版にアップデートして動作検証したところ、
無事に問題の事象が解決出来ました。

その為、ご指摘のシェーダーが使用している環境の組み合わせによって、
当事象が発生していたのではないかと考えております。
お騒がせいたしました。

添付資料:
 宴問い合わせ_221022.PNG
  宴を最新版にした後での実機のスクリーンショットとなります。

宴問い合わせ_221022.PNG

以上、よろしくお願いします。


2022年10月21日金曜日 16:34:09 UTC+9 マッドネスラボ:

マッドネスラボ

unread,
Oct 21, 2022, 5:49:28 PM10/21/22
to 宴ユーザーグループ
了解しました。
ご連絡ありがとうございます。


2022年10月22日土曜日 0:27:25 UTC+9 jils...@gmail.com:

Admin User

unread,
Oct 23, 2022, 10:36:39 AM10/23/22
to 宴ユーザーグループ
お疲れ様です。
たびたび申し訳ありません。

本件、iOS版では事象が解決したので問い合わせを終了とさせて頂ましたが、
日が経たず、同じ箇所で類似のエラーが発生していまいましたので、
本問い合わせで追加質問させてください。
別チケットに切り出しが必要でしたら、ご指摘下さい。

表示がおかしいのは今まで正常に表示出来ていたAndroid側での事象となります。
エラーの発生タイミングはクロスフェードで、
前回はキャラが一瞬だけ白く反転表示されていたが、
今回は画像切り替え時に、矩形で紫に塗りつぶされた画像が一瞬だけ、表示されてしまう形です。
(恐らくキャラの画像ファイルと考えています)
クロスフェードされる度、毎回発生。初回のキャラ描写の時は問題ありません。

前回問い合わせから、アプリアイコンの設定やアプリ本編のパズルパートのPG修正のみで、
画面描画関係のUnity・スクリプト・宴の変更は無し。


前回の問い合わせ以降、作業内容的に下記を実施しました。
①iOS側のプラットフォームで検証と上記のアイコン設定等を実施
②Androidにプラットフォームを変更・ビルド
③Android実機で検証で発覚となります
 Androidの動作検証はXperia5Ⅲ・Pixie5aで確認しております。

またエラー発覚後iOSにプラットフォームを再変更し、
iOS実機で検証しましたが、問題無いことを確認しております。

お手数ですが対応方法のご教授をお願いします。

宴で使用している画像ファイルのUnity上の設定が、
プラットフォーム変更したことによって、
何らかが置きかわってしまった系の事象を疑っています。

添付資料:
 宴問い合わせ_221023_1.png
  Pixie5aのエラーのスクリーンショット
 宴問い合わせ_221023_2.png
  Pixie5aの正常ののスクリーンショット
  1の少しあとに取得したスクリーンショットです

宴問い合わせ_221023_1.png宴問い合わせ_221023_2.png

以上、よろしくお願いします
2022年10月22日土曜日 6:49:28 UTC+9 マッドネスラボ:

マッドネスラボ

unread,
Oct 23, 2022, 10:27:43 PM10/23/22
to 宴ユーザーグループ
私の方で、宴のサンプルプロジェクトを実行してみましたが、不具合を再現できませんでした。
Unity2020.3.25f1(Windows版)でビルド
Utageバージョン:3.11.7
検証デバイス:Pixcel3a


>矩形で紫に塗りつぶされた画像が
この現象は、Unityの描画エラーが起きたときに発生するもので、
マテリアルやシェーダーが壊れていたり、ロードできない状態だと発生しやすいです。
前回(白色になる)のようにシェーダー内のプログラムにバグがあるのではなく、シェーダー自体が行方不明などの状態になっている可能性が高いです。

アセットバンドルを使っていると起きやすいのですが、アセットバンドルを使っていないということですので、原因は別にありそうです。

宴のシェーダーは、Utage\Resources\Utage-Shader 以下にあります。
フォルダの場所を変えてしまったりすると、ビルドから除外される危険性があります。
特に、Resourcesというフォルダ名は変えないでください。
(ただ、これが原因であればAndroid以外でもエラーが起きると思いますので、原因はもっと別にあるかもしれません)

もしくは、Unity自体の不具合かもしれません。
Unityのバージョンを上げることで解決するかもしれません。
Unity2020.3であれば、現在はUnity2020.3.40が最新のようです。

もしくは、ビルド環境の問題かもしれません。
私の方では、UnityはWIndows版を使用して検証しましたが、Mac版では未検証です。

プロジェクト固有のビルド設定やレンダリング設定によって、起きているのかもしれません。
Unityのバージョンアップなどでも解決できない場合、
もし可能であれば、不具合を再現可能なプロジェクトを送信していただければ、私の方でも検証してみます。


2022年10月23日日曜日 23:36:39 UTC+9 jils...@gmail.com:

Admin User

unread,
Oct 24, 2022, 9:44:59 AM10/24/22
to 宴ユーザーグループ
個別メール宛てになってしまいましたので、
備忘のため転記します。
これから検証作業始めます。


以下、メールと同文です。
お疲れ様です。

検証頂きありがとうございました。

シェーダー自体が行方不明などの状態になっている可能性が高いです。
宴のシェーダーかUnity自体が壊れている、ないしは、ビルド環境周りの問題と思われる形ですね。
お話を伺う限り、Unityのプロジェクト自体に何らかのトラブルが起きていそうという印象を感じました。

こちらのUnityの開発環境ですが、プロジェクト丸ごと日毎でバックアップ取得しています。その為、ここ数日のデータは存在しています。

ですので、一旦、Androidが正常起動していた、過去のバックアップから復元した後、
もう一度宴のバージョンアップを行うなどして、エラーの原因箇所の切り分けを行う方向で考えております。

不具合を再現可能なプロジェクトを送信していただければ、私の方でも検証してみます。
バックアップからの戻し等で解消しない場合、上記にてご相談させて下さい。
検証は今日、明日まで位に終わらせるスケジュール感で考えております。

以上、よろしくお願いします。

2022年10月24日月曜日 11:27:43 UTC+9 マッドネスラボ:

Admin User

unread,
Oct 24, 2022, 12:10:17 PM10/24/22
to 宴ユーザーグループ
お疲れ様です。
藤田です。

確認作業したのは 下記となりますが、症状は改善していません。
・22日のバックアップからプロジェクトを戻して確認
・Unityを20.3.41f1にバージョンアップ
・宴の再ダウンロード・インポート
・画像ファイルを削除・取り込み直し

>不具合を再現可能なプロジェクトを送信していただければ、私の方でも検証してみます。
https://madnesslabo.net/utage/?page_id=9349
上記を元に作成してみました。
最新版のプロジェクトでUnityと宴を最新版にした状態で、
HOME〜ADVパートが表示される箇所の抜粋です。
プロジェクトの作りなど諸々ですが、人様にお見せする想定ではないので作りはキレイではありません。。

大変お手数ですがご確認をお願いします。

添付資料:
ドロップボックスに下記をアップロードいたしました。
 ATP2V2Utage.unitypackage
  プロジェクト
 ATP2V2.apk
  最新版のAPKファイルです。

以上、よろしくお願いします。
2022年10月24日月曜日 22:44:59 UTC+9 Admin User:

マッドネスラボ

unread,
Oct 24, 2022, 8:48:36 PM10/24/22
to 宴ユーザーグループ
プロジェクトの送信ありがとうごございます。
こちらでも不具合を再現できました。
正常に動くプロジェクトと、プロジェクト設定等を比較して検証したところ、
ProjecetSetting>Player > Androidタブ > OtherSettigs> Rendering で
GrphicAPIの設定を変えたら直りました。

「Auto Grahics API」にチェックを入れるか
ss_0556.png

GraphicsAPIを手動設定する場合は、OpenGLES3も使えるようにしてください。
ss_0555.png


不具合のでるプロジェクトでは「OpenGLES2」だけが設定されていたので、
おそらくOpenGLES3対応のデバイスでOpenGLES2で動かそうとして、何らかの不具合が出ていたのだと思います。
(以前のバージョンでは動いてたということですので、おそらくUnityの問題だと思います)

「Auto Grahics API」にチェックを入れるのが良いとは思うのですが、詳しくはUnityのドキュメントなどを確認してください。


2022年10月25日火曜日 1:10:17 UTC+9 jils...@gmail.com:

Admin User

unread,
Oct 24, 2022, 11:38:57 PM10/24/22
to 宴ユーザーグループ
お疲れ様です。

ご確認頂き、誠にありがとうございます。
>ProjecetSetting>Player > Androidタブ > OtherSettigs> Rendering で
>GrphicAPIの設定を変えたら直りました。
取り急ぎの動作検証の報告です。
ご指摘のAuto Grahics APIにチェックを入れましたらAndroidの正常に動作した事をいたしました。

他の機種含め、細かな動作検証は本日の遅い時間に確認する予定です。

>「Auto Grahics API」にチェックを入れるのが良いとは思うのですが、詳しくはUnityのドキュメントなどを確認してください。
参考資料の連携ありがとうございます。
該当箇所のこちら側の確認漏れですね、大変失礼いたしました。

以上、よろしくお願いします

2022年10月25日火曜日 9:48:36 UTC+9 マッドネスラボ:

Admin User

unread,
Oct 25, 2022, 2:23:06 PM10/25/22
to 宴ユーザーグループ
お疲れ様です。

動作検証が終わりましたので報告となります。
Android・iOS実機それぞれでの正常動作を確認いたしました。

本件、調査頂きありがとうございました。

以上、よろしくお願いします


2022年10月25日火曜日 12:38:57 UTC+9 Admin User:

マッドネスラボ

unread,
Oct 25, 2022, 10:19:00 PM10/25/22
to 宴ユーザーグループ
ご確認ありがとうございます。
了解しました。


2022年10月26日水曜日 3:23:06 UTC+9 jils...@gmail.com:
Reply all
Reply to author
Forward
0 new messages