cocos2dx 3.x判断node点击区域是否透明

有时候我们需要判断自己所触摸的区域是否是透明的,这时就需要调用glReadPixels函数来进行rgb色值的提取了

白白原创,手游专栏http://blog.csdn.net/u010229677

Size size = Director::getInstance()->getVisibleSize();
CCRenderTexture* render = RenderTexture::create(size.width,size.height);
render->beginWithClear(0,0);
node->visit(); //白白原创
GLubyte pColor[4];
Point location = this ->convertTouchToNodeSpace(touch); 
glReadPixels(location.x,location.y,1,GL_RGBA,GL_UNSIGNED_BYTE,&pColor[0]);			
render->end();
log("r %d g %d b %d a %d",pColor[0],pColor[1],pColor[2],pColor[3]);
if (!pColor[0]&&!pColor[1]&&!pColor[2])
{
	log("tou ming");
}
else
{
	log("bu tou ming");
}

相关文章

    本文实践自 RayWenderlich、Ali Hafizji 的文章《...
Cocos-code-ide使用入门学习地点:杭州滨江邮箱:appdevzw@1...
第一次開始用手游引擎挺激动!!!进入正题。下载资源1:从C...
    Cocos2d-x是一款强大的基于OpenGLES的跨平台游戏开发...
1.  来源 QuickV3sample项目中的2048样例游戏,以及最近《...
   Cocos2d-x3.x已经支持使用CMake来进行构建了,这里尝试...