文本數據載入Unity(Excel轉ScriptableObject)

本文介紹方案:文本內容由外部Excel表格讀入Unity轉化爲ScriptableObject對象

01.ScriptableObject簡介

ScriptableObject是一個數據容器,可用於保存大量數據,而與類實例無關。ScriptableObject存儲的數據可通過引用直接使用不會在項目中產生數據副本。ScriptableObject不能附加到GameObject上,它是作爲項目的Assets存在的。所以ScriptableObject主要用於存儲那些不會改動的數據。

簡單使用方法

在腳本中創建類時使其繼承於ScriptableObject,由於是作爲項目資源存在,所以只能在項目的資源面板中去創建。

[CreateAssetMenu()]
public class TestClass : ScriptableObject
{
    //具體內容
}

02.Excel導入

導入Excel表格需要用到一個工具:Unity-QuickSheet

下載地址:https://github.com/L1247/Unity-QuickSheet-ByEXCEL

將工具導入項目後,新建一個文件夾(名字隨意)用於存放文本資源,在這個文件夾下新建“Editor”、“Runtime”兩個文件夾(爲導入工具需要)。

然後,在此文件夾內右鍵打開面板創建一個工具文件

得到如下的一個文件

設置導入文件的信息

導入後進行文件生成的設置

注意:在Editor中有個腳本會報錯,需要手動改一下

文件生成完後需要導入產生最後的ScriptableObject文件

注意:如果excel文件中表格有空的,編輯器會報錯,但可以不用管。

最後得到的ScriptableObject文件可在面板中查看

如此就將Excel文件轉換爲項目中使用的ScriptableObject文件

 

 

 

 

 

 

發佈了18 篇原創文章 · 獲贊 2 · 訪問量 4046
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章