live2D (sdk가 6.5 미지원으로 sprite로 대응)

This commit is contained in:
2026-08-08 22:13:54 +09:00
parent 9ce6930772
commit 8a4a001fe0
4278 changed files with 287426 additions and 18 deletions

View File

@@ -0,0 +1,81 @@
/**
* Copyright(c) Live2D Inc. All rights reserved.
*
* Use of this source code is governed by the Live2D Open Software license
* that can be found at https://www.live2d.com/eula/live2d-open-software-license-agreement_en.html.
*/
using Live2D.Cubism.Framework.MotionFade;
using System;
using System.Collections.Generic;
using System.IO;
using UnityEditor;
namespace Live2D.Cubism.Editor.Deleters
{
/// <summary>
/// Handles importing of Cubism models.
/// </summary>
[Serializable]
public sealed class CubismFadeAssetDeleter : CubismDeleterBase
{
#region Unity Event Handling
/// <summary>
/// Registers deleter.
/// </summary>
[InitializeOnLoadMethod]
// ReSharper disable once UnusedMember.Local
private static void RegisterDeleter()
{
CubismDeleter.RegisterDeleter<CubismFadeAssetDeleter>(".fade.asset");
}
#endregion
#region CubismDeleterBase
/// <summary>
/// Deleters the corresponding asset.
/// </summary>
public override void Delete()
{
var directoryName = Path.GetDirectoryName(AssetPath).ToString();
var modelDir = Path.GetDirectoryName(directoryName).ToString();
var modelName = Path.GetFileName(modelDir).ToString();
var fadeMotionListPath = Path.GetDirectoryName(directoryName).ToString() + "/" + modelName + ".fadeMotionList.asset";
var fadeMotionList = AssetDatabase.LoadAssetAtPath<CubismFadeMotionList>(fadeMotionListPath);
if (fadeMotionList == null)
{
return;
}
var deleteAssetName = Path.GetFileName(AssetPath).Replace(".asset", "");
var instanceIds = new List<int>();
var fadeMotionObjects = new List<CubismFadeMotionData>();
for (var i = 0; i < fadeMotionList.CubismFadeMotionObjects.Length; ++i)
{
var fadeMotion = fadeMotionList.CubismFadeMotionObjects[i];
if (fadeMotion == null || fadeMotion.name == deleteAssetName)
{
continue;
}
instanceIds.Add(fadeMotionList.MotionInstanceIds[i]);
fadeMotionObjects.Add(fadeMotion);
}
fadeMotionList.MotionInstanceIds = instanceIds.ToArray();
fadeMotionList.CubismFadeMotionObjects = fadeMotionObjects.ToArray();
}
#endregion
}
}