Установка параметров с помощью SetValue дает мне ошибки, в то время как прямая ссылка на член работает - PullRequest
0 голосов
/ 08 марта 2012

В XNA 4.0 с использованием подставки VS 2010 IDE ...

Следующая строка дает мне ошибку.

    public EffectManager(ContentManager myContManager, GraphicsDevice myGFX)
    {
        defaultEffect = new BasicEffect(myGFX);
        //defaultEffect.Parameters["TextureEnabled"].SetValue(true);
        myContent = myContManager;
    }

Однако, если я изменю это на:

    public EffectManager(ContentManager myContManager, GraphicsDevice myGFX)
    {
        defaultEffect = new BasicEffect(myGFX);
        defaultEffect.TextureEnabled = true;
        myContent = myContManager;
    }

Это работает! Почему я не могу установить его с помощью SetValue ??

1 Ответ

2 голосов
/ 08 марта 2012

Эти утверждения совсем не эквивалентны, используйте второе.

Элемент «Параметры» в Effect предоставляет список параметров шейдера для пользовательских эффектов. Я не уверен, что вы когда-либо должны использовать параметры для BasicEffect, ошибка может быть в том, что BasicEffect не предоставляет никаких параметров.

Кроме того, если второй блок кода работает, в чем проблема?

...