public void LinkedEffectBuildDefaultTest() { Test(() => { var linkedEffectContent = new LinkedEffectContent(); linkedEffectContent.EffectParts.Add(new PositionNormalTextureEffectPartContent()); linkedEffectContent.EffectParts.Add(new VertexTransformEffectPartContent()); linkedEffectContent.EffectParts.Add(new VertexShaderOutputEffectPartContent()); linkedEffectContent.EffectParts.Add(new BasicTextureEffectPartContent()); linkedEffectContent.EffectParts.Add(new PixelShaderOutputEffectPartContent()); var filename = BuildObject(linkedEffectContent, "LinkedEffectProcessor", null); RunTheBuild(); var linkedEffect = Content.Load <LinkedEffect>(filename); }); }
public void LinkedEffectBuildIncludeMaterialTest() { Test(() => { var linkedEffectContent = new LinkedEffectContent(); linkedEffectContent.EffectParts.Add(new PositionNormalTextureEffectPartContent()); linkedEffectContent.EffectParts.Add(new VertexTransformEffectPartContent()); linkedEffectContent.EffectParts.Add(new VertexShaderOutputEffectPartContent()); linkedEffectContent.EffectParts.Add(new MaterialEffectPartContent() { DiffuseColor = Vector3.One * 0.1f }); linkedEffectContent.EffectParts.Add(new BasicTextureEffectPartContent()); linkedEffectContent.EffectParts.Add(new PixelShaderOutputEffectPartContent()); var filename = BuildObject(linkedEffectContent, "LinkedEffectProcessor", null); RunTheBuild(); // Linked effect should not keep any material info var linkedEffect = Content.Load <LinkedEffect>(filename); Assert.AreEqual(Vector3.One * 0.1f, linkedEffect.Find <IEffectMaterial>().DiffuseColor); }); }