1.早期cocos2d-x 2.x 1.x 時 判斷點集 需要自己手動轉座標,不僅要算出母節點位置還要
setAnchorPoint(Vec2::ANCHOR_BOTTOM_LEFT); 都要固定在左下角,才方便計算
但是在cocos2d-x 3.x 可以改用 convertTouchToNodeSpace(Touch touch) 來做判別
不用再理會上層結點
//自用範例
m_NodeVectors 是我自己先將要偵測的原件 用NODE 方式存放起來
checkTouchNode 則是自己新增的 在NODE 增加不TOUCH的變數
int UIPAGE::checkItemByTouch(Touch* touch)
{
auto sprites=m_NodeVectors.at(pageType);
auto bTouch =false;
for(auto pSprite:*sprites)
{
auto iIdx=pSprite->getTag();
if(pSprite->isVisible() && checkTouchNode(iIdx))
{
Vec2 touchPost=pSprite->convertTouchToNodeSpace(touch); //轉換座標
Size boxSize=pSprite->getContentSize(); //取得想要TOUCH的範圍
Rect boxRect=Rect(0,0,boxSize.width,boxSize.height); //統一右下角畫出
bTouch = boxRect.containsPoint(touchPost); //進行判別 PS:就算旋轉 也可以喔
if(bTouch)
{
return iIdx;
break;
}
}
}
return -1;
}
2016年5月27日 星期五
訂閱:
張貼留言 (Atom)
cocos2dx-lua 建立滑鼠監聽
重要關鍵字 EVENT_MOUSE_SCROLL addEventListenerWithSceneGraphPriority if IsPc() then --建立滑鼠監聽 local listener = cc.EventListenerMouse...
-
本身常用範例 auto pFrame= SpriteFrameCache::getInstance()->getSpriteFrameByName(test); m_IconBox->setSpriteFrame(pFrame); http://cocos2...
-
http://blog.csdn.net/teng_ontheway/article/details/26078869 遊戲中經常會用到一些變換: 遊戲中武器和角色在一個layer上,為了效率,會考慮將bullet, effect和 PhysicsParticle分別放...
-
如何將IPA 透過ITUNES 安裝到 手機中 1.插上iPhone,開啟 iTunes,點選選單 檢視->媒體種類->APP 。iTunes 會切換至APP頁面 2.開啟檔案總管 將 .ipa 檔案 利用滑鼠拉進 iTunes。然後...
沒有留言:
張貼留言