Original Post
Hey all, I am starting off adding a simple particle engine to my project. It works great, and I am able to alpha blend without a problem.
However, now I am moving beyond the basics and want to get into realism. The most common fire effect I have seen is the blend method where if two identical colors are drawn over one another the resulting pixel is drawn lighter, thus giving the white hot center with the darkening fringes... I have played with all my Renderstate properties, but it seems that no matter what I change, I can not get ANY type of change in the rendering of particles. I am using managed DirectX 9, C#. Also using the sprite class, specifically the Draw2D method. Here is the renderstate code. // set device states newDevice.RenderState.Lighting = true; newDevice.RenderState.Ambient = System.Drawing.Color.Gray; //Render States newDevice.RenderState.AlphaBlendEnable = true; newDevice.RenderState.AlphaFunction = Compare.Greater; newDevice.RenderState.AlphaTestEnable = true; newDevice.RenderState.DestinationBlend = Blend.InvSourceAlpha; newDevice.RenderState.SourceBlend = Blend.SourceAlpha; newDevice.RenderState.DiffuseMaterialSource = ColorSource.Material; //Color blending ops newDevice.TextureState[0].ColorOperation = TextureOperation.Modulate; newDevice.TextureState[0].ColorArgument1 = TextureArgument.TextureColor; newDevice.TextureState[0].ColorArgument2 = TextureArgument.Diffuse; //set the first alpha stage to texture alpha newDevice.TextureState[0].AlphaOperation = TextureOperation.SelectArg1; newDevice.TextureState[0].AlphaArgument1 = TextureArgument.TextureColor; On a side note, the ambient color doesn't do anything either. Any help would be appreciated,
