XNA EffectMaterial Параметр отсутствует

Я пытаюсь создать источники света с тенями на моделях с кожей в моем проекте XNA.

Я нашел отличный образец для этого Дж. Колуна https://jcoluna.wordpress.com/2011/07/16/xna-light-pre-pass-skinned-meshes/

Однако у меня есть большая проблема: в этом примере в SkinnedMesh.cs в методе OnDraw он устанавливает значение параметра "Bones", но когда я пытаюсь это сделать, у меня возникает исключение, которое утверждает, что параметр "Bones" не существует. После отладки я обнаружил, что у меня есть 13 параметров в EffectMaterial, но в образце 14 параметров, один из которых отсутствует "Кости", и из-за этого я не могу нарисовать свои модели со скинами с эффектами освещения и тени:(

Есть ли возможность добавить отсутствующий параметр? EffectMaterial является частью Microsoft.Xna.Framework.Graphics, поэтому я понятия не имею, почему у меня нет этого параметра...

РЕДАКТИРОВАТЬ:

У меня есть исключение в методе

protected override void OnDraw(ModelMeshPart subMesh, GraphicsDevice graphicsDevice, Effect effect)
{
    effect.Parameters["Bones"].SetValue(boneMatrixes);
}

Сообщение об исключении: "Произошло необработанное исключение типа" System.NullReferenceException "в MyRenderer.dll"

Я уверен, что параметр "Кости" является проблемой, потому что он даже не существует.

0 ответов

Другие вопросы по тегам