unity tag script prefab from create unity3d assets

unity3d - tag - unity static inspector



¿Cómo evitar dos archivos en la vista del proyecto al crear un importador personalizado en Unity3D? (2)

NOTA: Estoy lanzando una red más amplia que Unity Answers, mi pregunta original se puede encontrar here .

Creé un importador ProTools CueSheet. Utiliza OnPostprocessAllAssets() para detectar archivos en el proyecto que tengan una extensión .cuesheet . A continuación, ejecuta esos archivos cuesheet a través de mi analizador. Esto genera un ScriptableObject que luego se convierte en un activo a través de Database.CreateAsset() .

El problema es que esto me deja dos archivos, el cuesheet original y el nuevo activo generado. ¿Hay alguna forma en que pueda generar el activo de tal manera que la hoja de cálculo original actúe como el activo, de la misma forma que lo hacen las texturas o los archivos FBX?

public class CueSheetPostProcessor : AssetPostprocessor { static string extension = ".cuesheet"; static void OnPostprocessAllAssets(string[] importedAssets, string[] deletedAssets, string[] movedAssets, string[] movedFromAssetPaths) { foreach (string assetPath in importedAssets) { if (assetPath.EndsWith(extension, StringComparison.OrdinalIgnoreCase)) { string newPath = assetPath + ".asset"; Session session = CueImporter.Load(assetPath); AssetDatabase.CreateAsset(session, newPath); AssetDatabase.SaveAssets(); } } } }


En lugar de crear un nuevo activo, ¿ha intentado usar AssetDatabase.AddObjectToAsset en su lugar? Un archivo en Activos puede "contener" múltiples activos y múltiples tipos de activos. Al importar un archivo .fbx, el resultado en el inspector de proyecto es varias cosas: un árbol de GameObject (es decir, un prefabricado), algunos modelos, tal vez un equipo de perforación, y así sucesivamente. Todos estos están "contenidos" en el .fbx procesado


CueSheet un PropertyDrawer para la clase CueSheet clase Serializable , de modo que acepte .cueSheet TextAsset o la ruta al archivo .cueSheet y cree una instancia de la clase CueSheet y asígnela o CueSheet .