i m working 3D game.. when i am store the instantiate(paintobject) in my list? how identify the system when my fill up whole plane?? and game over and when fillup whole plane then going to the next scene.. how identify my game when my plane fill up and going next scene?? what i am trying to do when fill up my whole plane going to nextscene?? Empty Plane: [![enter image description here][1]][1] fillup plane: [![enter image description here][2]][2] public float speed = 10f; private RaycastHit hit; public GameObject paintcube; float maxdistance = 0.51f; bool moves; private void FixedUpdate() { Debug.DrawRay(transform.position, transform.TransformDirection(Vector3.forward) * 3, Color.green); if (Physics.Raycast(transform.position,transform.TransformDirection(Vector3.forward), out hit, maxdistance/*,layerMask*/)) { if (hit.collider.gameObject.tag == "myobstacle") { moves = false; } if(moves) { movepaint(); } } } public void movepaint() { if (moves) { MyList.Add(Instantiate<GameObject>(paintcube, position, transform.rotation)); } } [1]: https://i.sstatic.net/zDTxa.jpg [2]: https://i.sstatic.net/yPSM3.jpg