private void _Render() { if (0 == _gridTransforms.Count) { return; } if (null == AStar.gridMap || 0 == AStar.gridMap.Count || _wasRender) { _RayCastNode(); return; } _wasRender = true; // Set suitable Materials for All GRID_MAP's NODES for (int i = 0; i < AStar.gridMap.Count; i++) { for (int j = 0; j < AStar.gridMap[i].Count; j++) { // if Not WalkAble NODE [Set Red Material] if (false == AStar.gridMap[i][j]) { _SetMaterial(_gridTransforms[i][j].GetComponent <Renderer>(), redMat); } else if ( // else if START or END NODE [Set Blue Material] AStar.startIndex.i == i && AStar.startIndex.j == j || AStar.endIndex.i == i && AStar.endIndex.j == j ) { _SetMaterial(_gridTransforms[i][j].GetComponent <Renderer>(), blueMat); } else { _tmpNodeIndex = new NodeIndex(); _tmpNodeIndex.i = i; _tmpNodeIndex.j = j; // if PATH NODE [Set Green Material] else [Set White Material] if (AStar.ContainsNodeIndex(AStar.pathNodes, _tmpNodeIndex)) { _SetMaterial(_gridTransforms[i][j].GetComponent <Renderer>(), greenMat); } else { _SetMaterial(_gridTransforms[i][j].GetComponent <Renderer>(), whiteMat); } } } } }
private void _Render() { if (0 == _gridTransforms.Count) { return; } if (null == AStar.gridMap || 0 == AStar.gridMap.Count || _wasRender) { //_RayCastNode(); return; } _wasRender = true; //movementArrayIndex = 0; // Set suitable Materials for All GRID_MAP's NODES movementArray.Clear(); for (int i = 0; i < AStar.gridMap.Count; i++) { for (int j = 0; j < AStar.gridMap[i].Count; j++) { // if Not WalkAble NODE [Set Red Material] if (false == AStar.gridMap[i][j]) { //_SetMaterial(_gridTransforms[i][j].renderer, redMat); _nodeStatesGrid[i][j].HighlightTile("red"); } else if ( // else if START or END NODE [Set Blue Material] AStar.startIndex.i == i && AStar.startIndex.j == j || AStar.endIndex.i == i && AStar.endIndex.j == j ) { _nodeStatesGrid[i][j].HighlightTile("blue"); if (_nodeStatesGrid[i][j] != null) { Vector3 tileVector = _nodeStatesGrid[i][j].transform.position; //tileVector = new Vector3(tileVector.x , tileVector.y , tileVector.z ); //movementArray[ movementArray.Length ] = tileVector; //movementArray.Add ( tileVector ); } //_SetMaterial(_gridTransforms[i][j].renderer, blueMat); } else { _tmpNodeIndex = new NodeIndex(); _tmpNodeIndex.i = i; _tmpNodeIndex.j = j; // if PATH NODE [Set Green Material] else [Set White Material] if (AStar.ContainsNodeIndex(AStar.pathNodes, _tmpNodeIndex)) { _nodeStatesGrid[i][j].HighlightTile("green"); if (_nodeStatesGrid[i][j] != null) { Vector3 tileVector = _nodeStatesGrid[i][j].transform.position; //tileVector = new Vector3(tileVector.x , tileVector.y , tileVector.z ); //movementArray[ movementArray.Length ] = tileVector; movementArray.Add(tileVector); } //Debug.Log("HI"); //_SetMaterial(_gridTransforms[i][j].renderer, greenMat); } else { //_SetMaterial(_gridTransforms[i][j].renderer, whiteMat); _nodeStatesGrid[i][j].HighlightTile("white"); } } } } }