前提・実現したいこと
ローカルフォルダにある画像を入れ替えることで、unityのwebgl上でオブジェクトのテクスチャを自由に変えられるようにしたいです。
試したこと
このページを参考にweb上でフォルダ(localhost)にある画像を参照して、オブジェクトに反映させました。
まず、以下のスクリプトをCubeにアタッチしてビルドしました。
C#
1using System.Collections; 2using System.Collections.Generic; 3using UnityEngine; 4 5public class SetTexture : MonoBehaviour 6{ 7 float seconds; 8 9 private string url_1 = "http://localhost/web/blue.png"; 10 private string url_2 = "http://localhost/web/green.png"; 11 12 void Update() 13 { 14 seconds += Time.deltaTime; 15 if (seconds >= 3) 16 { 17 StartCoroutine("Sample1"); 18 } 19 if (seconds >= 6) 20 { 21 StartCoroutine("Sample2"); 22 } 23 if (seconds >= 7) 24 { 25 seconds = 0; 26 } 27 28 } 29 30 IEnumerator Sample1() 31 { 32 WWW www = new WWW(url_1); 33 yield return www; 34 Renderer renderer = GetComponent<Renderer>(); 35 renderer.material.mainTexture = www.texture; 36 } 37 38 IEnumerator Sample2() 39 { 40 WWW www = new WWW(url_2); 41 yield return www; 42 Renderer renderer = GetComponent<Renderer>(); 43 renderer.material.mainTexture = www.texture; 44 } 45 46}
ビルドしたものをテストとして「XAMPP」というツールを使って起動させました。
画像はC:\xampp\htdocs\webに配置しています。
「XAMPP」を使って起動させたページは以下のようになります。
###発生している問題
このやり方ではビルド前に置いた画像でテクスチャの切り替えはできても、ビルド後に画像変更してwebgl上のテクスチャを変更することができませんでした。
かなり初心者的な質問ですが、やはりテクスチャもビルドを通さないと反映させることができないのでしょうか。
新規画像を使って定期的にテクスチャを更新したいので、そのたびにwebglのビルドをすると大変で、ビルドをせずに簡単にテクスチャの変更ができる方法があれば教えていただきたいです。
よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。