コード例 #1
0
        public void UpdateArrayTest(string arrayFile, string textureName, int indice)
        {
            var array         = texTool.Load(Module.PathToInputImages + arrayFile);
            var updateTexture = texTool.Load(Module.PathToInputImages + textureName);

            texTool.Update(array, updateTexture, indice);

            Assert.IsTrue(TestTools.ComputeSHA1(array.Data, array.DataSize).Equals(TestTools.GetInstance().Checksum["TextureTool_UpdateArray_" + arrayFile + "_" + indice + "_" + Path.GetFileName(textureName)]));
            //Console.WriteLine("TextureTool_UpdateArray_" + arrayFile + "_" + indice + "_" + Path.GetFileName(textureName) + "." + TestTools.ComputeSHA1(array.Data, array.DataSize));

            array.Dispose();
            updateTexture.Dispose();

            try
            {
                texTool.Update(array, updateTexture, array.ArraySize);
                Assert.IsTrue(false);
            }
            catch (TextureToolsException)
            {
                Assert.IsTrue(true);
            }
        }
コード例 #2
0
ファイル: TextureToolTest.cs プロジェクト: rock6tsai/paradox
        public void CreateAtlasTest()
        {
            string[] fileList = Directory.GetFiles(TestTools.InputTestFolder + "atlas/");
            var      list     = new List <TexImage>(fileList.Length);

            foreach (string filePath in fileList)
            {
                list.Add(texTool.Load(filePath));
            }

            var atlas = texTool.CreateAtlas(list);

            Assert.IsTrue(TestTools.ComputeSHA1(atlas.Data, atlas.DataSize).Equals(TestTools.GetInstance().Checksum["TextureTool_CreateAtlas"]));
            //Console.WriteLine("TextureTool_CreateAtlas." + TestTools.ComputeSHA1(atlas.Data, atlas.DataSize));

            atlas.Dispose();

            var another = texTool.Load(fileList[fileList.Length - 1]);

            texTool.Compress(another, PixelFormat.BC3_UNorm);
            list.Add(another);

            try
            {
                atlas = texTool.CreateAtlas(list);
                Assert.IsTrue(false);
            }
            catch (TextureToolsException)
            {
                Assert.IsTrue(true);
            }

            foreach (var image in list)
            {
                image.Dispose();
            }
        }
コード例 #3
0
ファイル: ArrayTexLibraryTest.cs プロジェクト: rohitshe/Code
        public void ExtractTest(string arrayFile, int indice)
        {
            TexImage array = TestTools.Load(dxtLib, arrayFile);

            var request = new ArrayExtractionRequest(indice, 16);

            library.Execute(array, request);
            array.CurrentLibrary = library;

            var extracted = request.Texture;

            //Console.WriteLine("ArrayTexLibrary_Extract_" + arrayFile + "." + TestTools.ComputeSHA1(extracted.Data, extracted.DataSize));
            Assert.IsTrue(TestTools.ComputeSHA1(extracted.Data, extracted.DataSize).Equals(TestTools.GetInstance().Checksum["ArrayTexLibrary_Extract_" + arrayFile]));

            extracted.Dispose();

            array.Dispose();
        }
コード例 #4
0
        public static void ExportMinMipMapTest(TexImage image, ITexLibrary library, int minMipMapSize)
        {
            String outputFile = library.GetType().Name + "_ExportTest_MinMipMapSize-" + minMipMapSize + "_" + image.Name;

            library.Execute(image, new ExportRequest(TestTools.TempFolder + outputFile, minMipMapSize));

            TexImage image2 = new TexImage();

            library.Execute(image2, new LoadingRequest(TestTools.TempFolder + outputFile, false));
            image2.CurrentLibrary = library;

            image.Update();
            image2.Update();

            Assert.IsTrue(image.Dimension == image2.Dimension);
            Assert.IsTrue(image2.SubImageArray[image2.SubImageArray.Length - 1].Width >= minMipMapSize);
            Assert.IsTrue(image2.SubImageArray[image2.SubImageArray.Length - 1].Height >= minMipMapSize);
            Assert.IsTrue(image.Width == image2.Width);
            Assert.IsTrue(image.Height == image2.Height);
            Assert.IsTrue(image.Depth == image2.Depth);
            Assert.IsTrue(image.ArraySize == image2.ArraySize);


            //Console.WriteLine("ExportMinMipMapTest_" + minMipMapSize + "_" + image.Name + "." + TestTools.ComputeSHA1(TestTools.TempFolder + outputFile));
            Assert.IsTrue(TestTools.ComputeSHA1(TestTools.TempFolder + outputFile).Equals(TestTools.GetInstance().Checksum["ExportMinMipMapTest_" + minMipMapSize + "_" + image.Name]));
            File.Delete(TestTools.TempFolder + outputFile);

            image2.Dispose();
        }
