このソースコードを追加して下さい。
// Add this in the LoadGraphicsContent method AFTER your ModelAnimator has been created
Effect myEffect = content.Load<Effect>("MyPaletteEffect");
foreach (ModelMesh mesh in model.Meshes)
{
for (int i = 0; i < mesh.MeshParts.Count; i++)
{
ModelMeshPart part = mesh.MeshParts[i];
BasicPaletteEffect effect = (BasicPaletteEffect)part.Effect;
part.Effect = myEffect.Clone(graphics.GraphicsDevice);
part.Effect.Parameters["BasicTexture"].SetValue(effect.Texture);
part.Effect.Parameters["View"].SetValue(view);
part.Effect.Parameters["Projection"].SetValue(projection);
effect.Dispose();
}
}
dwarfAnimator.InitializeEffectParams();
重要な行は「dwarfAnimator.InitializeEffectParams();」です。これは ModelAnimator クラスが再作成するために、エフェクトのパラメータへのハンドルに通知します。
最終更新:2008年06月01日 03:32