void FixedUpdate() { return; if (isDragging && canvasBoard.canvasBoardBasis.drawingState == DrawingState.Edit) { //if (lineData != null && lineData.line.lineType == SpringGUI.LineType.Indoor) { var filter = new ContactFilter2D(); var hitResults = new RaycastHit2D[20]; filter.useLayerMask = true; filter.useTriggers = true; filter.layerMask = LayerMaskExtensions.Create("UI"); LineController targetLineCtrl = null; RaycastHit2D hit; Vector2 origin = transform.parent.TransformPoint(rectTransform.anchoredPosition + new Vector2(0, 11f)); Vector2 direction = Vector2.up; int hitCount = Physics2D.Raycast(origin, direction, filter, hitResults, Mathf.Infinity); Debug.Log("hitCount: " + hitCount); Debug.DrawRay(origin, direction * 1000f, Color.cyan); //hit = Physics2D.Raycast (origin, direction); //if(hit.collider != null) { // Debug.Log ("hit distance" + hit.distance); //Debug.DrawRay (origin, direction * hit.distance, Color.red); //} //} } }
void Start() { LayerMask mask = LayerMaskExtensions.Create("Ignore Raycast", "TransparentFX", "Water"); Debug.Log(mask.MaskToString()); //prints out Ignore Raycast, TransparentFX, Water mask = mask.RemoveFromMask("TransparentFX"); Debug.Log(mask.MaskToString()); //prints out Ignore Raycast, Water mask = mask.AddToMask("TransparentFX"); Debug.Log(mask.MaskToString()); //prints out Ignore Raycast, TransparentFX, Water Debug.Log(mask.Inverse().MaskToString()); //prints out everything except Ignore Raycast, TransparentFX, Water }