Manual oficial: descripción del manual oficial de ScriptedImporter
Solución:
Coloque los siguientes archivos en la carpeta Editor y espere a que Unity se actualice automáticamente o vuelva a abrir Unity para reconocerlos.
using System.IO;
using UnityEditor.Experimental.AssetImporters;
using UnityEngine;
[ScriptedImporter(1, ".lua")]
public class LuaImporter : ScriptedImporter
{
public override void OnImportAsset(AssetImportContext ctx)
{
//读取文件内容
var luaTxt = File.ReadAllText(ctx.assetPath);
//转成TextAsset(Unity可识别类型)
var assetsText = new TextAsset(luaTxt);
//将对象assetText添加到导入操作(AssetImportContext)的结果中。
ctx.AddObjectToAsset("main obj", assetsText);
//将对象assetText作为导入操作的主要对象。
ctx.SetMainObject(assetsText);
}
}
De esta manera, se puede reconocer correctamente como lo mismo que el archivo TextAsset. Puede escribir t: TextAsset en la barra de búsqueda de la ventana Proyecto para buscar todos los archivos .lua, y el paquete AB se puede empaquetar normalmente.