【使用環境】
Windows10
Unity 2019.4.22f1
【質問内容】
現在2DのImageをプレハブ化し、スクリプトから動的に作成したインスタンスの
マスの色を変える事をしているのですが
これをテクスチャとして3Dモデルに貼り付けたいのですがレンダーテクスチャを使えば
可能と調べて分かったのですが具体的にどうやるのかがイマイチ分からず
悩んでいる為、質問させて頂きました。
レンダーテクスチャ用のカメラの追加はせずに可能なら実装したいと思っています。
(※添付画像参照)
・プレハブからインスタンス作成のスクリプト
public class RenderImage : MonoBehaviour { [SerializeField] private GameObject _ParentObj; // *) 座標用 [SerializeField] private GameObject _ImagePrefab1; [SerializeField] private GameObject _ImagePrefab2; private readonly int NUM_X = 5; private readonly int NUM_Y = 5; // Start is called before the first frame update void Start() { CreatePrefabInstance(); } // Update is called once per frame void Update() { } private void CreatePrefabInstance() { for (int iy = 0; iy < NUM_Y; ++ iy) { for (int ix = 0; ix < NUM_X; ++ ix) { // int _index = (ix + NUM_Y * iy); GameObject _object = null; // 一列毎に元にするPrefabを変える(奇数列、偶数列) if (((iy % 2) == 0)) { _object = Instantiate(_ImagePrefab1, _ParentObj.transform); }else{ _object = Instantiate(_ImagePrefab2, _ParentObj.transform); } // サイズは2つとも「100 x 100」 var image_w = _object.GetComponent<Image>().rectTransform.rect.width; var image_h = _object.GetComponent<Image>().rectTransform.rect.height; // 座標設定 var pos_x = ((360.0f) + image_w * ix); var pos_y = ((720.0f) + (image_h * iy) * -1.0f); _object.transform.position = new Vector3(pos_x, pos_y, 0.0f); } } } }
何卒、宜しくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。