MaxSoldier
Messages postés289Date d'inscriptiondimanche 10 août 2003StatutMembreDernière intervention28 février 2009
-
18 févr. 2007 à 03:01
MaxSoldier
Messages postés289Date d'inscriptiondimanche 10 août 2003StatutMembreDernière intervention28 février 2009
-
18 févr. 2007 à 19:15
Bonjour !
Je code en ce moment, un moteur 3D et je me suis attaqué à la gestion des ombres portées. J'ai enfin réussi à projeter les ombres de n'importe quel model sur un plan, mais le problème, c'est que je n'arrive pas a activer l'alpha blending pour rendre l'ombre semi transparente.
Pourtant, à l'initialisation j'ai :
<hr size="2" width="100%" /> graphics.GraphicsDevice.RenderState.SourceBlend = Blend.SourceAlpha;
graphics.GraphicsDevice.RenderState.DestinationBlend = Blend.InverseSourceAlpha;
graphics.GraphicsDevice.RenderState.AlphaBlendEnable = true;
graphics.PreferMultiSampling = true;
graphics.ApplyChanges();
<hr size="2" width="100%" />
Dans ma classe custom mesh ( en gros, un générateur de mesh, on a juste à lui fournir les sommets ), je dessine avec un BasicEffect et j'ai activé :
<hr size="2" width="100%" />BasicShader.VertexColorEnabled = true;
<hr size="2" width="100%" />
Et même en faisant :
<hr size="2" width="100%" />BasicShader.Alpha = 30f;
<hr size="2" width="100%" />
Rien y fait, un ombre noire bien opaque, et donc pas du tout, mais alors pas du tout naturelle, on dirais un plan qui est juste scalé et décalé de mon plan d'origine.
Merci d'avance +++