mirror of
https://github.com/vrm-c/UniVRM.git
synced 2026-08-20 01:25:45 -05:00
uri を前処理
This commit is contained in:
@@ -175,6 +175,10 @@ namespace UniGLTF
|
||||
RestoreOlderVersionValues();
|
||||
|
||||
FixMeshNameUnique();
|
||||
foreach(var image in GLTF.images)
|
||||
{
|
||||
image.uri = PrepareUri(image.uri);
|
||||
}
|
||||
FixTextureNameUnique();
|
||||
FixMaterialNameUnique();
|
||||
FixNodeName();
|
||||
@@ -230,6 +234,29 @@ namespace UniGLTF
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// image.uri を前理
|
||||
/// </summary>
|
||||
/// <param name="uri"></param>
|
||||
/// <returns></returns>
|
||||
public static string PrepareUri(string uri)
|
||||
{
|
||||
if (string.IsNullOrEmpty(uri))
|
||||
{
|
||||
return uri;
|
||||
}
|
||||
|
||||
if (uri.StartsWith("./"))
|
||||
{
|
||||
// skip
|
||||
uri = uri.Substring(2);
|
||||
}
|
||||
|
||||
// %20 to ' ' etc...
|
||||
var unescape = Uri.UnescapeDataString(uri);
|
||||
return unescape;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// gltfTexture.name を Unity Asset 名として運用する。
|
||||
/// ユニークである必要がある。
|
||||
|
||||
Reference in New Issue
Block a user