コード例 #1
0
ファイル: Grid2D.cs プロジェクト: Mccullom/GridsDeluxe
        public override void CreateNodeAt(GridCoords coords)
        {
            Vector3 scale = 2.0f * new Vector3(CellRadius, CellRadius, CellRadius);

            SquareNode node = new SquareNode();

            node.mOffset = coords.GetPosNormalized() * CellRadius;
            node.mId     = coords.index;

            node.mOpenMarker = GameObject.Instantiate(openMarker);
            node.mOpenMarker.transform.SetParent(gameObject.transform);
            node.mOpenMarker.transform.localScale    = scale;
            node.mOpenMarker.transform.localPosition = node.mOffset;

            node.mClosedMarker = GameObject.Instantiate(closedMarker);
            node.mClosedMarker.transform.SetParent(gameObject.transform);
            node.mClosedMarker.transform.localScale    = scale;
            node.mClosedMarker.transform.localPosition = node.mOffset;

            node.State = NodeState.open;

            mNodes[coords.index] = node;
        }
コード例 #2
0
    // Use this for initialization
    void Start()
    {
        mutableMesh = new MutableMesh();
        var grid = new SquareGrid(10, 10, mutableMesh);

        grid.grid[0, 0].Init(SquarePoint.BottomLeft, SquareBaseShape.Triangle);

        SquareNode node = grid.grid[0, 0].GetNode(SquarePoint.BottomLeft);

        v1 = new AnimatedVertex(node.Vertex, 0.5f, () => {
            direction *= -1;
            v1.SetTarget(v1.initialPosition - new Vector3(direction * 0.2f, 0, 0));
        });
        v1.SetTarget(v1.initialPosition + new Vector3(0.2f, 0, 0));

        var meshFilter = gameObject.GetComponent <MeshFilter> ();
        var mesh       = new Mesh()
        {
            vertices  = mutableMesh.GetVertexes().ToArray(),
            triangles = mutableMesh.GetTriangles().ToArray(),
        };

        meshFilter.sharedMesh = mesh;
    }