Unity:如何通过字符串名称将预制件实例化到特定位置?

时间:2018-03-09 03:30:55

标签: unity3d unityscript

我在列表中保存了所有字符串名称,以保存播放器拥有的所有预制车辆。

字符串名称是预制名称。

如何通过名称产生/实例化预制件?

在特定位置或游戏对象上生成预制件?

谢谢!

1 个答案:

答案 0 :(得分:2)

List<string> playerOwnPrefabNames;
GameObject someGameObject;

foreach(prefabName in playerOwnPrefabNames)
{
    var prefabName = playerOwnPrefabNames;
    var prefabInstance = Instantiate(Resources.Load(pathOfPrefabDirectory+prefabName)) as GameObject;
}

然后,在someGameObject上产生预制件(这将使实例化的预制件成为someGameObject的子件):

prefabInstance.SetParent(someGameObject.transform);

将预制件移动到特定位置:

prefabInstance.transform.position = new Vector3(100, 200, 100);

参考: