mirror of
https://github.com/vrm-c/UniVRM.git
synced 2026-09-09 20:38:56 -05:00
GltfDuplicatedNameConversionRule.FixNames
This commit is contained in:
@@ -204,6 +204,16 @@ namespace UniGLTF
|
||||
}
|
||||
}
|
||||
|
||||
// `v0.129.0` GlbLowLevelParser.Parse からこちらに移動
|
||||
public static void FixNames(glTF GLTF)
|
||||
{
|
||||
FixMeshNameUnique(GLTF);
|
||||
FixTextureNameUnique(GLTF);
|
||||
FixMaterialNameUnique(GLTF);
|
||||
FixNodeName(GLTF);
|
||||
FixAnimationNameUnique(GLTF);
|
||||
}
|
||||
|
||||
public static void FixNodeNameUnique(glTF GLTF)
|
||||
{
|
||||
var m_uniqueNameSet = new HashSet<string>();
|
||||
|
||||
@@ -155,11 +155,7 @@ namespace UniGLTF
|
||||
await awaitCaller.Run(() =>
|
||||
{
|
||||
// `v0.129.0` GlbLowLevelParser.Parse からこちらに移動
|
||||
GltfDuplicatedNameConversionRule.FixMeshNameUnique(GLTF);
|
||||
GltfDuplicatedNameConversionRule.FixTextureNameUnique(GLTF);
|
||||
GltfDuplicatedNameConversionRule.FixMaterialNameUnique(GLTF);
|
||||
GltfDuplicatedNameConversionRule.FixNodeName(GLTF);
|
||||
GltfDuplicatedNameConversionRule.FixAnimationNameUnique(GLTF);
|
||||
GltfDuplicatedNameConversionRule.FixNames(GLTF);
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@@ -35,7 +35,7 @@ namespace UniGLTF
|
||||
var parser = new GlbLowLevelParser("Test", data.ToGlbBytes());
|
||||
using (var parsed = parser.Parse())
|
||||
{
|
||||
GltfDuplicatedNameConversionRule.FixTextureNameUnique(parsed.GLTF);
|
||||
GltfDuplicatedNameConversionRule.FixNames(parsed.GLTF);
|
||||
|
||||
Assert.AreEqual("FooBar", parsed.GLTF.textures[0].name);
|
||||
// NOTE: 大文字小文字が違うだけの名前は、同一としてみなされ、Suffix が付く。
|
||||
|
||||
@@ -69,6 +69,7 @@ namespace VRM
|
||||
var path = AliciaPath;
|
||||
using (var data = new GlbFileParser(path).Parse())
|
||||
{
|
||||
GltfDuplicatedNameConversionRule.FixNames(data.GLTF);
|
||||
var vrmImporter = new VRMImporterContext(new VRMData(data), null);
|
||||
var materialParam = new BuiltInVrmMaterialDescriptorGenerator(vrmImporter.VRM).Get(data, 0);
|
||||
Assert.AreEqual("VRM/MToon", materialParam.Shader.name);
|
||||
|
||||
@@ -61,6 +61,7 @@ namespace VRM
|
||||
new ArraySegment<byte>(Array.Empty<byte>())
|
||||
))
|
||||
{
|
||||
GltfDuplicatedNameConversionRule.FixNames(data.GLTF);
|
||||
var vrm = new glTF_VRM_extensions
|
||||
{
|
||||
materialProperties = new List<glTF_VRM_Material>
|
||||
@@ -124,6 +125,7 @@ namespace VRM
|
||||
new ArraySegment<byte>(Array.Empty<byte>())
|
||||
))
|
||||
{
|
||||
GltfDuplicatedNameConversionRule.FixNames(data.GLTF);
|
||||
var vrm = new glTF_VRM_extensions
|
||||
{
|
||||
materialProperties = new List<glTF_VRM_Material>
|
||||
|
||||
@@ -23,6 +23,7 @@ namespace UniVRM10
|
||||
var migratedBytes = MigrationVrm.Migrate(File.ReadAllBytes(AliciaPath));
|
||||
using (var data = new GlbLowLevelParser(AliciaPath, migratedBytes).Parse())
|
||||
{
|
||||
GltfDuplicatedNameConversionRule.FixNames(data.GLTF);
|
||||
|
||||
var matDesc = new BuiltInVrm10MaterialDescriptorGenerator().Get(data, 0);
|
||||
Assert.AreEqual("Alicia_body", matDesc.Name);
|
||||
|
||||
Reference in New Issue
Block a user