2

cocos2d-JavaScript で Pixel-perfect 衝突テストを実装しようとしています。

ピクセル バッファをクリアできません。どうしてか分かりません。

そうです:

var winSize = cc.director.getWinSize();

var rend = new cc.RenderTexture( winSize.width , winSize.height, cc.Texture2D.PIXEL_FORMAT_RGBA8888);
var pixels = new Uint8Array(4 * ~~numPixels);   

rend.beginWithClear( 0, 0, 0, 255); 

gl.readPixels(x, y, w, h, gl.RGBA, gl.UNSIGNED_BYTE, pixels);

rend.end();

for(var i = 0; i < ~~numPixels; i+= 1)
{
    var rb = pixels[4*i + 0];
    var gb = pixels[4*i + 1];
    DEBUG(LEVEL_DEBUG, "PP - collision test", "i=%s; rb=%s; gb=%s;", ""+i, ""+rb, ""+gb);
}

はい、絵も描きません。をクリアしようとしているだけrenderTextureで、readPixelsクリアされたかどうかを確認してください。そうではありませんでした。

私は最初に配列ピクセルをいくつかの既知の値で埋めようとしましたが、それをチェックしました-はい、そこにありました。readPixels価値観が違うけどよくわからない… 何がいけないの?誰か助けてくれませんか?私も試してみましたrend.cleanup(); 分割beginWithClearして分離clear()してみましたbegin()...同じ結果です。私は試しましたrend.clearRect... rend.setClearColor...何も役に立ちませんでした。

4

0 に答える 0