Почему настройка текстуры блока свойств материала не имеет никакого эффекта? - PullRequest
0 голосов
/ 05 апреля 2020

Почему вызов SetTexture на MaterialPropertyBlock не оказывает никакого влияния в игре? Если я позвоню GetTexture на MaterialPropertyBlock, я смогу увидеть , что его текстура меняется на то, что я установил. Однако внешний вид объекта, к которому прикреплен этот скрипт, никогда не меняется.

private Renderer renderer;
private MaterialPropertyBlock materialPropertyBlockl;
private Texture[] textures;

// ...

private int Frame
    {
        get
        {
            return frame;
        }
        set
        {
            // ...

            renderer.GetPropertyBlock(materialPropertyBlock);
            materialPropertyBlock.SetTexture("_MainTex", textures[frame]);
            renderer.SetPropertyBlock(materialPropertyBlock);
        }
    }

// ...

public void Initialise(string model)
{
    renderer = GetComponent<Renderer>();
    materialPropertyBlock = new MaterialPropertyBlock();

    textures = Resources.LoadAll<Texture>(model);

    // ...
}

1 Ответ

0 голосов
/ 05 апреля 2020

Было два Renderer с - один прикреплен к объекту, а другой - к многоугольнику внутри объекта. Я обновлял не тот.

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