Je ne sais pas quelle langue vous utilisez. Je suppose que c'est une question XNA.
Est-il possible d'utiliser un pixel shader dans un sprite?
Oui, vous pouvez charger un fichier de shaders (HLSL, jusqu'à et y compris le modèle de shader 3 XNA) et appeler SpriteBatch à son utilisation.
Si vous postez un code d'exemple, il nous sera plus facile de voir si quelque chose n'est pas configuré correctement. Cependant, il semble que vous ayez les choses dans le bon ordre. Je voudrais vérifier le code du shader.
Votre code d'application devrait ressembler à ceci:
Effect effect;
effect = Content.Load<Effect> ("customeffect"); //load "customeffect.fx"
effect.CurrentTechnique = effect.Techniques["customtechnique"];
effect.Begin();
foreach (EffectPass pass in effect.CurrentTechnique.Passes)
{
pass.Begin();
spriteBatch.Begin(SpriteBlendMode.AlphaBlend, SpriteSortMode.Immediate, SaveStateMode.None);
spriteBatch.Draw(texture, Vector2.Zero, null, Color.White, 0, new Vector2(20, 20), 1, SpriteEffects.None, 0);
spriteBatch.End();
pass.End();
}
effect.End();
Merci pour votre réponse, mais je suis en utilisant DirectX Managed, il est donc possible d'utiliser dans MDX? – Firoz
Oui, ne vois pas pourquoi il ne devrait pas. Pourquoi ne pas l'essayer? –