(57)【要約】  本発明の実施態様は、ヒットテスト方法および装置を提供する。この方法は、スクリーン上に表示されるオブジェクトのピクセルの色値をオブジェクトの対応する識別子（ＩＤ）値に置き換えるステップと、ＩＤ値をビットマップアレイ内に格納するステップとを有していて、ビットマップアレイの各要素は、それぞれのオブジェクトの１つ以上のピクセルに対応し、更に、ヒットイベントをキャプチャするステップに応じて、ヒットイベントに対応するスクリーン上のヒット座標を取得するステップと、ヒット座標に対応するビットマップアレイ要素を決定するステップと、ビットマップアレイ要素と関連するＩＤ値に従って、ヒットイベントに関係するオブジェクトを識別するステップとを有している。
2015531918.tif 000002
【特許請求の範囲】
【請求項１】
コンピューティングデバイスのスクリーン上に表示されるオブジェクトへのヒットを識別するためのヒットテスト方法において、
スクリーン上に表示されるオブジェクトのピクセルの色値をオブジェクトの対応する識別子（ＩＤ）値に置き換えるステップと、
前記ＩＤ値をビットマップアレイ内に格納するステップとを有していて、ビットマップアレイの各要素は、それぞれのオブジェクトの１つ以上のピクセルに対応し、
更に、ヒットイベントをキャプチャするステップに応じて、このヒットイベントに対応するスクリーン上でのヒット座標を取得するステップと、
ヒット座標に対応するビットマップアレイ要素を決定するステップと、
前記ビットマップアレイ要素と関連するＩＤ値に従って、ヒットイベントに関係するオブジェクトを識別するステップとを有している
ことを特徴とするヒットテスト方法。
【請求項２】
請求項１に記載のヒットテスト方法において、前記ＩＤ値をビットマップアレイ内に格納するステップは、
スクリーン上の複数のピクセルを、ビットマップアレイの１つの要素に、両方向において同じ圧縮スケールでマッピングするステップと、
１つのＩＤ値をビットマップアレイ要素に格納するステップとを有していて、前記ＩＤ値は、スクリーン上に表示されるオブジェクトの複数のピクセルに対応する
ことを特徴とするヒットテスト方法。
【請求項３】
請求項１に記載のヒットテスト方法において、さらに、
スクリーン上に表示されるべきオブジェクトのピクセルをビットマップ内に予めレンダリングするステップと、
前記ビットマップをスクリーン上に表示するステップとを有していて、
前記ヒットイベントをキャプチャするステップは、さらに、表示されたビットマップ上のヒットイベントをキャプチャするステップと、ヒットイベントに対応するヒット座標を取得するステップとを有している
ことを特徴とするヒットテスト方法。
【請求項４】
請求項１に記載のヒットテスト方法において、
前記スクリーン上に表示されるオブジェクトのピクセルの色値をオブジェクトの対応するＩＤ値に置き換えるステップと、前記ＩＤ値をビットマップアレイ内に格納するステップとは、さらに、
オブジェクトのピクセルの色値をオブジェクトの識別子（ＩＤ）値に置き換えるステップと、オブジェクトのピクセルの少なくとも１つの色特性レンダリング属性を使用不可にするステップと、ピクセルのＩＤ値をビットマップアレイ内に格納するステップとを有している
ことを特徴とするヒットテスト方法。
【請求項５】
請求項４に記載のヒットテスト方法において、前記オブジェクトの色特性レンダリング属性は、照明属性値、材料属性値、または混合モード属性値を含むことを特徴とするヒットテスト方法。
【請求項６】
請求項４に記載のヒットテスト方法において、前記オブジェクトのピクセルの少なくとも１つの色特性レンダリング属性を使用不可にするステップは、オブジェクトのピクセルの照明属性値、材料属性値、および混合モード属性値を使用不能にするステップを含むことを特徴とするヒットテスト方法。
【請求項７】
請求項４に記載のヒットテスト方法において、さらに、テクスチャマッピングの間、アルファチャネル動作に関係しないプロセスを使用不可にして、オブジェクトのＩＤ値が変更されるのを防止するステップを有していることを特徴とするヒットテスト方法。
【請求項８】
請求項１に記載のヒットテスト方法において、前記ヒット座標に対応するビットマップアレイ要素を決定するステップと、前記ビットマップアレイ要素と関連するＩＤ値に従って、ヒットイベントに関係するオブジェクトを識別するステップとは、
ヒット座標に対応しているビットマップアレイ要素のためのビットマップアレイについて問い合わせるステップと、
前記ビットマップアレイ要素からオブジェクトの格納されたＩＤ値を得るステップと、  前記ＩＤ値に対応するオブジェクトをヒットイベントに関係するオブジェクトとして識別するステップとを有している
ことを特徴とするヒットテスト方法。
【請求項９】
１つ以上のプロセッサと、
メモリと、
メモリ内に格納されていて、１つ以上のプロセッサによって実行されるための１つ以上のプログラムユニットとを備えていて、この１つ以上のプログラムユニットは、識別子（ＩＤ）値設定ユニット、ヒットイベントキャプチャユニット、およびヒットテストユニットを含んでいて、
前記ＩＤ値設定ユニットは、スクリーン上に表示されるオブジェクトのピクセルの色値をオブジェクトの対応する識別子（ＩＤ）値に置き換えて、このＩＤ値をビットマップアレイ内に格納するように構成されていて、前記ビットマップアレイの各要素は、それぞれのオブジェクトの１つ以上のピクセルに対応し、
前記ヒットイベントキャプチャユニットは、ヒットイベントをキャプチャして、このヒットイベントに対応するヒット座標を取得するように構成されていて、
前記ヒットテストユニットは、ヒット座標に対応するビットマップアレイ要素を決定して、このビットマップアレイ要素と関連するＩＤ値に従って、ヒットイベントに関係するオブジェクトを識別するように構成されている
ことを特徴とするヒットテスト装置。
【請求項１０】
請求項９に記載のヒットテスト装置において、
前記ＩＤ値設定ユニットは、スクリーン上の複数のピクセルを、ビットマップアレイの１つの要素に、両方向において同じ圧縮スケールでマッピングして、１つのＩＤ値をビットマップアレイ要素に格納するように構成されていて、前記ＩＤ値は、スクリーン上に表示されるオブジェクトの複数のピクセルに対応する
ことを特徴とするヒットテスト装置。
【請求項１１】
請求項９に記載のヒットテスト装置において、前記１つ以上のプログラムユニットは、さらに、スクリーン上に表示されるべきオブジェクトのピクセルをビットマップ内に予めレンダリングして、このビットマップをスクリーン上に表示するように構成されたレンダリングユニットを有していて、
前記ヒットイベントキャプチャユニットは、表示されたビットマップ上のヒットイベントをキャプチャして、このヒットイベントに対応するヒット座標を取得するように構成されている
ことを特徴とするヒットテスト装置。
【請求項１２】
請求項９に記載のヒットテスト装置において、
前記ＩＤ値設定ユニットは、オブジェクトのピクセルの色値をオブジェクトの識別子（ＩＤ）値に置き換えて、オブジェクトのピクセルの少なくとも１つの色特性レンダリング属性を使用不可にし、ピクセルのＩＤ値をビットマップアレイ内に格納するように構成されている
ことを特徴とするヒットテスト装置。
【請求項１３】
請求項１２に記載のヒットテスト装置において、前記オブジェクトの色特性レンダリング属性は、照明属性値、材料属性値、または混合モード属性値を含むことを特徴とするヒットテスト装置。
【請求項１４】
請求項１２に記載のヒットテスト装置において、前記ＩＤ値設定ユニットは、オブジェクトのピクセルの照明属性値、材料属性値、および混合モード属性値を使用不可にするように構成されていることを特徴とするヒットテスト装置。
【請求項１５】
請求項１１に記載のヒットテスト装置において、前記レンダリングユニットは、テクスチャマッピングの間、アルファチャネル動作に関係しないプロセスを使用不可にして、オブジェクトのＩＤ値が変更されるのを防止するように構成されていることを特徴とするヒットテスト装置。
【請求項１６】
請求項９に記載のヒットテスト装置において、
前記ヒットテストユニットは、ヒット座標に対応しているビットマップアレイ要素のためのビットマップアレイについて問い合わせて、ビットマップアレイ要素からオブジェクトの格納されたＩＤ値を得て、ＩＤ値に対応するオブジェクトをヒットイベントに関係するオブジェクトとして識別するように構成されている
ことを特徴とするヒットテスト装置。
【請求項１７】
コンピューティングデバイスと接続された非一時的コンピュータ可読記録媒体において、前記コンピュータ可読記録媒体は、コンピューティングデバイスのスクリーン上に表示されるオブジェクトへのヒットを識別するために、コンピューティングデバイスによって実行されるべき１つ以上のプログラムを格納していて、この１つ以上のプログラムは、
スクリーン上に表示されるオブジェクトのピクセルの色値をオブジェクトの対応する識別子（ＩＤ）値に置き換えて、
このＩＤ値をビットマップアレイ内に格納して、このビットマップアレイの各要素は、それぞれのオブジェクトの１つ以上のピクセルに対応し、
ヒットイベントをキャプチャすることに応じて、前記ヒットイベントに対応するスクリーン上のヒット座標を取得して、
ヒット座標に対応するビットマップアレイ要素を決定して、
このビットマップアレイ要素と関連するＩＤ値に従って、ヒットイベントに関係するオブジェクトを識別する命令を含む
ことを特徴とする非一時的コンピュータ可読記録媒体。
【請求項１８】
請求項１７に記載の非一時的コンピュータ可読記録媒体において、前記ＩＤ値をビットマップアレイ内に格納するための命令は、
スクリーン上の複数のピクセルを、ビットマップアレイの１つの要素に、両方向において同じ圧縮スケールでマッピングして、
１つのＩＤ値をビットマップアレイ要素に格納する命令を含み、前記ＩＤ値は、スクリーン上に表示されるオブジェクトの複数のピクセルに対応する
ことを特徴とする非一時的コンピュータ可読記録媒体。
【請求項１９】
請求項１７に記載の非一時的コンピュータ可読記録媒体において、前記１つ以上プログラムは、さらに、
スクリーン上に表示されるべきオブジェクトのピクセルをビットマップ内に予めレンダリングして、
前記ビットマップをスクリーン上に表示するための命令を含み、
ヒットイベントをキャプチャするための命令は、さらに、表示されたビットマップ上のヒットイベントをキャプチャして、このヒットイベントに対応するヒット座標を取得するための命令を含む
ことを特徴とする非一時的コンピュータ可読記録媒体。
【請求項２０】
請求項１７に記載の非一時的コンピュータ可読記録媒体において、前記スクリーン上に表示されるオブジェクトのピクセルの色値をオブジェクトの対応するＩＤ値に置き換えて、このＩＤ値をビットマップアレイ内に格納するための命令は、さらに、
オブジェクトのピクセルの色値をオブジェクトの識別子（ＩＤ）値に置き換えて、
オブジェクトのピクセルの少なくとも１つの色特性レンダリング属性を使用不可にし、  ピクセルのＩＤ値をビットマップアレイ内に格納するための命令を含む
ことを特徴とする非一時的コンピュータ可読記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、２０１２年８月８日に出願された"HIT TESTING METHOD AND APPARATUS"という題名の中国特許出願No. 201210280078.4に対する優先権を主張し、引用によりその全部が組み込まれる。
【０００２】
開示される実施態様は、一般に、コンピュータ技術の分野に関し、特に、ヒットテスト方法および装置に関する。
【背景技術】
【０００３】
ヒットテストは、コンピュータ開発（例えば、ゲームプログラム開発）プロセスで多用される技術である。それは、ユーザによって制御されるカーソル（例えば、マウスカーソルまたはタッチスクリーンインターフェイス上のタッチポイント）が、スクリーン上の与えられたオブジェクト（例えば、形状、線、またはカーブ）を横切るかどうかを判定するために用いられる。通常、ヒットテストは、極めて多くの中央処理装置（ＣＰＵ）の資源を占有するので、ヒットテストのより速い実行プロセスが期待される。
【０００４】
既存のヒットテスト技術においては、シナリオの中の描かれたオブジェクトのヒットテスト領域は、予めデザインされていて、このヒットテスト領域は、通常、矩形の境界を有する。タッチまたはヒットイベントが、描かれたオブジェクトリストの中で起こる時、ヒットテスト判定は、順番に、描かれたオブジェクトリストの中の各々の描かれたオブジェクト上で実行され、これは、一般に、タッチまたはヒットイベントの座標値がオブジェクトの予め設定されたヒットテスト領域内にあるかどうかを判定するためである。タッチまたはヒットイベントの座標値が特定のオブジェクトの予め設定されたヒットテスト領域内にあると判定される場合、オブジェクトの識別子（ＩＤ）値が戻される。加えて、描かれたオブジェクトが重なっている時、物体の前後層関係が考慮される必要がある。判定の前に、まず、シナリオの中で、オブジェクトのランク付けを実行するか、またはオブジェクトに対する親子ツリー構造を構築する必要があり、それからヒットテストが前から後ろへ実行され、そして最初のうまく判定されたオブジェクトのＩＤが戻される。
【０００５】
既存のヒットテスト技術においては、ヒットテスト領域を予めデザインすることによって、オブジェクトのプロファイル輪郭が、おおよそシミュレーションされ得る。しかし、オブジェクトが不規則なプロファイルを有していて、理想的で正確なヒットテスト結果が期待される時、多くの公式がプロファイルを定義するために導入される必要があり、時には、オブジェクトのプロファイルは、ヒットテスト領域をデザインすることによって正確に記述することはできない。この場合、不規則なオブジェクトのためのヒットテストを正確に実行することは困難である。さらに、ヒットテストの間、オブジェクトのヒットテスト領域が複雑であるほど、コンピュータ資源は消費される。従って、従来技術のヒットテスト技術は、また、大量のコンピュータ資源を占有する。
【０００６】
加えて、既存のヒットテスト技術において、物体のプロファイルが変わる時、特に不規則な物体のプロファイルが変わる時、時間内にヒットテスト領域を更新することは困難であり、ヒットテスト結果を不正確にする。
【発明の概要】
【課題を解決するための手段】
【０００７】
本発明のいくつかの実施態様は、ヒットテスト方法を提供し、その中で、ヒットテストは、不規則なプロファイルを有するオブジェクトに対して、またはプロファイルがオブジェクトのために変化する時、正確に行われ得る。ここでのプロファイルは、オブジェクトの外形または輪郭を指す。
【０００８】
本発明のいくつかの実施態様は、ヒットテスト装置を提供し、これは、不規則なプロファイルを有するオブジェクトに対して、またはプロファイルがオブジェクトのために変化する時、ヒットテストを正確に行うことができる。
【０００９】
本発明の実施態様は、以下の具体的な技術的解決策を採用する。
【００１０】
コンピューティングデバイスのスクリーン上に表示されるオブジェクトへのヒットを識別するためのヒットテスト方法は、
スクリーン上に表示されるオブジェクトのピクセルの色値をオブジェクトの対応する識別子（ＩＤ）値に置き換えるステップと、
このＩＤ値をビットマップアレイ内に格納するステップとを有していて、ビットマップアレイの各要素は、それぞれのオブジェクトの１つ以上のピクセルに対応し、
更に、ヒットイベントをキャプチャするステップに応じて、このヒットイベントに対応するスクリーン上のヒット座標を取得するステップと、
このヒット座標に対応するビットマップアレイ要素を決定するステップと、
ビットマップアレイ要素と関連するＩＤ値に従って、ヒットイベントに関係するオブジェクトを識別するステップとを有している。
【００１１】
ヒットテスト装置は、１つ以上のプロセッサと、メモリと、メモリ内に保存されていて、１つ以上のプロセッサによって実行されるための１つ以上のプログラムユニットとを備えていて、１つ以上のプログラムユニットは、識別子（ＩＤ）値設定ユニット、ヒットイベントキャプチャユニット、およびヒットテストユニットを含み、
ＩＤ値設定ユニットは、スクリーン上に表示されるオブジェクトのピクセルの色値をオブジェクトの対応する識別子（ＩＤ）値に置き換えて、このＩＤ値をビットマップアレイ内に格納するように構成されていて、ビットマップアレイの各要素は、それぞれのオブジェクトの１つ以上のピクセルに対応し、
ヒットイベントキャプチャユニットは、ヒットイベントをキャプチャして、このヒットイベントに対応するヒット座標を取得するように構成されていて、
ヒットテストユニットは、ヒット座標に対応するビットマップアレイ要素を決定して、このビットマップアレイ要素と関連するＩＤ値に従って、ヒットイベントに関係するオブジェクトを識別するように構成されている。
【００１２】
本発明の実施態様の中に示されているように、オブジェクトのピクセルの色値は、オブジェクトのＩＤ値に置き換えられる。さらに、スクリーン上に表示されるオブジェクトのＩＤ値は、スクリーン上のオブジェクトのピクセルの座標に対応するビットマップアレイ内に格納される。ヒットイベントがキャプチャされる時、このヒットイベントに対応するヒット座標が取得される。ヒット座標に対応するビットマップアレイ要素を決定するために、ビットマップアレイがヒット座標に従って検索され、ヒットイベントに関係するオブジェクトが、ビットマップアレイ要素に格納されたオブジェクトのＩＤ値に従って識別される。示したように、本発明の実施態様によって、ヒットテストは、ビットマップアレイからＩＤ値を検索して、ＩＤをオブジェクトと照合することによって行われ得る。ヒットテスト領域が予めデザインされている必要はないので、ヒットテストは、不規則なプロファイルを有するオブジェクトに対して、またはプロファイルが変化する時に正確に行われ得る。これにより、ヒットテストの効率を改善する。
【００１３】
さらに、本発明の実施態様によれば、各ピクセルのＩＤ値がビットマップアレイ内に格納される時、格納されるシナリオは、元のオブジェクトのスクリーンより小さくてよい。これにより、記憶空間を節約して、レンダリング効率および計算速度を改善する。
【００１４】
上述した本発明の実施態様は、追加の実施態様と同様に、図面を参照しながら、さまざまな本発明の態様の以下の詳細な説明の結果として、より明確に理解されるであろう。図面のいくつかのビューを通して、同じ参照番号は、対応する部分を指す。
【図面の簡単な説明】
【００１５】
【図１】本発明の一実施態様によるヒットテスト方法のフローチャートである。
【図２】本発明の一実施態様による３つのオブジェクトを示している概略図である。
【図３】本発明の一実施態様によるビットマップアレイの一部を示している概略図である。
【図４】本発明の一実施態様によるヒットテスト装置の構成図である。
【図５】本発明の一実施態様によるヒットテスト装置のブロック図である。
【発明を実施するための形態】
【００１６】
本発明の目的、技術的解決策、および利点をより分かりやすくするために、以下、本発明を、添付図面を参照して更に詳細に説明する。
【００１７】
本発明の実施態様において、不規則なプロファイルを有するオブジェクトに対するヒットテスト問題およびオブジェクトのプロファイルが変化する時のヒットテスト問題を解決するために、ヒットテストは、ビットマップアレイを得るためにリアルタイムレンダリングを実行することを含む方法によって行われる。
【００１８】
第１のレンダリングが１つのオブジェクトシナリオに対して完了され、レンダリング結果がスクリーン上に表示された後に、好ましくは、本発明のいくつかの実施態様の中で実施されるように、第２のレンダリングが更に実行される。第２のレンダリングの中で、オブジェクトの各ピクセルの色値がオブジェクトのＩＤ値に置き換えられ、レンダリング効率を改善するために、ヒットテストとは無関係な他のレンダリング効果が選択的に使用不可にされる。例えば、ＩＤ値は、さまざまなオブジェクトがお互いを効果的に区別され得るような唯一の番号または唯一の数の組であり得る。色値の効果的な設定を可能にするために、ＩＤ値は、色値が格納されて使われるフォーマットと整合していてもよい。ＩＤ値は、プログラムによって自動的に設定されてもよいし、あるいはユーザによって手動で設定されてもよい。いくつかの実施態様において、各オブジェクトは、ただ１つのＩＤ値を持つ。オブジェクトの各ピクセルの色値がオブジェクトのＩＤ値に置き換えられた後で、これらのピクセルまたはこれらのピクセルの座標が、ビットマップアレイ（例えば、２次元アレイ）の形で格納され得る。そして、ヒットイベントのヒット座標に従って、対応するビットマップアレイ要素が取得され、このビットマップアレイ要素におけるオブジェクトのＩＤ値に従って、ヒットイベントに関係するオブジェクトが識別される。
【００１９】
以下、本発明の実施態様を、具体的なプロセスと共に詳細に説明する。
【００２０】
図１は、本発明の一実施態様によるヒットテスト方法のフローチャートである。
【００２１】
図１に示すように、この方法は以下のステップを有している。
【００２２】
ステップ１０１：スクリーン上に表示されるオブジェクトのピクセルの色値をオブジェクトの対応する識別子（ＩＤ）値に置き換える。
【００２３】
ステップ１０２：ＩＤ値をビットマップアレイ内に格納する。ここで、ビットマップアレイの各要素は、それぞれのオブジェクトの１つ以上のピクセルに対応する。
【００２４】
一般に、オブジェクトに関係するデータは、例えば位置情報、色情報、および形情報のような一連のデータを含む。一般的なレンダリングプロセスにおいて、オブジェクトの各ピクセルの色情報データをビットマップデータに変換することによって、オブジェクトは、ビットマップの形で示され得る。このプロセスは、第１のレンダリングと呼ばれ得る。
【００２５】
一般に、第１のレンダリングにおいて、オブジェクトを立体的にするために、レンダリングプログラムは、どの物体が前にあり、どの物体が後ろにあり、かつどの物体が遮られているかを判定する必要がある。カメラを通して、レンダリングされる必要がある範囲を取得した後に、レンダリングプログラムは、オブジェクトの物体上の光源の影響を計算する必要がある。加えて、例えばオブジェクトの透明度および位置決めのような他の要因もまた考慮される必要がある。 
【００２６】
そのうえ、部分(area)光源を用いた後には、レンダリングプログラムは、さらにソフトな影を計算する必要があり、特に、シナリオにおける光源が特別な光源効果を利用する時には、レンダリングプログラムは、効果の結果を計算するために、さらに多くのシステム資源を消費する必要がある。その後、レンダリングプログラムは、さらに、オブジェクトの材料に基づいてオブジェクトの表面の色を計算する必要がある。異なるタイプの材料、異なる属性、および異なるテクスチャのオブジェクトのせいで、異なる効果が発生する。レンダリングプロセスのいくつかの共通の特徴は、シェーディング、テクスチャマッピング、バンプ(bump)マッピング、かぶり(fogging)/参加(participating)媒体、影、ソフトな影、反射、透明、半透明、屈折、回折、間接照明、火線、被写界深度、ぶれ(motion blur)、非フォトリアリスティックレンダリング等を含み得るが、これらに限定されるわけではない。
【００２７】
本発明の実施態様において、正確で効率的なヒットテストを可能にするために、第２のレンダリングが実行される。各オブジェクトのピクセルの色値がオブジェクトのＩＤ値に置き換えられ、オブジェクトのピクセルは、オブジェクトのピクセルの座標に対応するビットマップアレイに格納される。
【００２８】
例えば、いくつかの実施態様において、ヒットテストシナリオ、例えばスクリーンが９６０×６４０ピクセルを有していて、このヒットテストシナリオは複数のオブジェクトを含み、各々が複数のピクセルを占めると仮定する。まず、オブジェクトシナリオにおける各オブジェクトのピクセルの色値が、対応するオブジェクトのＩＤ値に設定され、次に、オブジェクトシナリオは、ビットマップアレイ（好ましくは、２次元アレイ）に格納され得る。例えばＡ[ｍ][ｎ]において、ｍが、オブジェクトシナリオの座標系の水平座標に対応し、かつ０から９５９の範囲の値を有し、ｎが、オブジェクトシナリオの座標系の垂直座標に対応し、かつ０から６３９の範囲の値を有するとする。この実施態様において、オブジェクトシナリオのピクセル座標系は、２次元アレイＡ[ｍ][ｎ]に完全に対応する。オブジェクトのＩＤ値はピクセルの色値を置き換えるので、ピクセルをビットマップアレイ内に格納することは、色値、従ってビットマップアレイ内のオブジェクトのＩＤ値を格納することに等しい。もしオブジェクトが唯一のＩＤ値のみを有するのであれば、オブジェクトのピクセルの色値は一定になる。しかし、第２のレンダリングは、レンダリング結果の表示を必要としない。
【００２９】
ヒットテストが単一ピクセルレベルの精度を必要としないいくつかの場合に対して、第２のレンダリングのシナリオのサイズは、第１のレンダリングのシナリオと同じである必要はなく、例えば１／２、１／４、１／８またはそれ以下のように、比例して小さくてもよい。ヒットテストは境界に敏感(border sensitive)であるので、それは、タッチ点を、両方向に同じ縮尺で、第２のレンダリングにおいて用いられるバッファ領域のサイズに圧縮することによって行われ得る。これにより、レンダリング効率を改善する。
【００３０】
他の実施態様においては、記憶空間を節約して、計算速度を速めるために、オブジェクトのＩＤ値の記憶が、オブジェクトのビットマップのピクセル座標系に格納される前に、両方向に同じ縮尺で圧縮され得る。ビットマップアレイは、ヒットテストシナリオのピクセルの座標に対応する。
【００３１】
例えば、一実施態様において、オブジェクトシナリオが９６０×６４０ピクセルを有すると仮定すると、このオブジェクトシナリオは、ピクセル領域内に複数のオブジェクトを含み得る。まず、オブジェクトシナリオにおける各オブジェクトのピクセルの色値が、オブジェクトの対応するＩＤ値に置き換えられ、次に、オブジェクトシナリオは、２次元アレイＡ[ｍ][ｎ]によって格納される。ここで、ｍの値は０から４７９の範囲であり、ｎの値は０から３１９の範囲であり得る。この実施態様において、２次元アレイＡ[ｍ][ｎ]は、スクリーン上の複数のピクセルを、両方向に同じ圧縮スケールで、ビットマップアレイの１つの要素にマッピングすることによって、オブジェクトシナリオの座標系を元のサイズの１／４に圧縮することに等しい。一実施態様において、圧縮は、ビットマップアレイ内にＩＤ値を格納する前に行われる。他の実施態様において、ビットマップアレイは、いくつかのピクセル、例えば偶数のみのＩＤ値だけを組み込む。
【００３２】
他の例のために、一実施態様において、オブジェクトシナリオが９６０×６４０ピクセルを有すると仮定すると、このオブジェクトシナリオは、複数のオブジェクトを含み得る。まず、オブジェクトシナリオにおける各オブジェクトのピクセルの色値が、対応するＩＤ値に置き換えられ、次に、オブジェクトシナリオは、２次元アレイＡ[ｍ][ｎ]によって格納される。ここで、ｍの値は０から２３９の範囲であり、ｎの値は０から１５９の範囲であり得る。この実施態様において、アレイＡ[ｍ][ｎ]は、オブジェクトシナリオの座標系をその１／８に圧縮することに等しい。
【００３３】
本発明の実施態様において、ビットマップアレイは、メモリ内の専用バッファ領域または記録媒体に格納され得る。そして、具体的な記録媒体は、フロッピー(登録商標)ディスク、光ディスク、ＤＶＤ、ハードディスク、フラッシュメモリ、ＵＳＢフラッシュディスク、ＣＦカード、ＳＤカード、ＭＭＣカード、ＳＭカード、メモリースティック、およびＸＤカードを含み得るが、これらに限定されるわけではない。
【００３４】
ステップ１０１および１０２において、オブジェクトのピクセルの色値は、オブジェクトのＩＤ値に変えられて、記録媒体、例えばバッファ領域に格納され、第２のレンダリングにおいて用いられ得る。好ましくは、具体的なヒットテストは、第２のレンダリングによって実行され得る。ステップ１０１および１０２は、第１のレンダリングの前または後に実行され得る。
【００３５】
一般に、レンダリングは、コンピュータプログラムによってデジタル画像を生成するプロセスである。あるシナリオにおいてレンダリングされるオブジェクトの表示色は、例えば、ジオメトリ、視点、材料、テクスチャ、ライティング/照明、シェーディング、オブジェクトの頂点(vertex)色、マッピング、およびミキシング(mixing)モード等のような多くの要因によって決定されるが、これらに限定されるわけではない。レンダリングプロセスは、オブジェクトがどのように表示され、かつ/または用いられるべきかを決定するために、通常、要因の全部または一部を考慮に入れて計算を行う。上述したように、レンダリングプロセスのいくつかの共通の特徴は、シェーディング、テクスチャマッピング、バンプ(bump)マッピング、かぶり(fogging)/参加(participating)媒体、影、ソフトな影、反射、透明、半透明、屈折、回折、間接照明、火線、被写界深度、ぶれ(motion blur)、および非フォトリアリスティックレンダリングを含み得る。しかし、本発明における第２のレンダリングは、大部分はヒットテストおよびオブジェクトの識別を容易にすることを意図している。従って、普通のレンダリングのある態様は、本発明の第２のレンダリングにおいて、必要ではないか、または有害であり得る。例えば、第２のレンダリングの前に、照明および複合(hybridization)のような効果は、効率を改善するために使用不可にされ得る。事実、上述した特徴の大部分、特に色レンダリングに関係する特徴の態様は、使用不可にされ得る。例えば、テクスチャマッピングの間、オブジェクトのＩＤ値が変更されるのを防止するために、アルファチャネル動作に関係するプロセスのみが開始されるのを許され得る。アルファチャネル動作は特に透明を扱うので、バッファ領域に最終的に出力されるオブジェクトの色は、最初に入力されたオブジェクトの色値（ＩＤ値）にのみ関係する。照明およびぶれのような他の特徴は、ヒットテストに対する予想において、より効果的なレンダリングを可能にするために、同様に変更され得る。加えて、透明体に対しては、物体の境界は、アルファテストを開始および停止することによって決定され得る。それにもかかわらず、いくつかの場合において、特に内蔵型グラフィックプロセスユニット（ＧＰＵ）で、あまりに多くの使用不可は、より多くのシステム資源の消費を引き起こし得る。従って、それは、最適な効果が取得され得るように、普通のレンダリングのどの態様が使用不可にされる必要があるかに関して、フレキシブルであるべきである。
【００３６】
特に、いくつかの実施態様において、ある色特性レンダリング属性は、オブジェクトのＩＤ値であるべき各オブジェクトのピクセルの色値を設定する前に、使用不可にされる。このようなオブジェクトの色特性レンダリング属性は、具体的には、照明属性値、材料属性値、およびミキシングモード属性値を含み得る。
【００３７】
ステップ１０３：ヒットイベントをキャプチャして、このヒットイベントに対応するヒット座標を取得する。
【００３８】
第１のレンダリングが完了した後に、ビットマップが表示され得る。表示されたビットマップ上のユーザのヒットイベントがキャプチャされることを可能にする。そして、ヒットイベントに対応するヒット座標が取得される。ヒットイベントは、例えばマウスカーソルまたはタッチポイントのような、ユーザに制御されるカーソルの、オブジェクトを表示しているスクリーン上のオブジェクトとの交差を含み得る。ビットマップを表示するための特定の必要条件はないことにも留意される。
【００３９】
上記のように、さまざまな検知技術が、ヒットイベントを検出して、このヒットイベントに対応するヒット座標を取得するために用いられ得る。例えば、タッチスクリーンにタッチすること、またはマウスをクリックすることである。
【００４０】
ステップ１０４：ヒット座標に対応するビットマップアレイ要素を決定する。
【００４１】
ステップ１０５：ビットマップアレイ要素と関連するＩＤ値に従って、ヒットイベントに関係するオブジェクトを識別する。
【００４２】
ヒット座標が取得された後に、ビットマップアレイは、ヒット座標に対応するビットマップアレイ要素を決定するために、ヒット座標に従って問い合わせられ得る。そして、ヒットイベントに関係するオブジェクトは、ビットマップアレイ要素と関連するＩＤ値に従って識別される。特に、色値はビットマップアレイ要素に格納され、ステップ１０１に示したように、オブジェクトのＩＤ値は元の色値を置き換えているので、ＩＤ値は、決定されたビットマップアレイ要素に関連するものとして識別され得る。各オブジェクトは唯一のＩＤ値を有するので、ヒット座標と関連するオブジェクトが識別され得る。そして、このオブジェクトは、ヒットイベントに関係するオブジェクトに決定される。
【００４３】
オブジェクトシナリオのピクセル座標系がビットマップアレイに完全に対応する時、ヒット座標は、ビットマップアレイからビットマップアレイ要素を検索するために直接用いられ得る。ここで、ビットマップアレイ要素は、ヒット座標に対応している。
【００４４】
オブジェクトシナリオのピクセル座標系がビットマップアレイに完全には対応しておらず、ビットマップアレイに合うように両方向に同じ縮尺で圧縮されている時、ヒット座標は、ヒット座標に対応するビットマップアレイ要素が識別され得る前に、同じ縮尺で対応して圧縮される必要がある。代替案として、ヒット座標が、ビットマップアレイに問い合わせて、ヒットイベントに対応するビットマップアレイを識別するために用いられ得る前に、ビットマップアレイは、比例して拡大され得る。
【００４５】
本発明のいくつかの実施態様に示すように、図２は、３つのオブジェクトを含むヒットテストシナリオの概略図である。図３は、本発明のいくつかの他の実施態様による、ビットマップアレイのピクセルの色値の記憶を示す概略図である。
【００４６】
図２に示すように、このシナリオは、一番下から一番上まで３つのオブジェクトを含み、これらは、それぞれ、１のＩＤ値を有する第１のオブジェクト２０１、２のＩＤ値を有する第２のオブジェクト２０２、および３のＩＤ値を有する第３のオブジェクト２０３である。
【００４７】
第１のオブジェクト２０１は楕円の物体であって、そのＩＤ値は１であり、第２のオブジェクト２０２は三角形の物体であって、そのＩＤ値は２であり、第３のオブジェクト２０３は不規則な物体であって、そのＩＤ値は３である。
【００４８】
数学によって不規則な物体の境界の関数を記述することは難しいので、ヒットが起こった時、どのオブジェクトがこのヒットに関係するのかを正確に判定することはかなり難しい。
【００４９】
本発明の実施態様によって、オブジェクトの各ピクセルの色値は、オブジェクトのＩＤ値に置き換えられ、それから全てのオブジェクトは、ビットマップアレイＡ[ｍ][ｎ]内のバッファ領域に記憶される。色値はＩＤ値によって置き換えられているので、各オブジェクトが唯一のＩＤ値を有する時、各オブジェクトの色は、好ましくは一様である。
【００５０】
この実施態様において、記憶されたビットマップアレイの一部が図３に示されていて、このビットマップアレイは、ヒットイベントの位置を特定するために用いられ得る。この例示的な実施態様においては、オブジェクトシナリオのピクセル座標系は、ビットマップアレイに完全に対応している。
【００５１】
この実施態様において、ヒットイベントのヒット座標が（２４０，１４０）であると判定される時、このヒットイベントと関連するオブジェクトは、バッファリングされたビットマップアレイ内のビットマップアレイ要素[２３９][１３９]に記憶されていたＩＤ値を取り出すことによって識別され得る（アレイの添字は０から始まるので、ヒット座標の水平座標および垂直座標から１が減算される必要がある）。図３に示すように、バッファリングされたビットマップアレイ要素[２３９][１３９]から取り出された（長方形で取り囲まれた）色値すなわちＩＤ値は３であり、第３のオブジェクト２０３は３のＩＤ値を有するので、ヒットイベントと関連するオブジェクトはオブジェクト２０３であると判定され得る。
【００５２】
いくつかの実施態様における一例として、オブジェクトシナリオが９６０×６４０ピクセルを有すると仮定すると、ビットマップアレイＡ[ｍ][ｎ]には、圧縮によってオブジェクトシナリオの１／４が記憶される。すなわち、ビットマップアレイのｍの値は０から４７９の範囲であり、ｎの値は０から３１９の範囲であり得る。２次元アレイＡ[ｍ][ｎ]は、オブジェクトシナリオのピクセル座標系を、その１／４に圧縮することに等しい。
【００５３】
この場合、ヒットイベントのヒット座標が取得された後に、ヒット座標は、水平座標および垂直座標が２で割られるように縮小され得る。結果として得られた座標は、それから、バッファリングされたビットマップアレイから対応するビットマップ要素を取り出して、ヒットイベントと関連するオブジェクトのＩＤ値を判定するために用いられる。例えば、ヒット座標がまだ（２４０，１４０）である時、ヒットイベントと関連するオブジェクトを識別するために、ビットマップアレイ要素[１１９][６９]が、バッファリングされたビットマップアレイから取り出され得る。そして、このビットマップアレイ要素と関連するＩＤ値が、それに応じて判定される必要がある。
【００５４】
いくつかの実施態様における他の例として、オブジェクトシナリオが９６０×６４０ピクセルを有すると仮定すると、ビットマップアレイＡ[ｍ][ｎ]には、圧縮によってオブジェクトシナリオの１／１６が記憶される。すなわち、ビットマップアレイのｍの値は０から１１９の範囲であり、ｎの値は０から７０の範囲であり得る。２次元アレイＡ[ｍ][ｎ]は、オブジェクトシナリオのピクセル座標系を、その１／１６に圧縮することに等しい。
【００５５】
この場合、ヒットイベントのヒット座標が取得された後に、それは、水平座標および垂直座標が４で割られるように縮小される。それから、結果として得られた座標は、バッファリングされたビットマップアレイから関連するビットマップアレイ要素を取り出して、オブジェクトのＩＤ値を判定するために用いられる。例えば、ヒット座標がまだ（２４０，１４０）であると判定される時、座標[５９][３４]と関連するビットマップアレイが取り出され、それと関連するＩＤ値が識別され、（２４０，１４０）におけるヒットイベントと関連するオブジェクトを判定する。
【００５６】
本発明の実施態様を、圧縮比が１／４、１／８、および１／１６である例を通して詳細に説明した。当業者であれば、具体的な比は単なる例に過ぎず、本発明の実施態様を限定することを意図しているのではないことに気づき得る。
【００５７】
上記の詳細な分析に基づいて、本発明の実施態様は、さらに、ヒットテスト装置を提供する。
【００５８】
図４は、本発明のいくつかの実施態様によるヒットテスト装置の構成図である。図４に示すように、この装置は、ＩＤ値設定ユニット４０１、ヒットイベントキャプチャユニット４０２、およびヒットテストユニット４０３を備えている。
【００５９】
ＩＤ値設定ユニット４０１は、スクリーン上に表示されるオブジェクトのピクセルの色値をオブジェクトの対応する識別子（ＩＤ）値に置き換えて、このＩＤ値をビットマップアレイ内に格納するように構成されていて、ビットマップアレイの各要素は、それぞれのオブジェクトの１つ以上のピクセルに対応する。
【００６０】
ヒットイベントキャプチャユニット４０２は、ヒットイベントをキャプチャして、このヒットイベントに対応するヒット座標を取得するように構成されている。
【００６１】
ヒットテストユニット４０３は、ヒット座標に対応するビットマップアレイ要素を決定して、このビットマップアレイ要素と関連するＩＤ値に従って、ヒットイベントに関連するオブジェクトを識別するように構成されている。
【００６２】
いくつかの実施態様において、ＩＤ値設定ユニット４０１は、オブジェクトのＩＤ値を、オブジェクトのピクセル座標系に対して両方向に同じ縮尺で圧縮された形で、オブジェクトのピクセルの座標に対応するビットマップアレイ内に格納するように構成されている。
【００６３】
一実施態様において、この装置は、さらに、レンダリングユニット４０４を備えている。
【００６４】
レンダリングユニットは、オブジェクトのピクセルをビットマップ内に予めレンダリングして、このビットマップを選択的に表示するように構成されていて、ヒットイベントキャプチャユニット４０３は、表示されたビットマップ上のヒットイベントをキャプチャして、このヒットイベントに対応するヒット座標を取得するように構成されている。
【００６５】
いくつかの実施態様において、ＩＤ値設定ユニット４０１は、各オブジェクトのピクセルの色値をオブジェクトのＩＤ値になるように設定して、オブジェクトのピクセルの少なくとも１つの色特性レンダリング属性を使用不可にし、かつオブジェクトのピクセルをビットマップアレイ内に格納するように構成されている。オブジェクトの使用不可にされる色特性レンダリング属性は、具体的には、照明属性値、材料属性値、および混合モード属性値を含む。いくつかの実施態様においては、全ての色特性レンダリング属性が使用不可にされる。いくつかの他の実施態様においては、１つ以上の色特性レンダリング属性が使用不可にされる。
【００６６】
一実施態様において、ヒットテストユニット４０３は、ヒット座標に対応しているビットマップアレイ要素のためのビットマップアレイについて問い合わせて、ビットマップアレイ要素からオブジェクトの格納されたＩＤ値を取得し、このＩＤ値に対応するオブジェクトをヒットイベントに関係するオブジェクトとして決定するように構成されている。
【００６７】
図５は、本発明のいくつかの実施態様によるヒットテスト装置５００（例えば、移動端末またはコンピュータ）の種々の構成要素を示しているブロック図である。ある特定の特徴が示されているが、当業者は、様々な他の特徴が、簡潔のために、かつここで開示される実施態様のより関連する態様を不明瞭にしないために示されなかったことを、本開示から理解するであろう。そのために、デバイス５００は、メモリ５０１と、メモリ５０１内に記憶されているモジュール、プログラムおよび/または命令を実行して、これにより予め定められた動作を実行するための１つ以上のプロセッサ５０２と、１つ以上のネットワークまたは他の通信インターフェイス５１０と、これらの構成要素を相互接続するための１つ以上の通信バス５１４とを備えている。
【００６８】
いくつかの実施態様において、デバイス５００は、表示デバイス５０８（例えばスクリーン）と、１つ以上の入力デバイス５０６（例えば、タッチスクリーンまたはキーボード/マウス）とを有するユーザインターフェイス５０４を備えている。デバイス５００がスマートフォンである時、タッチスクリーンは、表示デバイス５０８および入力デバイス５０６の両方である。オブジェクト５３５は、表示デバイス５０８上に表示され、ユーザは、入力デバイス５０６を用いてヒットイベントを実行し、ヒットイベントと関連するオブジェクトを識別するプロセスを開始する。
【００６９】
いくつかの実施態様において、メモリ５０１は、高速ランダムアクセスメモリ、例えばＤＲＡＭ、ＳＲＡＭ、または他のランダムアクセス固体メモリデバイスを含む。いくつかの実施態様において、メモリ５０１は、不揮発性メモリ、例えば１つ以上の磁気ディスク記憶デバイス、光ディスク記憶デバイス、フラッシュメモリデバイス、または他の不揮発性固体記憶デバイスを含む。いくつかの実施態様において、メモリ５０１は、プロセッサ５０２から遠隔に位置する１つ以上の記憶デバイスを含む。メモリ５０１、またはその代わりとしてのメモリ５０１内の１つ以上の記憶デバイス（例えば、１つ以上の不揮発性記憶デバイス）は、非一時的コンピュータ可読記録媒体を含む。
【００７０】
いくつかの実施態様において、メモリ５０１またはメモリ５０１のコンピュータ可読記録媒体は、以下のプログラム、モジュールおよび関連する情報アイテム、またはその一部を記憶する。
●様々な基本システムサービスを扱うため、およびハードウェアに依存するタスクを実行するための手順を含むオペレーティングシステム５１５
●通信ネットワークインターフェイス５１０およびインターネット、他のワイドエリアネットワーク、ローカルエリアネットワーク、メトロポリタンエリアネットワーク等のような（有線または無線の）１つ以上の通信ネットワークを介して、デバイス５００を他のデバイス（例えば、遠隔オンラインゲームサーバ）に接続するために用いられるネットワーク通信モジュール５１６
●オブジェクト５３５のピクセル５４０をビットマップ５５０内に予めレンダリングして、ビットマップ５５０を表示するためのレンダリングモジュール５１８
●各オブジェクト５３５のピクセル５４０の色値５４５をオブジェクト５３５の識別子（ＩＤ）値５３７に置き換えて、ピクセル５４０をオブジェクト５３５のピクセル５４０の座標５４９に対応するビットマップアレイ５５５内に格納するためのＩＤ値設定モジュール５２０
●ヒットイベント５３０をキャプチャして、このヒットイベント５３０に対応するヒット座標５３１を取得するためのヒットイベントキャプチャモジュール５２２
●ヒット座標５３１に対応するビットマップアレイ要素５５５を取得して、ビットマップアレイ要素５４９と関連するＩＤ値５３７に従って、ヒットイベント５３０に関連するオブジェクト５３５を識別するためのヒットテストモジュール５２４
●以下のものに限定されるわけではないが、オブジェクト５３５、オブジェクト５３５と関連するＩＤ値５３７、各ピクセルが色値５４５およびピクセル座標５４９を有するオブジェクト５３７のピクセル５４０、ヒットテストシナリオのビットマップ５５０のような情報アイテム。ビットマップ５５０は、同じ数の、または比例するピクセル座標５４９に対応する多くのビットマップアレイ要素５５６を含むビットマップアレイ５５５と関連する。
【００７１】
上記のように、オブジェクト５３５とビットマップ５５０の対応する関係が、オブジェクト５３５のピクセル５４０の色値５４５をオブジェクトのＩＤ値５３７になるように設定することによって確立される。色値５４５（従ってＩＤ値５３７）およびピクセル座標５４９と共に、ピクセル５４０が、ビットマップアレイ５５５内に格納される。個々のＩＤ値は、ビットマップアレイ５５５のビットマップアレイ要素５５６と関連していて、ビットマップアレイ５５５は、ピクセル座標５４９またはそのビットマップの両方向に同じ縮尺で圧縮された数と同じ数のビットマップアレイ要素５５６を有している。ヒットイベント５３０がキャプチャされ、かつヒット座標５３１がビットマップアレイ５５５に合う前にヒット座標５３１がキャプチャされ、ここでビットマップアレイ要素５５６が識別され、従って関連するピクセル５４０およびこのピクセル５４０の色値５４５を識別する。色値５４５はオブジェクト５３５のＩＤ値５３７であるので、ヒットイベント５３０と関連するオブジェクト５３５が、従って識別される。
【００７２】
このプロセスの中で、色値５４５をＩＤ値５３７になるように設定する（ＩＤ値５３７を用いて元の色値を置き換える）ステップは、第２のレンダリングプロセスとして捉えられ得る。上記のように、普通のレンダリングプロセスは、通常、非常に複雑であり、シェーディング、テクスチャマッピング、バンプマッピング、かぶり/参加媒体、影、ソフトな影、反射、透明、半透明、屈折、回折、間接照明、火線、被写界深度、ぶれ、および非フォトリアリスティックレンダリングのような複数の特徴を扱う多くのプロセスを含むが、これらに限定されるわけではない。効率を改善するために、ある特徴は、第２のレンダリングプロセスの前は使用不可とされ得る。他の観点から、いくつかのプロセスの中では、オブジェクトの色に関わるある態様は、オブジェクトの設定された色値が変えられないように、使用不可とされ得る。そして、予測可能なヒットテスト結果およびオブジェクトの正確な識別を保証する。
【００７３】
上記のように、本発明の実施態様で、ヒットテストは、ビットマップアレイ内でＩＤ値を検索することによって行われる。ヒットテスト領域は予めデザインされている必要はないので、ヒットテストは、不規則な輪郭を有する、または輪郭が変化する時のオブジェクトに対しても正確に実行され得る。これにより、ヒットテストの精度を改善する。
【００７４】
さらに、本発明の実施態様において、各ピクセルのＩＤ値がビットマップデータとして記憶される時、記憶されるシナリオは元のオブジェクトシナリオより小さい可能性がある。これにより、記憶空間を節約して、レンダリング効率および計算速度を改善する。
【００７５】
上記の説明は、本発明の例示的な実施態様に過ぎず、本発明の保護範囲を限定することを意図しているのではない。本発明の趣旨および原理から逸脱することなくなされたいかなる変更、等価な置き換え、または改善も、本発明の保護範囲に入れるべきである。
【００７６】
具体的な実施態様を上記で説明したが、本発明をこれらの具体的な実施態様に限定することが意図されているわけではないことは理解されよう。そうではなく、本発明は、添付の請求項の趣旨および範囲内である変形例、変更態様および等価物を含む。多数の具体的な詳細は、ここで提示される発明の完全な理解を提供するために記載されている。しかし、本発明が、これらの具体的な詳細なしで実施され得ることは、当業者にとって明らかであろう。他の例において、周知の方法、手順、構成要素、および回路は、実施例の態様を不必要に不明瞭にしないために詳述しなかった。
【００７７】
用語「第１」、「第２」等が、様々な要素を記載するために、ここで用いられているかもしれないが、これらの要素は、これらの用語によって限定されるべきではない。これらの用語は、１つの要素をもう１つと区別するために用いられているに過ぎない。例えば、本発明の範囲から逸脱することなく、第１の順位の特徴が第２の順位の特徴と称され得るし、同様に、第２の順位の特徴が第１の順位の特徴と称され得る。第１の順位の特徴および第２の順位の特徴は、どちらも順位付けされた特徴ではあるが、同じ順位の特徴ではない。
【００７８】
ここで本発明の説明の中で用いられた用語は、単に具体的な実施態様を記載するためであって、本発明の限定を意図しているのではない。本発明および添付の請求項の記載の中で用いられる時、単数形"a"、"an"、および"the"は、文脈が別の方法で明確に示さない限り、複数形も含むことが意図されている。ここで用いられる時の用語"and/or"は、１つ以上の関連する列挙された項目の任意および全ての可能な組み合わせを意味し、かつ含むことも理解されよう。さらに、用語"includes"、"including"、"comprises"、および/または"comprising"は、この明細書の中で用いられる時、記載された特徴、動作、要素、および/または構成要素の存在を特定するが、１つ以上の他の特徴、動作、要素、構成要素、および/またはそのグループの存在または追加を排除しないことも理解されよう。
【００７９】
ここで用いられる時、用語"if"は、"when"または"upon"または"in response to determining"または"in accordance with a determination"または"in response to detecting"を意味する、すなわち文脈に応じて記載された先行条件が真であると解釈され得る。同様に、フレーズ"if it is determined [that a stated condition precedent is true]"または"if [a stated condition precedent is true]"または"when [a stated condition precedent is true]"は、"upon determining"または"in response to determining"または"in accordance with a determination"または"upon detecting"または"in response to detecting"を意味する、すなわち文脈に応じて記載された先行条件が真であると解釈され得る。
【００８０】
様々な図面のうちのいくつかが、特定の順序で多くの論理的過程を示しているが、順序によらない過程が、再度順序付けられ得るし、かつ他の過程が、結合され又は取り外され得る。いくつかの再度の順序付け又は他のグループ化が、具体的に述べられていると共に、他のものは、当業者にとって明らかであるので、代替案の網羅的なリストを示すことはしない。さらに、これらの過程が、ハードウェア、ファームウェア、ソフトウェアまたはそれらの任意の組み合わせの中で実施され得ることは認められるべきである。
【００８１】
前述の記載は、説明の目的のために、特定の実施態様に関して記載された。しかし、上記の説明的な記述は、網羅的であること又は本発明を開示された正確な形に限定することを意図しているのではない。上記の教示から見て、多くの変更および変形が可能である。実施態様は、最も良く本発明の原理およびその実際的な応用を説明して、それにより、予想される特定の用途に適合する時、他の当業者が最も良く本発明および様々な変更を有する様々な実施態様を利用することができるように、選択されかつ記載された。実施態様は、添付の請求項の趣旨および範囲内である代替案、変更および等価物を含む。多数の具体的な詳細は、ここに提示された発明の完全な理解を提供するために記載された。しかし、本発明がこれらの具体的な詳細なしで実施され得ることは、当業者にとって明らかである。他の例の中の、周知の方法、手順、構成要素、および回路は、実施態様を不必要に不明瞭にすることがないよう、詳述しなかった。
【符号の説明】
【００８２】
２０１  第１のオブジェクト
２０２  第２のオブジェクト
２０３  第３のオブジェクト
４０１  識別子値設定ユニット
４０２  ヒットイベントキャプチャユニット
４０３  ヒットテストユニット
４０４  レンダリングユニット
５０２  プロセッサ
５１０  通信インターフェイス
５０４  ユーザインターフェイス
５０８  ディスプレイ
５０６  入力デバイス（タッチスクリーンまたはキーボード/マウス）
５０１  メモリ
５１５  オペレーティングシステム
５１６  ネットワーク通信モジュール
５１８  レンダリングモジュール
５２０  識別子値設定モジュール
５２２  ヒットイベントキャプチャモジュール
５２４  ヒットテストモジュール
５３５  オブジェクト
５３７  ＩＤ値
５４０  ピクセル
５４５  色値
５４９  ピクセル座標
５３０  ヒットイベント
５３１  ヒット座標
５５０  ビットマップ
５５５  ビットマップアレイ
５５６  ビットマップアレイ要素
【図１】
2015531918.tif 000003
【図２】
2015531918.tif 000004
【図３】
2015531918.tif 000005
【図４】
2015531918.tif 000006
【図５】
2015531918.tif 000007
【国際調査報告】
2015531918.tif 000008
2015531918.tif 000009