C++11以上Cocos2d-xでテクスチャの簡易ヒットテスト(ver3.17.1で確認済み)今回は、四角いSpriteのテクスチャー内において、色がついている場所がタッチされたかそうでないかを判断する方法を紹介したいと思います。絵にすると以下のような感じになります。テクスチャーの透過度を利用し、少しでも色が付いてる箇所とそうでない箇所の違いによってタッチ判定を行います。本記事は、フォーラムに回答があったので、その紹介と補足となります。2.xの頃の記事で、3.x系列で同じように書いても動作しません。BLOGまた、以下のサイトは掲載コードが正常に動きますがそのままコピペして仕様するとリソースリークが発生するのでこちらを参照すのではなく、フォーラムか本記事を参照したほうが無難です。10.0.17763.0)使い方まずは使い方から。あるTestSceneに任意の画像を追加し、その画像の色が付いた部分がタッチされたかどうかを判定しています。this);}実装コードフォーラム内で省略されている箇所の補足と、各種名前や宣言位置を変更しています。内容は完全に同じです。ヘッダー側(PixelReader.hpp)色を取るのにNodeを継承し、drawの動作を変更した自作のクラスを新規に作成する必要があるのでまずはヘッダーを宣言します。pTouch);};実装側(PixelReader.cpp)上記ヘッダーに対応するコードは以下の通りです。0;}RenderTextureクラスを使用して対象の画像をオフスクリーンレンダリングしてそのレンダリング結果から対象ピクセルの色を取り出す流れです。長くなりましたが以上です。»Profile受託ソフト会社員でWin系業務屋。趣味でCocos2d-x/C++を触っています。etc...主に受託・開発ネタ、Windowsの事、Srellaris、ゲーム制作の進捗の事を喋ります。4.0がリリースされたみたいCocos2d-xをやめてUnityに移行した話@2019冬C#のDateTimeとC++のtime_tを相互変換するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。