如何使用代码或以编程方式在 Unity 运行时创建 3D 对象?

How can I create 3D Object during runtime in Unity by using code or by programmatically?

我是 unity 3d 世界的新手。我正在为 android 和 iOS 制作 AR 应用程序。我想使用 unity 在现实世界中显示 3d 对象,这显然是通过移动摄像头实现的。我正在通过 webservice/API 以 JSON 的形式从服务器获取数据。但这不是问题,问题是如何在运行时根据 JSON 数据创建 3d 对象。在数据中,它将定义 x、y 和 z 轴的坐标,我必须在这些坐标上显示 3D 对象,这将根据 JSON 数据动态变化。我需要想法或提示如何通过使用 C# 进行编码来放置它们。 谢谢。

从我的角度来看,您需要在运行时使用 C# 创建 3D 对象的提示。 为此,您可以使用 GameObject。 代码片段:

GameObject cube = GameObject.CreatePrimitive(PrimitiveType.Cube); //In place of Cube you can use any 3d object like Sphere, Cylinder...
        cube.transform.position = new Vector3(0, 1.9f, 0);

以上代码在start()方法中。

您也可以使用 Instantiate() 来输入要创建运行时的预制件。

// Assign this from the inspector
public GameObject ObjectToCreate;

public void GenerateObject(){
    GameObject.Instantiate(ObjectToCreate, positionFromJsonInVector3, Quaternion.identity);
}