Los archivos Unity-Lua (archivos con extensión .lua) no pueden ser reconocidos por Unity

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.

Supongo que te gusta

Origin blog.csdn.net/qq_39574690/article/details/109696376
Recomendado
Clasificación