コード例 #5
0
        public static void ExportTest(TexImage image, ITexLibrary library, string file)
        {
            String outputFile = library.GetType().Name + "_ExportTest_" + file;

            library.Execute(image, new ExportRequest(TestTools.TempFolder + outputFile, 0));

            //Console.WriteLine("ExportTest_" + file + "." + TestTools.ComputeSHA1(TestTools.TempFolder + outputFile));
            Assert.IsTrue(TestTools.ComputeSHA1(TestTools.TempFolder + outputFile).Equals(TestTools.GetInstance().Checksum["ExportTest_" + file]));
            File.Delete(TestTools.TempFolder + outputFile);
        }
コード例 #6
0
        public static void GenerateNormalMapTest(TexImage image, ITexLibrary library)
        {
            library.Execute(image, new DecompressingRequest(false));
            var request = new NormalMapGenerationRequest(1);

            library.Execute(image, request);

            Assert.IsTrue(TestTools.ComputeSHA1(request.NormalMap.Data, request.NormalMap.DataSize).Equals(TestTools.GetInstance().Checksum["GenerateNormalMapTest_" + image.Name]));
            //Console.WriteLine("GenerateNormalMapTest_" + image.Name + "." + TestTools.ComputeSHA1(request.NormalMap.Data, request.NormalMap.DataSize));

            request.NormalMap.Dispose();
        }
コード例 #7
0
ファイル: TextureToolTest.cs プロジェクト: rock6tsai/paradox
        public void ExtractAllTest(string file1, string file2)
        {
            var list = new List <TexImage>();

            for (int i = 0; i < 5; ++i)
            {
                list.Add(texTool.Load(TestTools.InputTestFolder + file1));
                //Console.WriteLine("ArrayTexLibrary_ExtractAll_" + Path.GetFileName(file1) + "." + TestTools.ComputeSHA1(temp.Data, temp.DataSize));

                list.Add(texTool.Load(TestTools.InputTestFolder + file2));
                //Console.WriteLine("ArrayTexLibrary_ExtractAll_" + Path.GetFileName(file2) + "." + TestTools.ComputeSHA1(temp.Data, temp.DataSize));
            }

            var array = texTool.CreateTextureArray(list);

            var extracted = texTool.ExtractAll(array);

            Assert.IsTrue(list.Count == extracted.Count);

            for (int i = 0; i < array.ArraySize; ++i)
            {
                Assert.IsTrue(TestTools.ComputeSHA1(extracted[i].Data, extracted[i].DataSize).Equals(TestTools.GetInstance().Checksum["ExtractAll_" + list[i].Name]));
                extracted[i].Dispose();
            }

            array.Dispose();

            foreach (var image in list)
            {
                image.Dispose();
            }
        }
コード例 #8
0
ファイル: TextureToolTest.cs プロジェクト: rock6tsai/paradox
        public void ExtractTest(string arrayFile, int indice)
        {
            TexImage array = texTool.Load(TestTools.InputTestFolder + arrayFile);

            var extracted = texTool.Extract(array, indice);

            //Console.WriteLine("TextureTool_Extract_" + indice + "_" + arrayFile + "." + TestTools.ComputeSHA1(extracted.Data, extracted.DataSize));
            Assert.IsTrue(TestTools.ComputeSHA1(extracted.Data, extracted.DataSize).Equals(TestTools.GetInstance().Checksum["TextureTool_Extract_" + indice + "_" + arrayFile]));

            extracted.Dispose();
            array.Dispose();
        }
コード例 #9
0
ファイル: TextureToolTest.cs プロジェクト: rock6tsai/paradox
        public void ExtractAllAtlasTest(string atlasFile)
        {
            string[] fileList = Directory.GetFiles(TestTools.InputTestFolder + "atlas/");
            var      list     = new List <TexImage>(fileList.Length);

            foreach (string filePath in fileList)
            {
                list.Add(texTool.Load(filePath));
            }

            var atlas = texTool.CreateAtlas(list);

            var extracted = texTool.ExtractAll(atlas);

            Assert.IsTrue(extracted.Count == list.Count);

            foreach (var image in extracted)
            {
                Assert.IsTrue(TestTools.ComputeSHA1(image.Data, image.DataSize).Equals(TestTools.GetInstance().Checksum["ExtractAll_" + image.Name]));
                image.Dispose();
            }

            atlas.Dispose();

            foreach (var image in list)
            {
                image.Dispose();
            }
        }
