簡體   English   中英

從資產文件夾統一加載精靈到游戲對象

[英]unity load sprit to gameobject from asset folder

我是 Unity 的新手。 我在這個地址有一個簡單的精靈:

Assets <- (Folder)
|
 - Block <- (Block is a PNG file that dragged to unity project widget)

我想將我的“塊”精靈動態添加到我的“場景”或我的“主攝像機”游戲對象中。 我使用此代碼將塊加載為 Sprite:

Sprite block = Resources.Load<Sprite>( "Block" );
GameObject obj = new GameObject ("B1");
SpriteRenderer renderer = obj.AddComponent<SpriteRenderer> ();
obj.GetComponent<SpriteRenderer> ().sprite = block;
obj.GetComponent<SpriteRenderer> ().flipX = true;

我可以看到在我的場景中創建的“B1”游戲對象並且我的控制台中沒有錯誤,但是我在我的場景中看不到精靈

在此處輸入圖片說明

注意:統一:5.6.7

它對您不起作用,因為它需要放置在名為Resources的文件夾中,例如Assets/Resources/Block.png


但是: 根本不要使用Resources

而是簡單地保留文件原樣並將其拖到檢查器中的Sprite字段中。 如果您確實需要在運行時執行此操作,請確保執行您的代碼的組件具有相應的字段,例如

// Drag the sprite from the Assets here via the Inspector
[SerializeField] private Sprite block;

private void YourMethod()
{
    var renderer = new GameObject ("B1").AddComponent<SpriteRenderer>();
    renderer.sprite = block;
    renderer.flipX = true;
}

此外,如果您是 Unity 的新手,則不應從舊版本開始。 使用最新的穩定版本2019.3.4f1或選擇長期支持的2018.4 LTS (盡管很快就會有新的 LTS 版本2019.4

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM