2016-01-03 170 views
0

在使用C#的Unity 3D中可以創建一個從文件夾而不是從精靈表中隨機加載精靈的數組嗎?如果是,我用什麼代碼來引用文件夾?從我所能找到的,精靈通常被編碼爲使用精靈表使用random.range與數組加載,而不是實際訪問文件夾。即使與此類似,我已經能夠找到的唯一的事情是在這裏:Unity 3D:從文件夾加載精靈

http://docs.unity3d.com/ScriptReference/Resources.html

但你可以用這個你只能從標題爲「資源」文件夾中的「資產」裝入文件夾中看到,可能我錯了,但這似乎也只能用遊戲對象完成。 (?)

+0

更具體一點,你應該看看['Resouces.Load'](http://docs.unity3d.com/ScriptReference/Resources.Load.html)。您可以從Unity項目中的*任何*資源文件夾加載名爲'Resources'的資源文件夾。如果你想在遊戲運行時從某個任意位置加載這是另一回事 - 請查看[從磁盤上的png/jpg文件加載紋理文件](http://answers.unity3d.com/questions/432655/loading- text-on-disk.html)上的Unity答案。 (無論哪種方式,我認爲你應該編輯清晰的問題!) – 31eee384

+0

謝謝大家!我得到它與這個: Sprite [] enemySprites = Resources.LoadAll (「Sprites/Enemies」); – Veniversum

+0

@Veniversum你可以在下面添加一個答案來回答你自己的問題。這使得其他人更容易找到您的解決方案。 – user3071284

回答

2

您正在查看正確的文檔。

一個精靈是一個遊戲對象,只是一個更具體的遊戲對象,用於2D遊戲。所以你會創建你的精靈並對它們進行預製。這些組合屋走在資源文件夾,這裏是代碼:

GameObject [] objs = (GameObject[])Resources.LoadAll("SpriteFolder"); 
GameObject randomSprite = objs[Random.Range(0, objs.Length)]; 
0

這裏是我最終使用:

雪碧[] enemySprites = Resources.LoadAll(「精靈/公敵」);