From 0def42eb356b568012bbfd8f2e7b6da77ab2bf1e Mon Sep 17 00:00:00 2001 From: Masataka SUMI Date: Wed, 19 Jan 2022 16:18:44 +0900 Subject: [PATCH] =?UTF-8?q?MetallicRougness=20=E3=83=86=E3=82=AF=E3=82=B9?= =?UTF-8?q?=E3=83=81=E3=83=A3=E3=81=AE=20Export=20=E3=83=86=E3=82=B9?= =?UTF-8?q?=E3=83=88=E3=81=AE=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../GLTF/IO/Tests/MetallicRoughnessConverterTests.cs | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/Assets/VRMShaders/GLTF/IO/Tests/MetallicRoughnessConverterTests.cs b/Assets/VRMShaders/GLTF/IO/Tests/MetallicRoughnessConverterTests.cs index b43395072..4f3695c0f 100644 --- a/Assets/VRMShaders/GLTF/IO/Tests/MetallicRoughnessConverterTests.cs +++ b/Assets/VRMShaders/GLTF/IO/Tests/MetallicRoughnessConverterTests.cs @@ -131,7 +131,6 @@ namespace VRMShaders [Test] public void ExportMetallicSmoothnessOcclusion_Test() { - var textureSerializer = new EditorTextureSerializer(); var metallic = new Texture2D(4, 4, TextureFormat.ARGB32, false, true); var occlusion = new Texture2D(4, 4, TextureFormat.ARGB32, false, true); @@ -139,16 +138,23 @@ namespace VRMShaders var exporter = new TextureExporter(new EditorTextureSerializer()); Assert.AreEqual(-1, exporter.RegisterExportingAsCombinedGltfPbrParameterTextureFromUnityStandardTextures(null, 0, null)); } + { + var exporter = new TextureExporter(new EditorTextureSerializer()); + Assert.AreEqual(0, exporter.RegisterExportingAsCombinedGltfPbrParameterTextureFromUnityStandardTextures(metallic, 0, occlusion)); + Assert.AreEqual(0, exporter.RegisterExportingAsCombinedGltfPbrParameterTextureFromUnityStandardTextures(metallic, 0, occlusion)); + } { var exporter = new TextureExporter(new EditorTextureSerializer()); Assert.AreEqual(0, exporter.RegisterExportingAsCombinedGltfPbrParameterTextureFromUnityStandardTextures(null, 0, occlusion)); Assert.AreEqual(1, exporter.RegisterExportingAsCombinedGltfPbrParameterTextureFromUnityStandardTextures(metallic, 0, null)); } { + // NOTE: 部分集合が一致していても、Combined テクスチャとしては別物としてみなす. + // 正しい PBR Material の作り方をしていればまず該当しないエッジケースのため、ファイル容量増加を許容する. var exporter = new TextureExporter(new EditorTextureSerializer()); Assert.AreEqual(0, exporter.RegisterExportingAsCombinedGltfPbrParameterTextureFromUnityStandardTextures(metallic, 0, occlusion)); - Assert.AreEqual(0, exporter.RegisterExportingAsCombinedGltfPbrParameterTextureFromUnityStandardTextures(null, 0, occlusion)); - Assert.AreEqual(0, exporter.RegisterExportingAsCombinedGltfPbrParameterTextureFromUnityStandardTextures(metallic, 0, null)); + Assert.AreEqual(1, exporter.RegisterExportingAsCombinedGltfPbrParameterTextureFromUnityStandardTextures(null, 0, occlusion)); + Assert.AreEqual(2, exporter.RegisterExportingAsCombinedGltfPbrParameterTextureFromUnityStandardTextures(metallic, 0, null)); } } }