コード例 #10
0
ファイル: TextureToolTest.cs プロジェクト: rock6tsai/paradox
        public void ExtractAtlasTest(string atlasFile, string textureName)
        {
            var atlas     = texTool.LoadAtlas(TestTools.InputTestFolder + atlasFile);
            var extracted = texTool.Extract(atlas, textureName, 16);

            Assert.IsTrue(TestTools.ComputeSHA1(extracted.Data, extracted.DataSize).Equals(TestTools.GetInstance().Checksum["TextureTool_ExtractAtlas_" + atlasFile + "_" + textureName]));
            //Console.WriteLine("TextureTool_ExtractAtlas_" + atlasFile + "_" + textureName + "." + TestTools.ComputeSHA1(extracted.Data, extracted.DataSize));

            extracted.Dispose();
            atlas.Dispose();
        }
コード例 #11
0
ファイル: TextureToolTest.cs プロジェクト: rock6tsai/paradox
        public void ProcessingTest(string source, string extension, Filter.Rescaling rescaleFiler, PixelFormat format)
        {
            var image = texTool.Load(TestTools.InputTestFolder + source);

            texTool.CorrectGamma(image, 2.2);

            texTool.Rescale(image, 0.5f, 0.5f, rescaleFiler);

            texTool.GenerateMipMaps(image, Filter.MipMapGeneration.Box);

            var normalMap = texTool.GenerateNormalMap(image, 4);

            texTool.CorrectGamma(normalMap, 1 / 2.2);

            string output = "TextureTool_ProcessingTest_NormalMap" + rescaleFiler + "_" + format + "_" + source + extension;

            texTool.Save(normalMap, TestTools.TempFolder + output, format, normalMap.Width / 2);
            normalMap.Dispose();

            Assert.IsTrue(TestTools.ComputeSHA1(TestTools.TempFolder + output).Equals(TestTools.GetInstance().Checksum[output]));
            //Console.WriteLine(output + "." + TestTools.ComputeSHA1(TestTools.TempFolder + output));
            File.Delete(TestTools.TempFolder + output);

            texTool.Flip(image, Orientation.Horizontal);

            texTool.CorrectGamma(image, 1 / 2.2);

            output = "TextureTool_ProcessingTest_" + rescaleFiler + "_" + format + "_" + source + extension;
            texTool.Save(image, TestTools.TempFolder + output, format, 4);
            image.Dispose();

            Assert.IsTrue(TestTools.ComputeSHA1(TestTools.TempFolder + output).Equals(TestTools.GetInstance().Checksum[output]));
            //Console.WriteLine(output + "." + TestTools.ComputeSHA1(TestTools.TempFolder + output));
            File.Delete(TestTools.TempFolder + output);

            image.Dispose();
        }
コード例 #12
0
ファイル: AtlasTexLibraryTest.cs プロジェクト: vol16bit/xenko
        public void ExtractTest(string atlasFile, string extractedName)
        {
            TexAtlas atlas = new TexAtlas(TexAtlas.TexLayout.Import(Module.PathToInputImages + Path.GetFileNameWithoutExtension(atlasFile) + TexAtlas.TexLayout.Extension), TestTools.Load(dxtLib, atlasFile));

            var request = new AtlasExtractionRequest(extractedName, 16);

            library.Execute(atlas, request);
            atlas.CurrentLibrary = library;

            var extracted = request.Texture;

            string nameWOExtension = Path.GetFileNameWithoutExtension(extractedName);

            //Console.WriteLine("AtlasTexLibrary_Extract_" + nameWOExtension + ".dds." + TestTools.ComputeSHA1(extracted.Data, extracted.DataSize));
            Assert.IsTrue(TestTools.ComputeSHA1(extracted.Data, extracted.DataSize).Equals(TestTools.GetInstance().Checksum["AtlasTexLibrary_Extract_" + nameWOExtension + ".dds"]));

            extracted.Dispose();

            atlas.Dispose();
        }
コード例 #13
0
ファイル: AtlasTexLibraryTest.cs プロジェクト: vol16bit/xenko
        public void ExtractAllTest(string directory)
        {
            string path = Module.PathToInputImages + directory;

            string[] fileList = Directory.GetFiles(path);
            var      list     = new List <TexImage>(fileList.Length);

            foreach (string filePath in fileList)
            {
                var temp = Load(fiLib, filePath);
                list.Add(temp);
                //Console.WriteLine("ExtractAll_" + Path.GetFileName(filePath) + "." + TestTools.ComputeSHA1(temp.Data, temp.DataSize));
            }

            var atlas = new TexAtlas();

            library.Execute(atlas, new AtlasCreationRequest(list));

            var request = new AtlasExtractionRequest(0);

            library.Execute(atlas, request);
            library.EndLibrary(atlas);

            Assert.IsTrue(list.Count == request.Textures.Count);

            foreach (var image in request.Textures)
            {
                Assert.IsTrue(TestTools.ComputeSHA1(image.Data, image.DataSize).Equals(TestTools.GetInstance().Checksum["ExtractAll_" + image.Name]));
                image.Dispose();
            }

            atlas.Dispose();

            foreach (var image in list)
            {
                image.Dispose();
            }
        }