

以前にも同様の質問を行いましたが、解決されず改めて質問させていただきます。

Unity初心者です。

内容としては今立方体オブジェクトをfor分で量産してマスのように配置し  
その中の幾つか立方体オブジェクトの色を変更しようとしているのですが、  
Update()内で色を変える処理を行っているにもかかわらず、スルーされます。

ただ他にdebug.Logの処理を行うと正しく処理されます

また、色を取得してLogで出すと変えた色の情報が出力されます  
しかし、画面上では変わっていません泣

ソース内容は以下になります。  
実行結果の画像も貼っておきます。

原因が分かりました方、いらっしゃいましたら  
ご教授お願いいたします。

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

[code]

    using UnityEngine;
    //using UnityEngine.UI;
    using System.Collections;
    
    public class BattleMain : MonoBehaviour{
    
        protected int _sceneTask;
        public GameObject prefab = null;
        public GameObject[,] mass = new GameObject[15,15];
        int isk;
        int jsk;
        // Use this for initialization
        void Start () {
            // 配置元のオブジェクト指定 
            GameObject stageObject = GameObject.FindWithTag("Stage");
            //// タイル配置
            for(int i = 0; i < 15 ; i ++) {
                for(int j = 0; j < 15 ; j ++) {
    
    
                    Vector3 tile_pos = new Vector3(
                        0 + prefab.transform.localScale.x * i,
                        0,
                        0 + prefab.transform.localScale.z * j
    
                        );
    
                    if(prefab != null){
                        // プレハブの複製 
                        GameObject instant_object = Instantiate(prefab,tile_pos, Quaternion.identity) as GameObject;
                        // 生成元の下に複製したプレハブをくっつける 
                        instant_object.transform.parent = stageObject.transform;
                        mass[i,j] = instant_object;
                    }
                }
            }
            int Ivent = Random.Range(4, 7);//ランダムにイベントマスの設置
            for(int p = 0; p < Ivent;p++){
            int iRandNum = Random.Range(0, 14);
            int jRandNum = Random.Range(0, 14);
            mass[iRandNum,jRandNum].GetComponent<Renderer>().material.color = new Color(0.2f, 0.8f, 0.9f, 0.5f);
            }
        }
    
    
        // Update is called once per frame
    
        void Update(){
    
            mass[5,5].GetComponent<Renderer>().material.color = new Color(0.0f, 0.0f, 0.0f, 0.0f);
            Debug.Log ("黒くなるはずのマス［5,5］の色は"+mass [5, 5].GetComponent<Renderer> ().material.color);
            mass[1,5].GetComponent<Renderer> ().material.color = new Color (0.2f, 0.8f, 0.9f, 0.5f);
            Debug.Log ("青になるはずのマス［1,5］の色は"+mass [1, 5].GetComponent<Renderer> ().material.color);
        }
    
    
    }
    
[/code]

・実行前  
[![実行前](https://i.stack.imgur.com/L8LSU.jpg)](https://i.stack.imgur.com/L8LSU.jpg)

・実行後  
[![実行結果](https://i.stack.imgur.com/v6Or5.jpg)](https://i.stack.imgur.com/v6Or5.jpg)


CC BY-SA 3.0
2016-04-29T07:33:43.180
24443
2016-07-27T12:49:19.393
2016-07-27T12:49:19.393
15185
14333
question
unity3d
Update()の中で色を変える処理（material.color）を行っても正しく処理されない件について


自己解決いたしました。  
オブジェクトにセットするスクリプトでのｐlefabの設定にミスがありました。


CC BY-SA 3.0
2016-04-30T08:58:48.437
24474
2016-04-30T08:58:48.437
14333
24443
answer