public void PushColorBlob(ColorBlob blob) { colorStack.Push(blob); float blobObjectHeight = blob.GetComponent <Collider>().bounds.extents.y; transform.position += Vector3.up * (DistanceBetweenLayers + blobObjectHeight); renderTextureCamera.farClipPlane += DistanceBetweenLayers + blobObjectHeight; }
public ColorBlob.BlobColor GetColorAtPosition(Vector2 position) { Ray ray = new Ray(new Vector3(position.x, 0, position.y) + transform.position, Vector3.down); RaycastHit hitInfo; if (Physics.Raycast(ray, out hitInfo, renderTextureCamera.farClipPlane, mask)) { ColorBlob blob = hitInfo.collider.GetComponent <ColorBlob>(); if (blob) { return(blob.color); } } return(position.x > 0? ColorBlob.BlobColor.White : ColorBlob.BlobColor.Black); }
public static void removeFromColorBlobs(ColorBlob colorBlobToRemove) { colorBlobs.Remove(colorBlobToRemove); }