如何在统一上绘制多个3d对象?

时间:2015-06-04 11:35:39

标签: unity3d 3d camera drawing

我想在unity3d上的圆心处画一个3d圆和一个3d立方体。我在代码下面创建了一个立方体的6个面:

mesh.vertices = new Vector3[]{
        // face 1 (xy plane, z=0)
        new Vector3(0,0,0), 
        new Vector3(1,0,0), 
        new Vector3(1,1,0), 
        new Vector3(0,1,0), 
        // face 2 (zy plane, x=1)
        new Vector3(1,0,0), 
        new Vector3(1,0,1), 
        new Vector3(1,1,1), 
        new Vector3(1,1,0), 
        // face 3 (xy plane, z=1)
        new Vector3(1,0,1), 
        new Vector3(0,0,1), 
        new Vector3(0,1,1), 
        new Vector3(1,1,1), 
        // face 4 (zy plane, x=0)
        new Vector3(0,0,1), 
        new Vector3(0,0,0), 
        new Vector3(0,1,0), 
        new Vector3(0,1,1), 
        // face 5  (zx plane, y=1)
        new Vector3(0,1,0), 
        new Vector3(1,1,0), 
        new Vector3(1,1,1), 
        new Vector3(0,1,1), 
        // face 6 (zx plane, y=0)
        new Vector3(0,0,0), 
        new Vector3(0,0,1), 
        new Vector3(1,0,1), 
        new Vector3(1,0,0), 
    };

我在代码下方的多维数据集周围创建一个圆圈:

float x;
    float y;
    float z = 0.5f;

    float angle = 1f;

    for (int i = 0; i < (segments + 1); i++)
    {
        x = 0.5f + Mathf.Sin (Mathf.Deg2Rad * angle) * xradius;
        y = 0.5f + Mathf.Cos (Mathf.Deg2Rad * angle) * yradius;

        line.SetPosition (i,new Vector3(x,y,z));

        angle += (360f / segments);
    }

我希望上面的代码执行上层任务。但他们没有。我看到一个立方体和圆圈。但是立方体不是圆圈3d的中心。 z位置不适合我。

我的截图如下:

enter image description here

我应该使用多台相机进行这项工作吗?

1 个答案:

答案 0 :(得分:0)

好的,回答这里是因为我还没有发表评论。正如路德所说,这看起来像是一个太空问题。但是,您可以使LineRenderer的点在本地空间中运行,只需取消选中检查器中的Use World Space bool即可。这也可以让你自由地在场景中移动GameObject