2

これは不可能だと感じていますが、とにかく尋ねる価値があると思います。

バックグラウンド スプライトとフォアグラウンド スプライトがあり、どちらもウィンドウ/ビューと同じサイズです。

プレイヤー スプライトが画面上を移動するときに、接触するピクセルを削除して背景スプライトを表示したいと考えています。

これは単なる表示目的ではなく、敵が通り抜けたり、オブジェクトが落ちたりできるように、プレイヤーが前景レイヤーから描画または「掘った」ギャップが必要です。そのため、フォアグラウンド レイヤーでヒット検出が必要になります。

これは非常に複雑で、Cocos2D-JS は使用するのに最適なプラットフォームではない可能性があります。可能でない場合は、この効果を実現しやすい別のプラットフォームをお勧めできますか?

4

1 に答える 1

1

可能だと思いますが、適切な回答ができません。

私が言えることは、ほとんどの場合、次の 2 つの選択肢があるということです。

a. 物理多角形を作成して変形し、それを「フィルター」として使用して地形画像を表示します (これは、 box2d を使用した別の言語での概念実証の例です)。

b. ピクセルを直接操作し、衝突検出にマスクを使用します (これは cocos2d-js のピクセルパーフェクトな衝突検出です。残念ながら、ピクセルの変更に関する情報はありません)。

于 2015-04-24T13:08:54.570 に答える