public override void Setup() { CCSprite target = new CCSprite(TestResource.s_pPathBlock); target.AnchorPoint = CCPoint.Zero; target.Scale = 3; m_pOuterClipper = new CCClippingNode(); CCAffineTransform tranform = CCAffineTransform.Identity; tranform = CCAffineTransform.ScaleCopy(tranform, target.ScaleX, target.ScaleY); m_pOuterClipper.ContentSize = CCAffineTransform.Transform(target.ContentSize, tranform); m_pOuterClipper.AnchorPoint = new CCPoint(0.5f, 0.5f); m_pOuterClipper.RunAction(new CCRepeatForever(new CCRotateBy(1, 45))); m_pOuterClipper.Stencil = target; CCClippingNode holesClipper = new CCClippingNode(); holesClipper.Inverted = true; holesClipper.AlphaThreshold = 0.05f; holesClipper.AddChild(target); m_pHoles = new CCNode(m_pOuterClipper.ContentSize); holesClipper.AddChild(m_pHoles); m_pHolesStencil = new CCNode(m_pOuterClipper.ContentSize); holesClipper.Stencil = m_pHolesStencil; m_pOuterClipper.AddChild(holesClipper); this.AddChild(m_pOuterClipper); var listener = new CCEventListenerTouchAllAtOnce(); listener.OnTouchesBegan = onTouchesBegan; AddEventListener(listener); }