메뉴 건너뛰기

창작에 관련된 질문이나 간단한 팁, 예제를 올리는 곳

흔히 구글에서 찾아보면 다음과 같은 Clipping Layer 소스를 찾을 수 있다.

 CCEGLView::sharedOpenGLView()->setScissorInPoints(    // scissorRect is the rectangle you want to show.
        clippingRegion.origin.x + getPosition().x, clippingRegion.origin.y + getPosition().y,
        clippingRegion.size.width, clippingRegion.size.height);

중요한 것은 저 setScissorInPoints에서 받아들이는 영역이 '절대 좌표'라는 것이다.
물론 그렇기에 getPosition().x을 추가해서 해당 Layer가 이동했을 때 적절하게 클리핑하려고 했고
보통은 여기서 크게 문제를 못 느낀다.

하지만!!

만약 클리핑 될 Layer가 최상단이 아닌 누군가의 자식으로 지역 좌표를 쓰고 있다면?
예를 들어 (0,100)에 있는 레이어에서 그 레이어의 (0,100)에 새로운 레이어를 생성하고 저 클리핑을 적용하면...
100만큼 잘려 버린다. 부모의 좌표가 반영되지 않으므로...

그리므로 getPosition() 부분을 월드 좌표로 바꿔줘야
자식 노드로 레이어를 생성해도 문제 없이 클리핑을 할 수 있다.

CCPoint world_pos = convertToWorldSpace(CCPointZero);

CCEGLView::sharedOpenGLView()->setScissorInPoints(    // scissorRect is the rectangle you want to show.
        clippingRegion.origin.x + world_pos.x, clippingRegion.origin.y + world_pos.y,
        clippingRegion.size.width, clippingRegion.size.height);

태그 :
조회 수 :
670
등록일 :
2013.09.10
19:23:53 (*.75.88.173)
엮인글 :
게시글 주소 :
https://hondoom.com/zbxe/index.php?mid=study&document_srl=703178
List of Articles
번호 제목 글쓴이 날짜sort 조회 수
125 흥크립트 if-else 문 흉내내기 [4] 똥똥배 2008-02-12 1933
124 게임 만들때는 게임 기획을 해야 합니다. [7] 똥똥배 2008-02-12 2106
123 흥크립트 win모드와 전체화면의 속도 차이 있나요? [4] 흑곰 2008-02-13 1698
122 질문 하나더. [3] 흑곰 2008-02-13 1715
121 질문! [4] file DOH 2008-02-14 1616
120 흥크립트 AVI 재생.. [2] 장펭돌 2008-02-14 1851
119 흥크립트 원인불명 버그... [3] file 네모상자 2008-02-16 738
118 안녕하세요~ 질문하러 왔습니다. [6] X-tra 2008-03-09 1894
117 그러고보니, 흥크립트에서.. [1] 장펭돌 2008-03-10 1693
116 그림 출력의 순서를 알고 싶습니다. [3] X-tra 2008-03-12 2466
115 흥크립트 키입력 질문 [1] A.미스릴 2008-03-15 2363
114 흥크립트 클릭명령 질문입니다. [1] 카시 2008-03-18 2009
113 웹 프로그래밍을 배우려고 합니다. [2] Kadalin 2008-03-22 2171
112 OgreOde 사용기 똥똥배 2008-03-25 3184
111 저는 사실 이걸 잘 못해요. [3] 앟랄 2008-03-26 2282
110 명령문 질문드립니다. [1] X-tra 2008-03-26 2244
109 임의의 점이 다각형 내부에 있는지 검사하는 함수 똥똥배 2008-04-14 5358
108 문D라이브로 더블드래곤을 만들자(1) [2] file 똥똥배 2008-04-16 4479
107 VC++ 2008 Express Edition에서 문D라이브 링크 [2] A.미스릴 2008-04-17 13090
106 문D라이브로 더블드래곤을 만들자(2) [6] file 똥똥배 2008-04-18 3611