SpriteSheetTests CreateMaterial Method Delta Engine Documentation

Namespace: DeltaEngine.Rendering2D.Tests
Assembly: DeltaEngine.Rendering2D.Tests (in DeltaEngine.Rendering2D.Tests.dll) Version: 1.1.1.0 (1.1.1)
Syntax

public void CreateMaterial()
Examples

[Test]
public void CreateSpriteSheetAnimationWithNewTexture()
{
    var imageData = new ImageCreationData(new Size(8, 8)) { BlendMode = BlendMode.Opaque };
    var image = ContentLoader.Create<Image>(imageData);
    FillImage(image);
    var animationData = new SpriteSheetAnimationCreationData(image, 2, new Size(2, 2));
    var texturedShader = ContentLoader.Create<Shader>(
        new ShaderCreationData(ShaderFlags.Position2DTextured));
    var newMaterial =
        ContentLoader.Create<SpriteSheetAnimation>(animationData).CreateMaterial(texturedShader);
    new Sprite(newMaterial, Rectangle.HalfCentered);
}
[Test, CloseAfterFirstFrame]
public void CreateTwoSpriteSheetsWithSameDataResultsInSameAnimation()
{
    var imageData = new ImageCreationData(new Size(8, 8)) { BlendMode = BlendMode.Opaque };
    var image = ContentLoader.Create<Image>(imageData);
    var animationData1 = new SpriteSheetAnimationCreationData(image, 2, new Size(2, 2));
    var animationData2 = new SpriteSheetAnimationCreationData(image, 2, new Size(2, 2));
    Assert.IsTrue(animationData1.Equals(animationData2));
    var animation1 = ContentLoader.Create<SpriteSheetAnimation>(animationData1);
    var animation2 = ContentLoader.Create<SpriteSheetAnimation>(animationData2);
    Assert.AreEqual(animation1.Image, animation2.Image);
    var texturedShader = ContentLoader.Create<Shader>(
        new ShaderCreationData(ShaderFlags.Position2DTextured));
    Assert.AreEqual(animation1.CreateMaterial(texturedShader),
        animation2.CreateMaterial(texturedShader));
}
See Also