public void SetPixel() { Texture1D tex = new Texture1D(2, 4, 32); tex.SetPixel(0, new ColorRGBA(1, 2, 3, 4)); Assert.AreEqual(1, tex.GetChannel(0, 0)); Assert.AreEqual(2, tex.GetChannel(0, 1)); Assert.AreEqual(3, tex.GetChannel(0, 2)); Assert.AreEqual(4, tex.GetChannel(0, 3)); }
public void BilinearFilter_DoesMirror() { int width = 2; int bitDepth = 32; Texture1D tex = CreateXFilledTexture(width, bitDepth, TEXTURE_WRAP.MIRROR); Assert.AreEqual(0.5f, tex.GetChannel(-0.5f, 0)); Assert.AreEqual(0.25f, tex.GetChannel(-0.25f, 0)); Assert.AreEqual(0.0f, tex.GetChannel(0.0f, 0)); Assert.AreEqual(0.25f, tex.GetChannel(0.25f, 0)); Assert.AreEqual(0.5f, tex.GetChannel(0.5f, 0)); Assert.AreEqual(0.75f, tex.GetChannel(0.75f, 0)); Assert.AreEqual(1.0f, tex.GetChannel(1.0f, 0)); Assert.AreEqual(0.75f, tex.GetChannel(1.25f, 0)); Assert.AreEqual(0.5f, tex.GetChannel(1.5f, 0)); }
public void GetChannel_DoesClamp() { int width = 4; int bitDepth = 32; Texture1D tex = CreateXFilledTexture(width, bitDepth, TEXTURE_WRAP.CLAMP); Assert.AreEqual(0, tex.GetChannel(-2, 0)); Assert.AreEqual(0, tex.GetChannel(-1, 0)); Assert.AreEqual(0, tex.GetChannel(0, 0)); Assert.AreEqual(1, tex.GetChannel(1, 0)); Assert.AreEqual(2, tex.GetChannel(2, 0)); Assert.AreEqual(3, tex.GetChannel(3, 0)); Assert.AreEqual(3, tex.GetChannel(4, 0)); Assert.AreEqual(3, tex.GetChannel(5, 0)); }
public void GetChannel_DoesMirror() { int width = 4; int bitDepth = 32; Texture1D tex = CreateXFilledTexture(width, bitDepth, TEXTURE_WRAP.MIRROR); tex.Wrap = TEXTURE_WRAP.MIRROR; Assert.AreEqual(2, tex.GetChannel(-2, 0)); Assert.AreEqual(1, tex.GetChannel(-1, 0)); Assert.AreEqual(0, tex.GetChannel(0, 0)); Assert.AreEqual(1, tex.GetChannel(1, 0)); Assert.AreEqual(2, tex.GetChannel(2, 0)); Assert.AreEqual(3, tex.GetChannel(3, 0)); Assert.AreEqual(2, tex.GetChannel(4, 0)); Assert.AreEqual(1, tex.GetChannel(5, 0)); }
public void GetChannel() { int width = 65; int channels = 3; int bitDepth = 32; Texture1D tex = CreateIndexFilledTexture(width, channels, bitDepth); for (int x = 0; x < width; x++) { for (int c = 0; c < channels; c++) { int idx = (x * channels) + c; Assert.AreEqual(idx, tex.GetChannel(x, c)); } } }