[英]Creating a clone of a Unity prefab
我正在嘗試從文件加載預制件並創建加載文件的克隆而不實例化它。 更改加載的克隆腳本的數據值,不應更改預制件值。
我正在嘗試創建克隆和加載預制件的克隆。
使用 Resources.Load 將預制件加載到 unity 中:
enemy = new Player();
enemy.playerColor = Color.red;
enemy.Name = "enemy";
enemy.unitList.AddResources.Load("Prefab/Soldier", typeof(GameObject)) as GameObject);
使用實例化克隆功能加載預制件:
enemy = new Player();
enemy.playerColor = Color.red;
enemy.Name = "enemy";
enemy.unitList.Add(Instantiate(Resources.Load("Prefab/Soldier", typeof(GameObject)) as GameObject) as GameObject);
更改加載的預制件:
public void updateUnit(string prop, float val)
{
switch (prop)
{
case "Movespeed":
Movespeed += (int)val;
break;
case "SpawnRate":
SpawnRate += val;
break;
}
}
當前的問題是在預制件上使用實例化功能,在屏幕上創建克隆。 使用加載的預制件會導致預制件中的腳本發生變化
1:創建一個游戲對象並以您想要的任何方式為其分配預制件
private GameObject toclone;
2:創建一個游戲對象來克隆,這樣你就可以稍后調用它
private GameObject clone;
3:運行這個命令來召喚它。 將 Position 替換為 vector3,將 Rotation 替換為四元數(如果要使用 vector3 進行旋轉,請使用 Quaternion.Euler)
clone = Instantiate(toclone, Position, Rotation, Quaternion.Identity);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.