XNA で Effect クラスを使用してテストを行い、同じパラメーター (以下のコードの MyParameter ) を複数回設定したいと考えています。
私のコードは次のとおりです。
[...]
//In Engine class
Effect ShaderEffect = GameEngine.Instance.Content.Load<Effect>(@"shaders\test");
spriteBatch.Begin(
SpriteSortMode.Deferred,
BlendState.AlphaBlend,
SamplerState.PointWrap,
DepthStencilState.Default,
RasterizerState.CullNone,
ShaderEffect);
[...]
//in drawable class
foreach(//big loop) {
ShaderEffect.Parameters["MyParameter"].SetValue(//random vector4);
spriteBatch.Draw(
SpriteSheet,
ScreenRect,
sprite_to_draw.Rectangle,
color,
rotation,
Scene.getInstance().Camera.Position,
sprite_to_draw.SpriteEffect,
layer
);
}
[...]
//In Engine class
spriteBatch.End();
[...]
しかし、私の画面では、パラメータ「MyParameter」が上書きされないように見えます。
上書きできますか?はいの場合、方法を教えてください。
ありがとう