Проблема в Unity с отсутствующей текстурой с помощью метода Instantiate (Resources.load) - PullRequest
2 голосов
/ 13 июня 2019

У меня проблема, когда создать экземпляр куба и установить его текстуру.Все хорошо, но когда я пытаюсь переместить куб, он теряет свою текстуру.Где я не прав с моим кодом?

Сначала я пытался загрузить текстуру только с помощью Resources.Load, но теперь, посмотрев форумы, изменил ее на Instantiate (Resources.Load).Но это все равно мне не помогает.

void Start()
{
    texture = Resources.Load<Texture>("images/" + "(" + lastPic.ToString() + ")");
    textureClone = Instantiate(texture);
    pic = Instantiate(pic4, new Vector3(0, 1, 16), Quaternion.identity);
    pic.GetComponent<MeshRenderer>().material.mainTexture = textureClone;
}

// Update is called once per frame
void Update()
{
    if (GameObject.FindGameObjectsWithTag("GreyCube").Length == 0 && !flag)
    {
        pic.transform.position += velocity * Time.deltaTime;
        pic.transform.localScale = new Vector3( 18.8f, 11, 0);
    }
}

Проблема в том, что когда куб движется, он теряет свою текстуру.Становится серым кубом.

1 Ответ

0 голосов
/ 17 июня 2019

Хорошо, я исправил это.Проблема была с этой строкой:

pic.transform.localScale = new Vector3 (18.8f, 11, 0);

Последняя цифра 0 должна быть 1, например:

pic.transform.localScale = new Vector3 (18.8f, 11, 1);

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...