前提
Unityで画像を表示させるプログラムを書いています.
裏でpythonを実行しながらunityを実行します.
下記のコード中の"Analysis"という部分が画像の名前で,pythonで処理を行うと同じ名前で中身の違う画像が出力されます.
またこれはゲーム中のシーンの一つで,pythonはこのシーンの直前に画像を出力します.
実現したいこと
コードが呼び出されるたびに表示される画像が更新してほしい
発生している問題・エラーメッセージ
実行中にpythonが"Analysis"を出力し,"Analysis"が変化しても,ゲーム中に反映されず,ゲーム開始直後の"Analysis"しか表示できない
該当のソースコード
C#
using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.SceneManagement;using System.Threading.Tasks; public class Analysis : MonoBehaviour {public SpriteRenderer renders;string path = "Analysis";bool loaded = false; void Update() { if (Input.GetKeyDown("space")) { SceneManager.LoadScene("Title"); } if (Input.GetKey(KeyCode.Escape)) { Application.Quit(); } { if (loaded) return;else Load();}} void Load() { DelayMethod(); renders.sprite = (Sprite) Resources.Load(path, typeof(Sprite)); loaded = true; } }
試したこと
ゲームを実行中にプロジェクトのResources中の"Analysis"を確認したところ,書き換わっているのを確認できた.
そして書き換わっているのを確認すると,ゲーム内でも反映されて画像が書き換わる.
実行順の問題かと思い,delaymethodを用いて,unityが画像を表示するのを遅らせてみたが,挙動は変化せず
参考にしたサイト
https://web-dev.hatenablog.com/entry/unity/2d/load-image-at-runtime
0 コメント