예제 #1
0
파일: Quad.cs 프로젝트: mdvulfix/SpaceGame
    private void AddChild(QuadType type, int level, float size, Vector3 centrePoint)
    {
        string childName = type.ToString();
        var    empty     = new GameObject(childName);

        empty.transform.parent        = gameObject.transform;
        empty.transform.rotation      = gameObject.transform.rotation;
        empty.transform.localPosition = centrePoint;

        // TODO: offset position of empty to centre of new Quad

        empty.layer = gameObject.layer;

        Quad child = empty.AddComponent <Quad>();

        child.QuadType                 = type;
        child.Root                     = Root;
        child.Face                     = Face;
        child.Parent                   = this;
        child.Level                    = level;
        child.Size                     = size;
        child.Subdivisions             = Subdivisions;
        child.SubdivisionDistances     = SubdivisionDistances;
        child.TriangleCache            = TriangleCache;
        child.Material                 = Material;
        child.StartingNoiseFrequency   = StartingNoiseFrequency;
        child.StartingNoiseAmplitude   = StartingNoiseAmplitude;
        child.SmoothNegativeElevations = SmoothNegativeElevations;
        child.Active                   = true;
        child.Initialise();

        _children[(int)type] = child;
    }
예제 #2
0
파일: Quad.cs 프로젝트: mdvulfix/SpaceGame
    public override string ToString()
    {
        string str = string.Empty;

        if (Parent == null)
        {
            str = Face.FaceType.ToString() + ".";
        }
        else
        {
            str += Parent.ToString() + ".";
        }
        return(str + QuadType.ToString());
    }