(57)【要約】      （修正有）【課題】イメージビューバインディングの最適化のためのシステムおよび方法を提供する。【解決手段】コンピュータによって実現されるレンダリング方法は、電子機器で駆動するアプリケーションの制御にしたがって前記電子機器のメモリにイメージをロードするステップ、前記電子機器で前記アプリケーションの制御に従って、ネットワークを介してダウンロードされた、または前記電子機器で生成されて保存された基準カラー配列情報を前記メモリにロードするステップ、および前記電子機器で前記ロードされたイメージの色相値と前記ロードされた基準カラー配列情報との比較により、前記ロードされたイメージのテクスチャ生成のためのピクセルフォーマットを決めるステップを含む。【選択図】図４
2016224942.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータによって実現されるレンダリング方法であって、
電子機器で駆動するアプリケーションの制御にしたがって前記電子機器のメモリにイメージをロードするステップと、
前記電子機器で前記アプリケーションの制御にしたがい、ネットワークを介してダウンロードされた、または前記電子機器で生成されて保存された基準カラー配列情報を前記メモリにロードするステップと、
前記電子機器で前記ロードされたイメージの色相値と前記ロードされた基準カラー配列情報とに基づいて、前記ロードされたイメージのテクスチャ生成のためのピクセルフォーマットを決めるステップと
を含む、コンピュータによって実現されるレンダリング方法。
【請求項２】
前記基準カラー配列情報は、基準となるピクセルフォーマットのビット数に基づくカラー配列イメージを含み、
前記ピクセルフォーマットを決めるステップは、
前記カラー配列イメージの色相値の色相分布と前記ロードされたイメージの色相値の色相分布とを比較することで、前記ロードされたイメージのテクスチャ生成のためのピクセルフォーマットを決める、請求項１に記載のコンピュータによって実現されるレンダリング方法。
【請求項３】
前記ピクセルフォーマットを決めるステップは、
前記カラー配列イメージの各ピクセルの色相値である第１ＲＧＢ値の３次元色相分布図を生成するステップと、
前記ロードされたイメージの各ピクセルの第２ＲＧＢ値を前記３次元色相分布図に適用し、前記第２ＲＧＢ値と前記３次元色相分布図との差値を、前記３次元色相分布図範囲外のピクセルに対して計算するステップと、
前記差値を利用して前記ロードされたイメージのテクスチャ生成のためのピクセルフォーマットを決めるステップとを含む、請求項２に記載のコンピュータによって実現されるレンダリング方法。
【請求項４】
前記差値を利用して前記ロードされたイメージのテクスチャ生成のためのピクセルフォーマットを決めるステップは、
前記計算された差値の標準偏差が予め設定された値以上である場合には、前記ロードされたイメージのテクスチャ生成のためのピクセルフォーマットを、前記基準となるピクセルフォーマットのビット数よりも大きいビット数のピクセルフォーマットに決定し、前記標準偏差が前記予め設定された値未満である場合には、前記ロードされたイメージのテクスチャ生成のためのピクセルフォーマットを、前記基準となるピクセルフォーマットのビット数と同じ、または小さいビット数のピクセルフォーマットに決める、請求項３に記載のコンピュータによって実現されるレンダリング方法。
【請求項５】
前記差値は、前記第２ＲＧＢ値が前記３次元色相分布図で示す点と前記３次元色相分布図で前記第１ＲＧＢ値が示す点のうち、最も近い点間の距離差によって計算される、請求項３に記載のコンピュータによって実現されるレンダリング方法。
【請求項６】
前記ピクセルフォーマットが決められた前記ロードされたイメージに対する識別情報を、前記決められたピクセルフォーマットと互いに関連付けてキャッシュに保存するステップ
をさらに含み、
前記ロードされたイメージが再ロードされる場合、前記ロードされたイメージのピクセルフォーマットは、前記キャッシュに前記ロードされたイメージの識別情報と関連付けて保存されたピクセルフォーマットに決定されることを特徴とする、請求項１に記載のコンピュータによって実現されるレンダリング方法。
【請求項７】
前記アプリケーションは、前記ロードされたイメージを利用してゲームサービスを提供するゲームエンジンを含み、前記ゲームエンジンを介して前記決められたピクセルフォーマットで前記ロードされたイメージをレンダリングするように前記電子機器を制御することを特徴とする、請求項１に記載のコンピュータによって実現されるレンダリング方法。
【請求項８】
請求項１〜７のうちいずれか一項に記載の方法を実行するためのプログラムが記録されている、コンピュータで読み取り可能な記録媒体。
【請求項９】
１つ以上のプロセッサおよびメモリを含むシステムであって、
前記１つ以上のプロセッサは、
駆動するアプリケーションの制御にしたがって前記メモリにイメージをロードするイメージロード部と、
前記アプリケーションの制御にしたがって、ネットワークを介してダウンロードされた、または前記１つ以上のプロセッサによって生成されて保存された基準カラー配列情報を前記メモリにロードする基準カラー配列情報ロード部と、
前記ロードされたイメージの色相値と前記ロードされた基準カラー配列情報とに基づいて、前記ロードされたイメージのテクスチャ生成のためのピクセルフォーマットを決めるピクセルフォーマット決定部と、を備えるシステム。
【請求項１０】
前記基準カラー配列情報は、基準となるピクセルフォーマットのビット数に基づくカラー配列イメージを含み、
前記ピクセルフォーマット決定部は、
前記カラー配列イメージの色相値の色相分布と前記ロードされたイメージの色相値の色相分布とに基づいて、前記ロードされたイメージのテクスチャ生成のためのピクセルフォーマットを決定する、請求項９に記載のシステム。
【請求項１１】
前記ピクセルフォーマット決定部は、
前記カラー配列イメージの各ピクセルの色相値である第１ＲＧＢ値の３次元色相分布図を生成する３次元色相分布図生成部と、
前記ロードされたイメージの各ピクセルの第２ＲＧＢ値を前記３次元色相分布図に適用し、前記第２ＲＧＢ値と前記３次元色相分布図との差値を、前記３次元色相分布図を脱するピクセルに対して計算する差値計算部とをさらに含み、
前記差値を利用して前記ロードされたイメージのテクスチャ生成のためのピクセルフォーマットを決める決定部を備える、請求項１０に記載のシステム。
【請求項１２】
前記決定部は、
前記計算された差値の標準偏差が予め設定された値以上である場合には、前記ロードされたイメージのテクスチャ生成のためのピクセルフォーマットを、前記基準となるピクセルフォーマットのビット数よりも大きいビット数のピクセルフォーマットに決定し、前記標準偏差が前記予め設定された値未満である場合には、前記ロードされたイメージのテクスチャ生成のためのピクセルフォーマットを、前記基準となるピクセルフォーマットのビット数と同じ、または小さいビット数のピクセルフォーマットに決定する、請求項１１に記載のシステム。
【請求項１３】
前記差値は、前記第２ＲＧＢ値が前記３次元色相分布図で示す点と前記３次元色相分布図で前記第１ＲＧＢ値が示す点のうち、最も近い点間の距離差によって計算される、請求項１１に記載のシステム。
【請求項１４】
前記ピクセルフォーマットが決められた前記ロードされたイメージに対する識別情報を、前記決められたピクセルフォーマットと互いに関連付けてキャッシュに保存する保存部
をさらに備え、
前記ロードされたイメージが再ロードされる場合、前記ロードされたイメージのピクセルフォーマットは、前記キャッシュに前記ロードされたイメージの識別情報と関連付けて保存されたピクセルフォーマットに決定されることを特徴とする、請求項９に記載のシステム。
【請求項１５】
前記アプリケーションは、前記ロードされたイメージを利用してゲームサービスを提供するゲームエンジンを含み、前記ゲームエンジンを介して前記決められたピクセルフォーマットで前記ロードされたイメージをレンダリングするように前記１つ以上のプロセッサを制御することを特徴とする、請求項９に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
下記の説明は、イメージビューバインディングの最適化のための技術に関し、より詳細には、ファイルイメージをロードしてレンダリングするシステムおよび方法に関する。
【背景技術】
【０００２】
従来技術では、モバイルゲームなどでイメージのファイルイメージをロードしてレンダリングするためには、指定された固定ピクセルフォーマットによってテクスチャを生成していた。ピクセルフォーマットは、一例として、アンドロイド（Ａｎｄｒｏｉｄ）モバイルオペレーティングシステムを使用する場合、ビットマップ（ｂｉｔｍａｐ）の設定構成ファイル（一例として、ｃｏｎｆｉｇ）にはファイルイメージのピクセルフォーマットを表示している。
【０００３】
アンドロイドモバイルオペレーティングシステムで使用するピクセルフォーマットには、ＡＬＰＨＡ８、ＲＧＢＡ５６５、ＲＧＢＡ４４４４、ＲＧＢＡ８８８８がある。ここで、「ＲＧＢＡ」において、「Ｒ」はレッド（Ｒｅｄ）、「Ｇ」はグリーン（Ｇｒｅｅｎ）、「Ｂ」はブルー（Ｂｌｕｅ）、「Ａ」は透明度アルファを意味する。例えば、ＲＧＢ５６５は、２バイトで１ピクセルを表現する方式であって、１６ビット（２バイト）を分けてＲ（５ビット）、Ｇ（６ビット）、Ｂ（５ビット）で表す方式である。２の５乗は３２であるため、レッド（Ｒｅｄ）とブルー（Ｂｌｕｅ）は３２種類の区分精密度を有するようになり、色表現力は少ないという短所はあるが、容量は小さくなるという長所がある。他の例として、ＲＧＢＡ８８８８は、１つのピクセルを４バイトで表す方式であって、優れた色表現を可能とする。例えば、１６，７７７，２１６（２５６×２５６×２５６）種類もの色表現が可能となる。各色別（ＲＧＢＡ）に１バイトずつが使用される。
【０００４】
上述したように、従来技術では、ロードされるイメージに対して指定された固定ピクセルフォーマットを利用してテクスチャを生成していた。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】ＰＣＴ／ＫＲ２０１４／０１０１６７
【特許文献２】ＵＳ２０１４／００１９５４０Ａ１
【特許文献３】ＵＳ２０１３／０３３２５４３Ａ１
【特許文献４】ＵＳ２０１３／０２６０８９３
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明は、ファイルイメージをロードしてレンダリングする場合、ロードしたイメージを最適化されたピクセルフォーマットによってテクスチャ切り替えすることができるシステムおよび方法を提供する。
【課題を解決するための手段】
【０００７】
コンピュータによって実現されるレンダリング方法であって、電子機器で駆動するアプリケーションの制御にしたがって前記電子機器のメモリにイメージをロードする段階、前記電子機器で前記アプリケーションの制御にしたがい、ネットワークを介してダウンロードされたか、前記電子機器で生成されて保存された基準カラー配列情報を前記メモリにロードする段階、および前記電子機器で前記ロードされたイメージの色相値と前記ロードされた基準カラー配列情報との比較により、前記ロードされたイメージのテクスチャ生成のためのピクセルフォーマットを決める段階を含むことを特徴とする、コンピュータによって実現されるレンダリング方法を提供する。
【０００８】
一つの態様では、前記基準カラー配列情報は、基準となるピクセルフォーマットのビット数に基づくカラー配列イメージを含み、前記ピクセルフォーマットを決める段階は、前記カラー配列イメージの色相値の色相分布と前記ロードされたイメージの色相値の色相分布とを比較することで、前記ロードされたイメージのテクスチャ生成のためのピクセルフォーマットを決めることを特徴としてもよい。
【０００９】
他の態様では、前記ピクセルフォーマットを決める段階は、前記カラー配列イメージの各ピクセルの色相値である第１ＲＧＢ（Ｒｅｄ  Ｇｒｅｅｎ  Ｂｌｕｅ）値の３次元色相分布図を生成する段階（前記３次元色相分布図の各軸は、ＲＧＢの各色相に対応する）、前記ロードされたイメージの各ピクセルの第２ＲＧＢ値を前記３次元色相分布図に適用し、前記第２ＲＧＢ値と前記３次元色相分布図との差値を、前記３次元色相分布図を脱するピクセルに対して計算する段階、および前記差値を利用して前記ロードされたイメージのテクスチャ生成のためのピクセルフォーマットを決める段階を含むことを特徴としてもよい。
【００１０】
さらに他の態様では、前記差値を利用して前記ロードされたイメージのテクスチャ生成のためのピクセルフォーマットを決める段階は、前記計算された差値の標準偏差が予め設定された値以上である場合には、前記ロードされたイメージのテクスチャ生成のためのピクセルフォーマットを、前記基準となるピクセルフォーマットのビット数よりも大きいビット数のピクセルフォーマットに決め、前記標準偏差が前記予め設定された値未満である場合には、前記ロードされたイメージのテクスチャ生成のためのピクセルフォーマットを、前記基準となるピクセルフォーマットのビット数と同じか、小さいビット数のピクセルフォーマットに決めることを特徴としてもよい。
【００１１】
さらに他の態様では、前記差値は、前記第２ＲＧＢ値が前記３次元色相分布図で示す点と前記３次元色相分布図で前記第１ＲＧＢ値が示す点のうち、最も近い点間の距離差によって計算されることを特徴としてもよい。
【００１２】
さらに他の態様では、前記ピクセルフォーマットが決められた前記ロードされたイメージに対する識別情報を、前記決められたピクセルフォーマットと互いに関連付けてキャッシュに保存する段階をさらに含み、前記ロードされたイメージが再ロードされる場合、前記ロードされたイメージのピクセルフォーマットは、前記キャッシュに前記ロードされたイメージの識別情報と関連付けて保存されたピクセルフォーマットに決定されることを特徴としてもよい。
【００１３】
さらに他の態様では、前記アプリケーションは、前記ロードされたイメージを利用してゲームサービスを提供するゲームエンジンを含み、前記ゲームエンジンを介して前記決められたピクセルフォーマットによって前記ロードされたイメージをレンダリングするように前記電子機器を制御することを特徴としてもよい。
【００１４】
１つ以上のプロセッサおよびメモリを含むシステムであって、前記１つ以上のプロセッサは、駆動するアプリケーションの制御にしたがって前記メモリにイメージをロードするイメージロード部、前記アプリケーションの制御にしたがい、ネットワークを介してダウンロードされたか、前記１つ以上のプロセッサによって生成されて保存された基準カラー配列情報を前記メモリにロードする基準カラー配列情報ロード部、および前記ロードされたイメージの色相値と前記ロードされた基準カラー配列情報との比較により、前記ロードされたイメージのテクスチャ生成のためのピクセルフォーマットを決めるピクセルフォーマット決定部を備えることを特徴とする、システムを提供する。
【発明の効果】
【００１５】
本発明によると、ファイルイメージをロードしてレンダリングする場合、ロードされたイメージを最適化されたピクセルフォーマットによってテクスチャ切り替えすることができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の一実施形態における、イメージのレンダリングのためのシステムの動作環境の例を示した図である。
【図２】本発明の一実施形態における、電子機器の内部構成を説明するためのブロック図である。
【図３】本発明の一実施形態における、電子機器が含むプロセッサを説明するためのブロック図である。
【図４】本発明の一実施形態における、電子機器のレンダリング方法を示したフローチャートである。
【図５】本発明の一実施形態における、ピクセルフォーマット決定方法の例を示したフローチャートである。
【図６】本発明の一実施形態における、３次元空間の例を示した図である。
【発明を実施するための形態】
【００１７】
以下、実施形態について、添付の図面を参照しながら詳しく説明する。
【００１８】
図１は、本発明の一実施形態における、イメージのレンダリングのためのシステムの動作環境の例を示した図である。
【００１９】
本実施形態に係るシステムの動作環境は、電子機器１１０、１２０、１３０、１４０、サーバ１５０、１６０、およびネットワーク１７０を含んでもよい。
【００２０】
電子機器１１０、１２０、１３０、１４０は、本発明の実施形態における、イメージのレンダリングを処理する装置の例であって、図１には４台の電子機器１１０、１２０、１３０、１４０が示されているが、これは動作環境を説明するための例示に過ぎず、これに限定されることはない。このような電子機器１１０、１２０、１３０、１４０それぞれは、固定型端末や移動型端末であってもよい。電子機器１１０、１２０、１３０、１４０の例としては、スマートフォン（ｓｍａｒｔ  ｐｈｏｎｅ）、携帯電話、ナビゲーション、コンピュータ、ノート型パンコン、デジタル放送用端末、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔｓ）、ＰＭＰ（Ｐｏｒｔａｂｌｅ  Ｍｕｌｔｉｍｅｄｉａ  Ｐｌａｙｅｒ）、タブレットＰＣなどがある。電子機器１１０、１２０、１３０、１４０それぞれは、無線または有線通信方式を利用してネットワーク１７０を介して他の電子機器および／またはサーバ１５０、１６０と通信してもよい。実施形態によっては、別途の通信機能を要求しない装置が自主的に含む保存所のイメージを利用しながら、本発明の実施形態にしたがってレンダリングを処理することも可能ではあるが、本実施形態と後述する実施形態では、サーバ１５０、１６０と通信することによってレンダリングするためのイメージが提供される場合を例示しながら説明する。
【００２１】
通信方式が制限されることはなく、ネットワーク１７０が含むことのできる通信網（一例として、移動通信網、有線インターネット、無線インターネット、放送網）を活用する通信方式はもちろん、機器間の近距離無線通信が含まれてもよい。
【００２２】
ネットワーク１７０は、一例として、ＰＡＮ（ｐｅｒｓｏｎａｌ  ａｒｅａ  ｎｅｔｗｏｒｋ）、ＬＡＮ（ｌｏｃａｌ  ａｒｅａ  ｎｅｔｗｏｒｋ）、ＣＡＮ（ｃａｍｐｕｓ  ａｒｅａ  ｎｅｔｗｏｒｋ）、ＭＡＮ（ｍｅｔｒｏｐｏｌｉｔａｎ  ａｒｅａ  ｎｅｔｗｏｒｋ）、ＷＡＮ（ｗｉｄｅ  ａｒｅａ  ｎｅｔｗｏｒｋ）、ＢＢＮ（ｂｒｏａｄｂａｎｄ  ｎｅｔｗｏｒｋ）、インターネットなどのネットワークのうち１つ以上の任意のネットワークを含んでもよい。または、ネットワーク１７０は、バスネットワーク、スターネットワーク、リングネットワーク、メッシュネットワーク、スター−バスネットワーク、ツリーまたは階層的（ｈｉｅｒａｒｃｈｉｃａｌ）ネットワークなどを含むネットワークトポロジのうち任意の１つ以上を含んでもよいが、これに制限されることはない。
【００２３】
サーバ１５０、１６０それぞれは、電子機器１１０、１２０、１３０、１４０とネットワーク１７０を介して通信してサービスやコンテンツを提供する装置または複数の装置らによって実現されてもよい。サーバ１５０、１６０は、電子機器１１０、１２０、１３０、１４０にサービスやコンテンツを提供するための１つのシステムを構成するように構築されてもよいし、それぞれ互いに異なるサービスやコンテンツを提供する個別システムであってもよい。例えば、サーバ１５０は、電子機器１１０、１２０、１３０、１４０にゲームサービスを提供するシステムであってもよく、サーバ１６０は、サーバ１５０が提供するゲームサービスのためのアプリケーションのインストールファイルを配布するファイル配布システムであってもよい。図１には２台のサーバ１５０、１６０が示されているが、これは動作環境を説明するための例示に過ぎず、これに限定されることはない。
【００２４】
サーバ１５０、１６０は、電子機器１１０、１２０、１３０、１４０を介したユーザの要請にしたがい、電子機器１１０、１２０、１３０、１４０にサービスやコンテンツを提供してもよい。一例として、電子機器１１０、１２０、１３０、１４０は、サーバ１５０、１６０が提供するコード、ファイル、データなどを受信した後、電子機器１１０、１２０、１３０、１４０にインストールされたプログラムを利用してサーバ１５０、１６０が提供するサービスやコンテンツの提供を受けられるようになる。
【００２５】
以下、スマートフォンのような１つの電子機器１１０の観点から、本発明の多様な実施形態について説明する。
【００２６】
図２は、本発明の一実施形態における、電子機器の内部構成を説明するためのブロック図である。電子機器１１０は、メモリ２１０、プロセッサ２２０、通信モジュール２３０、および入力／出力インタフェース２４０を含んでもよい。メモリ２１０は、コンピュータで読み取り可能な記録媒体であって、ＲＡＭ（ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ）、ＲＯＭ（ｒｅａｄ  ｏｎｌｙ  ｍｅｍｏｒｙ）、およびディスクドライブのような永久大容量記録装置（ｐｅｒｍａｎｅｎｔ  ｍａｓｓ  ｓｔｏｒａｇｅ  ｄｅｖｉｃｅ）を含んでもよい。また、メモリ２１０には、オペレーティングシステムと少なくとも１つのプログラムコードが格納されてもよい。例えば、少なくとも１つのプログラムコードは、少なくともイメージのレンダリングを処理するためのコードを含んでもよい。このようなソフトウェア構成要素は、ドライブメカニズム（ｄｒｉｖｅ  ｍｅｃｈａｎｉｓｍ）を利用してメモリ２１０とは別のコンピュータで読み取り可能な記録媒体からロードされてもよい。このような別のコンピュータで読み取り可能な記録媒体は、フロッピードライブ、ディスク、テープ、ＤＶＤ／ＣＤ−ＲＯＭドライブ、メモリカードなどのコンピュータで読み取り可能な記録媒体を含んでもよい。他の実施形態において、ソフトウェア構成要素は、コンピュータで読み取り可能な記録媒体ではない、通信モジュール２３０を利用してメモリ２１０にロードされてもよい。例えば、少なくとも１つのプログラムコードは、開発者がネットワーク１７０を介して提供するファイルによってインストールされるプログラムを基盤としてメモリ２１０にロードされてもよい。
【００２７】
プロセッサ２２０は、基本的な計算、ロジック、および入出力演算を実行することにより、コンピュータプログラム（一例として、上述した少なくとも１つのプログラムコード）の命令を処理するように構成されてよい。命令は、メモリ２１０または通信モジュール２３０によってプロセッサ２２０に提供されてよい。
【００２８】
通信モジュール２３０は、ネットワーク１７０を介して他の機器と通信するための機能を提供してもよい。一例として、ユーザの入力によってプロセッサ２２０で発生した要請メッセージが、通信モジュール２３０の制御にしたがってネットワーク１７０を介してサーバ１５０に伝達されてもよい。これとは逆に、サーバ１５０がネットワーク１７０を介して送信するデータが、通信モジュール２３０を介して電子機器１１０で受信されてもよい。
【００２９】
また、他の実施形態において、電子機器１１０は、図２の構成要素よりもさらに多くの構成要素を含んでもよい。しかし、大部分の従来の技術的な構成要素を明確に図に示す必要はない。例えば、電子機器１１０は、タッチスクリーンのようなディスプレイやトランシーバ（ｔｒａｎｓｃｅｉｖｅｒ）、ＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）モジュールなどのような他の構成要素をさらに含んでもよい。
【００３０】
入力／出力インタフェース２４０は、電子機器１１０がさらに含んだり、電子機器１１０と連関したりする入力／出力装置との連結のための機能を提供してもよい。例えば、入力装置としては、マウス、キーボード、タッチパネル、マイクなどが含まれてもよく、出力装置としては、スピーカ、ディスプレイ、タッチスクリーンなどが含まれてもよい。例えば、メモリ２１０にロードされてプロセッサ２２０によってレンダリングされたイメージを基にしてサービス画面２５０が構成され、電子機器１１０のタッチスクリーンに表示されてもよい。
【００３１】
図３は、本発明の一実施形態における、電子機器が含むプロセッサを説明するためのブロック図である。そして、図４は、本発明の一実施形態における、電子機器のレンダリング方法を示したフローチャートである。電子機器１１０に含まれたプロセッサ２２０は、図３に示すように、イメージロード部３１０、基準カラー配列情報ロード部３２０、およびピクセルフォーマット決定部３３０を含んでもよく、このような構成要素は、図４のレンダリング方法が含む段階４１０〜４３０をメモリ２１０が含むオペレーティングシステムと少なくとも１つのプログラムコードによって実行するように実現されてもよい。
【００３２】
段階４１０で、イメージロード部３１０は、電子機器１１０で駆動するアプリケーションの制御にしたがって電子機器１１０のメモリ２１０にイメージをロードしてもよい。一例として、ロードされるイメージは、サーバ１５０、１６０のサービスのために提供されるイメージであってもよい。他の例として、ロードされるイメージは、単に、電子機器１１０のコンピュータで読み取り可能な記録媒体に保存されているイメージであってもよい。
【００３３】
段階４２０で、基準カラー配列情報ロード部３２０は、アプリケーションの制御にしたがってネットワークを介してダウンロードされたか、電子機器１１０で生成されて保存された基準カラー配列情報をメモリ２１０にロードしてもよい。例えば、基準カラー配列情報は、アプリケーションをインストールする際にダウンロードされてもよいし、電子機器１１０にインストールされたアプリケーションの制御にしたがってサーバ１５０、１６０からダウンロードされてもよいし、アプリケーションの制御にしたがって電子機器１１０で直接生成された後に電子機器１１０の保存所（メモリ２１０または別のコンピュータで読み取り可能な記録媒体）に保存されてもよい。このような基準カラー配列情報は、基準となるピクセルフォーマットのビット数に基づくカラー配列に関する情報を含んでもよい。
【００３４】
段階４３０で、ピクセルフォーマット決定部３３０は、ロードされたイメージの色相値とロードされた基準カラー配列情報との比較により、ロードされたイメージのテクスチャ生成のためのピクセルフォーマットを決めてもよい。例えば、ピクセルフォーマット決定部３３０は、基準カラー配列情報のカラー配列における色相値とロードされたイメージの色相値とを比べることで、ロードされたイメージのピクセルフォーマットを決めてもよい。ここで、電子機器１１０は、決められたピクセルフォーマットでロードされたイメージに対するテクスチャを生成してロードされたイメージをレンダリングしてもよく、画面に表示してもよい。
【００３５】
より具体的な例として、既存には、レンダリングの際に、各イメージのピクセルフォーマットが１６ビットまたは３２ビットなどに予め区分されてバインディングされていた。しかし、１６ビットで十分に表現可能なイメージを３２ビットでレンダリングする場合には、メモリのような資源の浪費が発生していた。この反面、本実施形態では、予め区分されたピクセルフォーマットを利用するのではなく、イメージの色相値を分析し、基準となるピクセルフォーマットに基づくカラー配列と比べてピクセルフォーマットを決めることにより、ロードされたイメージのピクセルフォーマットを動的に決めてビューバインディングすることが可能となる。
【００３６】
より具体的な実施形態として、基準カラー配列情報は、基準となるピクセルフォーマットのビット数に基づくカラー配列イメージを含んでもよい。この場合、ピクセルフォーマット決定部３３０は、段階４３０で、カラー配列イメージの色相値の色相分布とロードされたイメージの色相値の色相分布とを比べることで、ロードされたイメージのテクスチャ生成のためのピクセルフォーマットを決めてもよい。例えば、ロードされたイメージの色相値の色相分布が、カラー配列イメージの色相値の色相分布から一定基準以上を脱する場合、基準となるピクセルフォーマットのビット数よりも高いビット数のピクセルフォーマットが必要であることが分かる。この場合、ピクセルフォーマット決定部３３０は、基準となるピクセルフォーマットのビット数（一例として、１６ビット）よりも高いビット数（一例として、３２ビット）のピクセルフォーマットを、ロードされたイメージのピクセルフォーマットとして決めてもよい。
【００３７】
電子機器１１０がアンドロイドオペレーティングシステムを含み、基準カラー配列情報として１６ビットカラー配列イメージが活用されると仮定する。ピクセルフォーマット決定部３３０は、ロードされたイメージの色相値の色相分布が、カラー配列イメージの色相値の色相分布から一定基準以上を超える場合には、３２ビットのＲＧＢＡ８８８８に、ロードされたイメージのピクセルフォーマットを決めてもよい。ロードされたイメージの色相値の色相分布が、カラー配列イメージの色相値の色相分布から一定基準以上を脱しない場合には、ピクセルフォーマット決定部３３０は、１６ビットのＲＧＢ５６５に、ロードされたイメージのピクセルフォーマットを決めてもよい。同じ１６ビットのピクセルフォーマットであっても、透明度を示すアルファ（ａｌｐｈａ）値が存在するか否かに応じて互いに異なるピクセルフォーマットを有する場合もある。一例として、アルファ値がないイメージに対してはＲＧＢ５６５が適用されてもよく、アルファ値が存在するイメージに対してはＲＧＢＡ４４４４が適用されてもよい。ここで、ロードされたイメージに対するテクスチャは、決められたピクセルフォーマットで生成されてもよい。
【００３８】
このように、予め区分されたピクセルフォーマットを利用するのではなく、イメージをロードしてレンダリングするタイミングに色彩分布を分析してロードされたイメージのピクセルフォーマットを決めるため、不必要な資源の浪費を防ぐことができる。
【００３９】
電子機器１１０にインストールされるアプリケーションは、一実施形態として、ロードされたイメージを利用してゲームサービスを提供するゲームエンジンを含んでもよい。ゲームサービスを提供する実施形態において、アプリケーションは、ゲームエンジンを介して決められたピクセルフォーマットでロードされたイメージをレンダリングするように電子機器１１０を制御してもよい。
【００４０】
また、他の実施形態として、ピクセルフォーマット決定部３３０は、図３に示す３次元色相分布図生成部３３１、差値計算部３３２、および決定部３３３を含むように実現されてもよい。この場合、３次元色相分布図生成部３３１、差値計算部３３２、および決定部３３３は、レンダリング方法の段階Ｓ４３０に選択的にさらに含まれてもよい図５の段階５１０〜Ｓ５３０を、メモリ２１０が含むオペレーティングシステムと少なくとも１つのプログラムコードによって実行するように実現されてもよい。
【００４１】
図５は、本発明の一実施形態における、ピクセルフォーマット決定方法の例を示したフローチャートである。
【００４２】
段階５１０で、３次元色相分布図生成部３３１は、カラー配列イメージの各ピクセルの色相値である第１ＲＧＢ（Ｒｅｄ  Ｇｒｅｅｎ  Ｂｌｕｅ）値の３次元色相分布図を生成してもよい。ここで、３次元色相分布図の各軸は、ＲＧＢの各色相に対応してもよい。例えば、３次元色相分布図のＸ軸はレッド（Ｒｅｄ）色相に、Ｙ軸はグリーン（Ｇｒｅｅｎ）色相に、Ｚ軸はブルー（Ｂｌｕｅ）色相にそれぞれ対応してもよく、１つのピクセルの色相値は、３次元色相分布図において１つの点で表現されてもよい。ここで、カラー配列イメージのすべてのピクセルの色相値である第１ＲＧＢ値を３次元領域に表示することによって３次元色相分布図が生成されてもよい。
【００４３】
段階５２０で、差値計算部３３２は、ロードされたイメージの各ピクセルの第２ＲＧＢ値を３次元色相分布図に適用し、第２ＲＧＢ値と３次元色相分布図との差値を、３次元色相分布図から脱するピクセルに対して計算してもよい。一例として、差値は、第２ＲＧＢ値が３次元色相分布図で示す点と３次元色相分布図で第１ＲＧＢ値が示す点のうち、最も近い点間の距離差によって計算されてもよい。
【００４４】
段階５３０で、決定部３３３は、差値を利用してロードされたイメージのテクスチャ生成のためのピクセルフォーマットを決めてもよい。一例として、決定部３３３は、段階５３０で、計算された差値の標準偏差が予め設定された値以上である場合には、ロードされたイメージのテクスチャ生成のためのピクセルフォーマットを、基準となるピクセルフォーマットのビット数よりも大きいビット数のピクセルフォーマットに決め、標準偏差が前記予め設定された値未満である場合には、ロードされたイメージのテクスチャ生成のためのピクセルフォーマットを、基準となるピクセルフォーマットのビット数と同じか、小さいビット数のピクセルフォーマットに決めてもよい。標準偏差が０に近いほど、基準となるピクセルフォーマットのビット数の色相から脱する色相が多くないということを意味するため、決定部３３３は、標準偏差の値に基づいてロードされたイメージのためのピクセルフォーマットを決めることが可能となる。
【００４５】
レンダリング方法は、上述した段階の他にも、実施形態によって選択的に、ピクセルフォーマットが決められたロードされたイメージに対する識別情報を、決められたピクセルフォーマットと互いに関連付けてキャッシュに保存する段階（図示せず）をさらに含んでもよい。このような図に示されていない段階は、プロセッサ２２０にさらに含まれてもよい保存部（図示せず）によって実行されてもよい。キャッシュは、一例として、メモリ２１０上に実現されてもよい。ここで、ロードされたイメージが再ロードされる場合、ロードされたイメージのピクセルフォーマットは、キャッシュにロードされたイメージの識別情報と関連付けて保存されたピクセルフォーマットに決まってもよい。言い換えれば、一度ピクセルフォーマットが決まったイメージに対しては、キャッシュに該当のイメージと関連付けて保存されたピクセルフォーマットによってレンダリングが処理されるようになることから、ピクセルフォーマットを決める過程をスキップして直ぐにテクスチャを生成することが可能となる。
【００４６】
図６は、本発明の一実施形態における、３次元空間の例を示した図である。図６の３次元座標系６００は、Ｘ軸はレッド（Ｒｅｄ）色相に、Ｙ軸はグリーン（Ｇｒｅｅｎ）色相に、Ｚ軸はブルー（Ｂｌｕｅ）色相にそれぞれ対応するように構成された座標系を示している。
【００４７】
１６ビットのピクセルフォーマットを基準とするカラー配列イメージにおいて、１つの第１ピクセルに対する色相値であるＲＧＢ値は、３次元座標系６００上で（ｘ、ｙ、ｚ）の座標を有する１つの第１点６１０で表現されてもよい。ここで、ｘ、ｙ、ｚは、第１ピクセルのＲ値、Ｇ値、Ｂ値にそれぞれ対応してもよい。
【００４８】
このように、カラー配列イメージのすべてのピクセルに対するＲＧＢ値を３次元座標系６００上に点で表示する場合、３次元形態の色分布図である３次元色相分布図が生成されてもよい。
【００４９】
ロードされたイメージをこのような３次元色相分布図に適用するときに、ロードされたイメージが１６ビットのピクセルフォーマットで表現することのできるイメージである場合には、ピクセルのピクセル値の大部分は３次元色相分布図の内部に含まれるであろう。したがって、このような３次元色相分布図の範囲を脱する色相値が基準以上に多ければ、このイメージは１６ビットで表現することが困難であるということが分かる。この場合、３２ビットのようにより高いビット数のピクセルフォーマットを、ロードされたイメージのピクセルフォーマットとして決めてもよい。
【００５０】
一例として、ロードされたイメージの１つの第２ピクセルに対する色相値であるＲＧＢ値も、３次元座標系６００で（ｘ’、ｙ’、ｚ’）の座標を有する１つの第２点６２０で表現されてもよい。
【００５１】
第２点６２０が３次元色相分布図の範囲から外れ、第２点６２０から最も近い３次元色相分布図の点が第１点６１０である仮定するとき、上述した差値計算部３３２は、第２点６２０と第１点６１０との間の距離６３０の値を差値として計算してもよい。
【００５２】
このとき、ロードされたイメージのすべての第２ピクセルのうち、３次元色相分布図の範囲を脱した第２ピクセルに対して差値が計算されてもよく、上述したように、このような差値の標準偏差に基づき、ロードされたイメージを１６ビットのピクセルフォーマットでレンダリングするのか、あるいは３２ビットのように１６ビットよりも高いビット数のピクセルフォーマットでレンダリングするのかが決められてもよい。
【００５３】
このように、本発明の実施形態によると、ファイルイメージをロードしてレンダリングする場合、ロードされたイメージを最適化されたピクセルフォーマットによってテクスチャ切り替えすることができる。
【００５４】
上述した装置は、ハードウェア構成要素、ソフトウェア構成要素、および／またはハードウェア構成要素とソフトウェア構成要素との組み合わせによって実現されてもよい。例えば、実施形態で説明された装置および構成要素は、例えば、プロセッサ、コントローラ、ＡＬＵ（ａｒｉｔｈｍｅｔｉｃ  ｌｏｇｉｃ  ｕｎｉｔ）、デジタル信号プロセッサ（ｄｉｇｉｔａｌ  ｓｉｇｎａｌ  ｐｒｏｃｅｓｓｏｒ）、マイクロコンピュータ、ＦＰＡ（ｆｉｅｌｄ  ｐｒｏｇｒａｍｍａｂｌｅ  ａｒｒａｙ）、ＰＬＵ（ｐｒｏｇｒａｍｍａｂｌｅ  ｌｏｇｉｃ  ｕｎｉｔ）、マイクロプロセッサ、または命令を実行して応答することができる様々な装置のように、１つ以上の汎用コンピュータまたは特殊目的コンピュータを利用して実現されてもよい。処理装置は、オペレーティングシステム（ＯＳ）およびＯＳ上で実行される１つ以上のソフトウェアアプリケーションを実行してよい。また、処理装置は、ソフトウェアの実行に応答し、データにアクセスし、データを格納、操作、処理、および生成してもよい。理解の便宜のために、１つの処理装置が使用されるとして説明される場合もあるが、当業者は、処理装置が複数の処理要素（ｐｒｏｃｅｓｓｉｎｇ  ｅｌｅｍｅｎｔ）および／または複数種類の処理要素を含んでもよいことが理解できるであろう。例えば、処理装置は、複数のプロセッサまたは１つのプロセッサおよび１つのコントローラを含んでもよい。また、並列プロセッサ（ｐａｒａｌｌｅｌ  ｐｒｏｃｅｓｓｏｒ）のような、他の処理構成（ｐｒｏｃｅｓｓｉｎｇ  ｃｏｎｆｉｇｕｒａｔｉｏｎ）も可能である。
【００５５】
ソフトウェアは、コンピュータプログラム、コード、命令、またはこれらのうちの１つ以上の組み合わせを含んでもよく、所望するとおりに動作するように処理装置を構成したり、独立的または集合的に（ｃｏｌｌｅｃｔｉｖｅｌｙ）処理装置に命令したりしてよい。ソフトウェアおよび／またはデータは、処理装置に基づいて解釈されたり、処理装置に命令またはデータを提供したりするために、ある種類の機械、コンポーネント、物理装置、仮想装置（ｖｉｒｔｕａｌ  ｅｑｕｉｐｍｅｎｔ）、コンピュータ格納媒体または装置、または送信される信号波（ｓｉｇｎａｌ  ｗａｖｅ）に永久的または一時的に具現化（ｅｍｂｏｄｙ）されてもよい。ソフトウェアは、ネットワークによって接続されたコンピュータシステム上に分散され、分散された態様で格納されても実行されてもよい。ソフトウェアおよびデータは、１つ以上のコンピュータで読み取り可能な記録媒体に格納されてもよい。
【００５６】
実施形態に係る方法は、多様なコンピュータ手段によって実行可能なプログラム命令の形態で実現されてコンピュータで読み取り可能な媒体に記録されてもよい。前記コンピュータで読み取り可能な媒体は、プログラム命令、データファイル、データ構造などを単独でまたは組み合わせて含んでもよい。前記媒体に記録されるプログラム命令は、実施形態のために特別に設計されて構成されたものであってもよいし、コンピュータソフトウェア当業者に公知な使用可能なものであってもよい。コンピュータで読み取り可能な記録媒体の例としては、ハードディスク、フロッピーディスク、磁気テープのような磁気媒体、ＣＤ−ＲＯＭ、ＤＶＤのような光媒体、フロプティカルディスク（ｆｌｏｐｔｉｃａｌ  ｄｉｓｋ）のような光磁気媒体、およびＲＯＭ、ＲＡＭ、フラッシュメモリなどのようなプログラム命令を格納して実行するように特別に構成されたハードウェア装置が含まれる。プログラム命令の例は、コンパイラによって生成されるもののような機械語コードだけではなく、インタプリタなどを使用してコンピュータによって実行される高級言語コードを含む。上述したハードウェア装置は、実施形態の動作を実行するために１つ以上のソフトウェアモジュールとして動作するように構成されてもよく、その逆も同じである。
【００５７】
以上のように、実施形態を、限定された実施形態と図面に基づいて説明したが、当業者であれば、上述した記載から多様な修正および変形が可能である。例えば、説明された技術が、説明された方法とは異なる順序で実行されたり、かつ／あるいは、説明されたシステム、構造、装置、回路などの構成要素が、説明された方法とは異なる形態で結合されたりまたは組み合わされたり、他の構成要素または均等物によって対置されたり置換されたとしても、適切な結果を達成することができる。
【００５８】
したがって、異なる実施形態であっても、特許請求の範囲と均等なものであれば、添付される特許請求の範囲に属する。
【符号の説明】
【００５９】
２２０：プロセッサ
３１０：イメージロード部
３２０：基準カラー配列情報ロード部
３３０：ピクセルフォーマット決定部
３３１：３次元色相分布図生成部
３３２：差値計算部
３３３：決定部
【図１】
2016224942.tif 000003
【図２】
2016224942.tif 000004
【図３】
2016224942.tif 000005
【図４】
2016224942.tif 000006
【図５】
2016224942.tif 000007
【図６】
2016224942.tif 000008