GUIActiveの表示切替を秒数指定可能なフェードでやりたい

18 views
Skip to first unread message

Gmax

unread,
Jul 27, 2025, 5:32:25 AMJul 27
to 宴ユーザーグループ
・宴のバージョン:4.1.8
・UnityのバージョンとOS:6000.0.49f1 Windows
・Unityの習熟度:初心者(コードは書けません)
----------------------
添付画像のようにキャラクター登場時に
肩書き&名前のオブジェクトをGUIActiveで表示しているのですが、
そのオブジェクトの表示ON/OFFを秒数指定できるフェードでやりたいのですが、どのようにすれば実現できるのか教えていただくことは可能でしょうか?

元々、肩書&名前のオブジェクトをSpriteとして表示しようとしたのですが、
表示タイミングでのカメラの倍率や位置が毎回異なっているため、GUIActiveで表示するようにした経緯があります。

スクリーンショット 2025-07-27 165327.png

マッドネスラボ

unread,
Jul 27, 2025, 1:35:57 PMJul 27
to 宴ユーザーグループ
GUIActiveコマンドで行うのは無理なので、拡張プログラムを作ってSendMessageByNameなどで呼び出す必要がでてきます。
ただ、セーブロードも可能な形にすると、少し面倒なプログラムを書く必要がでてきてしまいます。

>>元々、肩書&名前のオブジェクトをSpriteとして表示しようとしたのですが、
>> 表示タイミングでのカメラの倍率や位置が毎回異なっているため、GUIActiveで表示するようにした経緯があります。

もともとがSpriteコマンドを使っているのであれば、SpriteコマンドでUI用のカメラを使う設定にするほうが簡単かと思います。
SpriteをUI用のカメラで描画するには、レイヤーシートでUI用のカメラのLayerMaskを指定したものを使用します。

Layerシートに、UI用のカメラで描画されるレイヤーを追加する
  1. LayerシートにUI用のレイヤーを追加。
  2. 追加したレイヤーの「LayerMask」を「UI」(会話シーンで使用してるならUtageUI)に設定
ss_1028.png


Spriteコマンドの「Arg3」で、1で作成したレイヤー名を設定
SpriteコマンドでLayer指定をする形では解決できないようでしたら、サンプルの拡張プログラムを書きますのでご連絡ください。


2025年7月27日日曜日 18:32:25 UTC+9 Gmax:
Reply all
Reply to author
Forward
0 new messages