我試圖用CCRenderTexture像素完美碰撞檢測,在此論壇發帖概述:CCRenderTexture大小和位置
http://www.cocos2d-iphone.org/forum/topic/18522/page/2
代碼「原樣」的作品,我有將其與我的項目集成
但是我在討論其他一些問題時遇到了困難: 如果我將renderTexture創建爲小於屏幕大小的任何大小,碰撞檢測將無法正常工作 - 似乎在精靈接近時顯示碰撞(< 15px)彼此,但實際上沒有碰撞。
我也有麻煩改變渲染紋理的位置。無論我指定的位置如何,它似乎從左下角(0,0)到指定寬度&的高度。我跟着這個帖子:
http://www.cocos2d-iphone.org/forum/topic/18796
但它並沒有解決我的問題。我仍然遇到像上面指定的不好的碰撞。另外,我在列表中提到的第一篇文章包含了很多用戶的評論,他們將紋理調整爲10x10,並將它們重新放置在屏幕外。
沒有人有任何的示例代碼,這樣我就可以看到我在做什麼錯?我只是用樣板代碼:
CCRenderTexture* _rt = [CCRenderTexture renderTextureWithWidth:winSize.width height:winSize.height];
_rt.position = CGPointMake(winSize.width*0.5f, winSize.height*0.5f);
[[RIGameScene sharedGameScene]addChild:_rt];
_rt.visible = YES;
我使用了cocos2d-iphone 1.0.1
請注意,您關注的紋理存在於'_rt.sprite'。因此,任何定位點計算都應該應用於rendertexture中的精靈,而不是rendertexture本身(其大小爲(0,0)) – 2012-01-30 09:52:22
我不做任何定位點計算。 _rt。sprite就是我所說的 - 位置永遠是0,0 – xcoder 2012-01-30 10:21:25
注意:如果你的精靈都沒有旋轉,你可以使用我的CCRenderTexture教程中描述的更快的像素完美的碰撞代碼:http://www.learn- cocos2d.com/2011/12/how-to-use-ccrendertexture-motion-blur-screenshots-drawing-sketches/ – LearnCocos2D 2012-01-30 22:38:10