(57)【要約】  【課題】高精度の自由曲面・曲線生成において、ハードウェアシステム、描画オブジェクトの状況により、一連の描画処理が画面更新期間内に間に合わず、描画結果に不具合が生じる。  【解決手段】描画処理に影響を及ぼす描画装置のクロックギア比、割当バンド幅、バストラフィック量、ネットワークトラフィック量、描画装置の割り込み頻度などのシステム情報、或いは、移動速度情報、描画オブジェクトの表示領域情報、注目オブジェクトとの距離情報、オブジェクト数情報、大きさ情報、表示期間情報、表示部の画質情報などの描画オブジェクトの見え方に影響する描画オブジェクト情報を取得する。描画部１００は取得した情報の少なくとも１つに応じて自由曲面・曲線の生成に用いる制御点の生成数を制御することにより、システムの状況に応じた自由曲面・曲線生成の演算量の制御を可能にする。【選択図】図１
2005235172.tif 000002
【特許請求の範囲】
【請求項１】
システム情報または描画オブジェクト情報を取得する情報取得部と、
取得した前記情報によって、曲面または曲線を生成するための制御点の数を決定する曲面補間レベルを設定して前記曲面補間レベルに応じて前記制御点を生成する制御点生成部と、
前記制御点に基づき曲面生成を行う曲面生成部とを備え、
取得した前記情報に基づいて表示物の曲面描画の演算量を動的に変化させることを特徴とする描画装置。
【請求項２】
前記情報取得部がシステム情報を取得するシステム情報取得部であり、
前記制御点生成部が、前記システム情報によって、曲面または曲線を生成するための制御点の数を決定する曲面補間レベルを設定し、前記曲面補間レベルに応じて前記制御点を生成し、
前記曲面生成部が前記制御点に基づき曲面生成を行い、
前記システム情報に基づいて表示物の曲面描画の演算量を動的に変化させることを特徴とする請求項１に記載の描画装置。
【請求項３】
前記システム情報取得部は、電池残量を取得する電池残量情報取得部を有しており、前記システム情報が前記電池残量であることを特徴とする請求項２に記載の描画装置。
【請求項４】
前記システム情報取得部は、クロックギア比を取得するクロックギア比情報取得部を有しており、前記システム情報が前記クロックギア比であることを特徴とする請求項２に記載の描画装置。
【請求項５】
前記システム情報取得部は、割当バンド幅情報を取得する割当バンド幅情報取得部を有しており、前記システム情報が前記割当バンド幅であることを特徴とする請求項２に記載の描画装置。
【請求項６】
前記システム情報取得部は、バストラフィック量を取得するバストラフィック情報取得部を有しており、前記システム情報が前記バストラフィック量であることを特徴とする請求項２に記載の描画装置。
【請求項７】
前記システム情報取得部は、ネットワークトラフィック量を取得するネットワークトラフィック情報取得部を有しており、前記システム情報が前記ネットワークトラフィック量であることを特徴とする請求項２に記載の描画装置。
【請求項８】
前記システム情報取得部は、描画装置に対する割り込み頻度を取得する割り込み頻度情報取得部を有しており、前記システム情報が前記割り込み頻度情報であることを特徴とする請求項２に記載の描画装置。
【請求項９】
前記システム情報取得部は、電池残量を取得する電池残量情報取得部、クロックギア比を取得するクロックギア比情報取得部、割当バンド幅情報を取得する割当バンド幅情報取得部、バストラフィック量を取得するバストラフィック情報取得部、ネットワークトラフィック量を取得するネットワークトラフィック情報取得部、または描画装置に対する割り込み頻度を取得する割り込み頻度情報取得部のうちの２以上を有しており、
前記システム情報が、前記電池残量、前記クロックギア比、前記割当バンド幅、前記バストラフィック量、前記ネットワークトラフィック量、または前記割り込み頻度情報のうちの２以上からなることを特徴とする請求項２に記載の描画装置。
【請求項１０】
前記システム情報が予め設定された値よりも高いか低いかによって前記曲面補間レベルおよび前記制御点の数を設定することを特徴とする請求項２から請求項９までのいずれかに記載の描画装置。
【請求項１１】
前記システム情報に応じて段階的に演算量を変化させることを特徴とする請求項２から請求項９までのいずれかに記載の描画装置。
【請求項１２】
前記演算量が前記曲面補間レベルにより決定されることを特徴とする請求項２から請求項１１までのいずれかに記載の描画装置。
【請求項１３】
前記演算量が前記制御点の数により決定されることを特徴とする請求項２から請求項１１までのいずれかに記載の描画装置。
【請求項１４】
前記演算量が前記曲面補間レベルと前記制御点の数により決定されることを特徴とする請求項２から請求項１１までのいずれかに記載の描画装置。
【請求項１５】
前記情報取得部が描画オブジェクト情報を取得する描画オブジェクト情報取得部であり、
前記制御点生成部が、前記描画オブジェクト情報によって、曲面または曲線を生成するための制御点の数を決定する曲面補間レベルを設定し、前記曲面補間レベルに応じて前記制御点を生成し、
前記曲面生成部が前記制御点に基づき曲面生成を行い、
前記描画オブジェクト情報に基づいて表示物の曲面描画の演算量を動的に変化させることを特徴とする請求項１に記載の描画装置。
【請求項１６】
前記描画オブジェクト情報生成部は、描画オブジェクトの移動速度を取得する移動速度情報取得部を有しており、前記オブジェクト表示情報が前記描画オブジェクトの移動速度であることを特徴とする請求項１５に記載の描画装置。
【請求項１７】
前記描画オブジェクト情報取得部は、描画オブジェクトの表示領域を取得する表示領域情報取得部を有しており、前記オブジェクト表示情報が前記描画オブジェクトの表示領域であることを特徴とする請求項１５に記載の描画装置。
【請求項１８】
前記描画オブジェクト情報取得部は、描画オブジェクトと、予め決められた注目オブジェクトとの距離情報とを示す距離情報を取得する注目オブジェクト距離情報取得部を有しており、前記オブジェクト表示情報が前記距離情報であることを特徴とする請求項１５に記載の描画装置。
【請求項１９】
前記描画オブジェクト情報取得部は、描画オブジェクトの数情報を取得する描画オブジェクト数情報取得部を有しており、前記オブジェクト表示情報が前記描画オブジェクトの数情報であることを特徴とする請求項１５に記載の描画装置。
【請求項２０】
前記描画オブジェクト情報取得部は、描画オブジェクトの大きさ情報を取得する描画オブジェクト大きさ情報取得部を有しており、前記オブジェクト表示情報が前記描画オブジェクトの大きさ情報であることを特徴とする請求項１５に記載の描画装置。
【請求項２１】
前記描画オブジェクト情報取得部は、描画オブジェクトの表示期間情報を取得する表示期間情報取得部を有しており、前記オブジェクト表示情報が前記描画オブジェクトの表示期間情報であることを特徴とする請求項１５に記載の描画装置。
【請求項２２】
前記描画オブジェクト情報取得部は、表示部の画質情報を取得する表示装置画質情報取得部を有しており、前記オブジェクト表示情報が前記描画オブジェクト画質情報であることを特徴とする請求項１５に記載の描画装置。
【請求項２３】
前記オブジェクト情報取得部は、描画オブジェクトの移動速度を取得する移動速度情報取得部、描画オブジェクトの表示領域を取得する表示領域情報取得部、描画オブジェクトと、予め決められた注目オブジェクトとの距離情報とを示す距離情報を取得する注目オブジェクト距離情報取得部、描画オブジェクトの数情報を取得する描画オブジェクト数情報取得部、描画オブジェクトの大きさ情報を取得する描画オブジェクト大きさ情報取得部、描画オブジェクトの表示期間情報を取得する表示期間情報取得部、または表示部の画質情報を取得する表示装置画質情報取得部のうちの２以上を有しており、
前記描画オブジェクト表示情報が、前記描画オブジェクトの移動速度、前記描画オブジェクトの表示領域、前記描画オブジェクトと予め決められた注目オブジェクトとの距離情報とを示す距離情報、前記描画オブジェクトの数情報、前記描画オブジェクトの大きさ情報、前記表示期間情報、または前記表示部の画質情報のうちの２以上からなることを特徴とする請求項１５に記載の描画装置。
【請求項２４】
前記描画オブジェクト表示情報が予め設定された値よりも高いか低いかによって前記曲面補間レベルおよび前記制御点の数を設定することを特徴とする請求項１５から請求項２３までのいずれかに記載の描画装置。
【請求項２５】
前記描画オブジェクト表示情報に応じて段階的に演算量を変化させることを特徴とする請求項１５から請求項２２までのいずれかに記載の描画装置。
【請求項２６】
前記演算量が前記曲面補間レベルにより決定されることを特徴とする請求項１５から請求項２５までのいずれかに記載の描画装置。
【請求項２７】
前記演算量が前記制御点の数により決定されることを特徴とする請求項１５から請求項２５までのいずれかに記載の描画装置。
【請求項２８】
前記演算量が前記曲面補間レベルと前記制御点の数により決定されることを特徴とする請求項１５から請求項２５までのいずれかに記載の描画装置。
【請求項２９】
請求項１５から請求項２８のいずれかに記載の描画装置であって、前記描画オブジェクト情報取得部が、描画オブジェクトそれぞれに対し１つ乃至複数個の代表点を決めるものであって、代表点は前記制御点生成部によって生成された制御点の全部あるいは一部で形作られる図形の重心とすることを特徴とした描画装置。
【請求項３０】
請求項１５から請求項２８のいずれかに記載の描画装置であって、前記描画オブジェクト情報取得部が、描画オブジェクトそれぞれに対し１つ乃至複数個の代表点を決めるものであって、代表点は前記制御点生成部によって生成された制御点の全部あるいは一部からの平均距離が最短となる点とすることを特徴とした描画装置。
【請求項３１】
請求項１５から請求項２８のいずれかに記載の描画装置であって、前記描画オブジェクト情報取得部が、描画オブジェクトそれぞれに対し１つ乃至複数個の代表点を決めるものであって、代表点は前記制御点生成部によって生成された制御点の全部あるいは一部から最低精度で自由曲面・自由曲線を描画する場合にも生成される制御点から所与の条件で選ばれることを特徴とした描画装置。
【請求項３２】
請求項１５から請求項２８のいずれかに記載の描画装置であって、前記代表点が一定時間で移動した直線距離を移動距離とし、
前記移動距離を前記一定時間で除算することで前記描画オブジェクトの移動速度を検出することを特徴とした描画装置。
【請求項３３】
請求項１５から請求項２８のいずれかに記載の描画装置であって、前記制御点が一定時間で移動した直線距離の平均を移動距離とし、前記移動距離を前記一定時間で除算することで前記描画オブジェクトの移動速度を検出することを特徴とした描画装置。
【請求項３４】
請求項１５から請求項２８のいずれかに記載の描画装置であって、描画オブジェクトの前記代表点の属する表示領域の曲面補間レベルの平均値を、その描画オブジェクト全体の曲面補間レベルとすることを特徴とする描画装置。
【請求項３５】
請求項１５から請求項２８のいずれかに記載の描画装置であって、描画オブジェクトの前記代表点が最も数多く属する表示領域の曲面補間レベルを、その描画オブジェクト全体の曲面補間レベルとすることを特徴とする描画装置。
【請求項３６】
請求項１５から請求項２８のいずれかに記載の描画装置であって、描画オブジェクトの前記代表点それぞれが属する表示領域の曲面補間レベルを、その代表点付近の制御点に対する曲面補間レベルとすることを特徴とし、それぞれの制御点は曲面補間レベルに従い制御点生成部によって間引かれることを特徴とする描画装置。
【請求項３７】
請求項１５から請求項２８のいずれかに記載の描画装置であって、代表点は前記制御点生成部によって生成された制御点の全部あるいは一部から最低精度で自由曲面・自由曲線を描画する場合にも生成される同一描画オブジェクトの制御点から所与の条件で選ばれた二点間の直線距離を前記描画オブジェクトの大きさ情報とすることを特徴とした描画装置。
【請求項３８】
請求項１５から請求項２８のいずれかに記載の描画装置であって、代表点は前記制御点生成部によって生成された制御点の全部あるいは一部の中で、最低精度で自由曲面・自由曲線を描画する場合にも生成される同一描画オブジェクトの制御点から所与の条件で選ばれた二点間の距離直線が所与の条件を満たした場合に、その描画オブジェクトを前記注目オブジェクトとすることを特徴とした前記描画装置。
【請求項３９】
請求項１５から請求項２８のいずれかに記載の描画装置であって、前記代表点から所与の条件を満たした前記代表点を数えるカウンタによって計上した数を、前記描画オブジェクトの数情報とすることを特徴とした描画装置。
【請求項４０】
請求項１５から請求項２８のいずれかに記載の描画装置であって、描画オブジェクトの前記代表点が表示領域に入っている間に一定の画面更新期間ごとに計上するカウンタにより得られた数値を前記描画オブジェクトが表示された表示期間情報とすることを特徴とした描画装置。
【請求項４１】
システム情報または描画オブジェクト情報を取得するステップと、
取得した前記情報によって曲面または曲線を生成するための曲面補間レベルを決定して制御点を生成するステップと、
前記制御点に基づき曲面生成を行うステップと、
取得した前記情報に基づいて表示物の曲面描画の演算量を動的に変化させるステップとを含む描画方法。
【請求項４２】
システム情報を取得し、
前記システム情報によって曲面または曲線を生成するための曲面補間レベルを決定して制御点を生成し、
前記制御点に基づき曲面生成を行い、
前記システム情報に基づいて表示物の曲面描画の演算量を動的に変化させることを特徴とする請求項４１に記載の描画方法。
【請求項４３】
前記システム情報が電池残量であることを特徴とする請求項４２に記載の描画方法。
【請求項４４】
前記システム情報がクロックギア比であることを特徴とする請求項４２に記載の描画方法。
【請求項４５】
前記システム情報が割当バンド幅であることを特徴とする請求項４２に記載の描画方法。
【請求項４６】
前記システム情報がバストラフィック量であることを特徴とする請求項４２に記載の描画方法。
【請求項４７】
前記システム情報がネットワークトラフィック量であることを特徴とする請求項４２に記載の描画方法。
【請求項４８】
前記システム情報が描画装置に対する割り込み頻度であることを特徴とする請求項４２に記載の描画方法。
【請求項４９】
前記システム情報が、電池残量、クロックギア比、割当バンド幅、バストラフィック量、ネットワークトラフィック量、描画装置に対する割り込み頻度のうちのいずれか２以上からなることを特徴とする請求項４２に記載の描画方法。
【請求項５０】
前記システム情報が予め設定された値よりも高いか低いかによって前記曲面補間レベルおよび前記制御点の数を設定することを特徴とする請求項４２から請求項４９までのいずれかに記載の描画方法。
【請求項５１】
前記システム情報に応じて段階的に演算量を変化させることを特徴とする請求項４２から請求項４９までのいずれかに記載の描画方法。
【請求項５２】
前記演算量が前記曲面補間レベルにより決定されることを特徴とする請求項４２から請求項５１までのいずれかに記載の描画方法。
【請求項５３】
前記演算量が前記制御点の数により決定されることを特徴とする請求項４２から請求項５１までのいずれかに記載の描画方法。
【請求項５４】
前記演算量が前記曲面補間レベルと前記制御点の数により決定されることを特徴とする請求項４２から請求項５１までのいずれかに記載の描画方法。
【請求項５５】
描画オブジェクト表示情報を取得し、
前記描画オブジェクト表示情報によって曲面または曲線を生成するための曲面補間レベルを決定して制御点を生成し、
前記制御点に基づき曲面生成を行い、
前記描画オブジェクト表示情報に基づいて表示物の曲面描画の演算量を動的に変化させることを特徴とする請求項４１に記載の描画方法。
【請求項５６】
前記描画オブジェクト表示情報が描画オブジェクトの移動速度であることを特徴とする請求項５５に記載の描画方法。
【請求項５７】
前記描画オブジェクト表示情報が描画オブジェクトの表示領域であることを特徴とする請求項５５に記載の描画方法。
【請求項５８】
前記描画オブジェクト表示情報が描画オブジェクトと予め決められた注目オブジェクトとの距離情報とを示す距離情報であることを特徴とする請求項５５に記載の描画方法。
【請求項５９】
前記描画オブジェクト表示情報が描画オブジェクトの数情報であることを特徴とする請求項５５に記載の描画方法。
【請求項６０】
前記描画オブジェクト表示情報が描画オブジェクトの大きさ情報であることを特徴とする請求項５５に記載の描画方法。
【請求項６１】
前記描画オブジェクト表示情報が描画オブジェクトの表示期間情報であることを特徴とする請求項５５に記載の描画方法。
【請求項６２】
前記描画オブジェクト表示情報が表示部の画質情報であることを特徴とする請求項５５に記載の描画方法。
【請求項６３】
前記描画オブジェクト表示情報が、前記描画オブジェクトの移動速度、前記描画オブジェクトの表示領域、前記描画オブジェクトと予め決められた注目オブジェクトとの距離情報とを示す距離情報、前記描画オブジェクトの数情報、前記描画オブジェクトの大きさ情報、前記表示期間情報、または前記表示部の画質情報のうちのいずれか２以上からなることを特徴とする請求項５５に記載の描画方法。
【請求項６４】
前記描画オブジェクト表示情報が予め設定された値よりも高いか低いかによって前記曲面補間レベルおよび前記制御点の数を設定することを特徴とする請求項５５から請求項６３までのいずれかに記載の描画方法。
【請求項６５】
前記描画オブジェクト表示情報に応じて段階的に演算量を変化させることを特徴とする請求項５５から請求項６３までのいずれかに記載の描画方法。
【請求項６６】
前記演算量が前記曲面補間レベルにより決定されることを特徴とする請求項５５から請求項６３までのいずれかに記載の描画方法。
【請求項６７】
前記演算量が前記制御点の数により決定されることを特徴とする請求項５５から請求項６３までのいずれかに記載の描画方法。
【請求項６８】
前記演算量が前記曲面補間レベルと前記制御点の数により決定されることを特徴とする請求項５５から請求項６３までのいずれかに記載の描画方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、描画装置および描画方法に関するものである。
【背景技術】
【０００２】
仮想三次元空間（或いは仮想二次元空間）に自由曲面・自由曲線を引く手法として、ベジェ曲線やスプライン曲線など制御点を用いたパラメトリック曲線を利用する手法が知られている。自由曲線は制御点を構成点或いは接線上の点とするｎ次式のグラフとして生成される。パラメトリック曲線を利用した自由曲面・自由曲線の生成において制御点の数が多いほど緻密な自由曲面・自由曲線を生成することができるが、制御点の数が多くなるほど自由曲面・自由曲線の生成のための演算量が増える。
【０００３】
一方、三次元グラフィックスの表示や動画の再生を行うシステムでは、描画装置や表示部の性能に応じて画面更新期間が設けられ、その画面更新期間の間に画像描画のためのデータ生成を行い、そのデータを表示部に送る必要がある。１秒間に何回画面を書き換えることができるかを表す指標としてフレームレートが知られている。例えばフレームレートが３０ｆｐｓの場合、１秒間に３０回描画が行われる。
【０００４】
このような画面更新期間が設けられている描画装置において、自由曲面或いは自由曲線の描画を行う場合、画面更新期間の間に所定の領域に対する画像生成のための演算、ならびにフレームバッファへの書き込み、表示部へのデータ送信を完了させる必要がある。高精度の描画を行うために多くの制御点を用いた場合、演算量が増加する。その結果、一連の描画処理が画面更新期間内に終了しない可能性がある。一方で描画するオブジェクトの制御点を一様に少なく生成した場合、演算量を削減させることができるものの、画像としての緻密さの欠如した画像データを常に生成することとなり、ユーザの満足度を損なってしまう可能性がある。
【０００５】
従来の画像描画の演算量を変化させる手法には以下のようなものがある。
【０００６】
特許文献１の技術によれば、表示物の制御点の中から選択された点や制御点の代表点と視点との距離に応じて分割数を変化させるという手法や、表示物の簡易オブジェクトの構成点の中から選択された点や簡易オブジェクトの構成点の代表点と視点との距離に応じて分割数を変化させるという手法を用いている。これにより視点から遠距離にある描画オブジェクトの分割数を減らし、描画処理の演算量を削減している。
【０００７】
また、特許文献２の技術によれば、画面更新期間が変化した場合やポーズ演出およびスロー演出の少なくとも１つが発生した場合に、使用するモデル、オブジェクトの描画の有無、レンダリングの内容の少なくとも１つを変化させる。このことにより、通常の描画更新期間の場合には画面の更新期間内で確実に描画できるように低画質でも高速な描画処理を行い、描画更新期間が長くなった場合には多少時間がかかっても高画質な画像を描画することが可能になる。
【特許文献１】特開２００１−２５０１２８号公報（第１４頁、第４図）
【特許文献２】特開２００２−１８３７４５号公報（第６頁、第３図）
【発明の開示】
【発明が解決しようとする課題】
【０００８】
特許文献１においては、描画オブジェクトの視点との距離に応じて演算量を削減しているが、視点からの距離のみを指標とする演算量の削減であるため、表示物が視点から近い場合に演算量が削減できない。そのため、表示物の距離が近い描画オブジェクトを多数生成するような場合に、画面更新期間内に描画処理が完了しない可能性がある。さらに描画装置の演算性能やシステム状況により演算量が変化するものではないため、システム状況により画面更新期間内に描画処理が完了しない可能性がある。
【０００９】
特許文献２においては、描画更新期間の変化に応じて演算量を変化させるものの、描画更新期間以外のシステム状況を考慮していないため、画面更新期間以外のシステム状況を要因として描画処理が完了しない可能性がある。さらに、画面更新期間内に描画処理が間に合うように自由曲面・自由曲線の演算量の削減を目的として制御点の生成を行うと、低精度の画像が生成されることになる。このとき、描画更新期間が所与の条件を満たす場合のみ高精度の描画が行われることになる。
【００１０】
また、特許文献２においては、描画更新期間の変化に応じて演算量を変化させるものの、ポーズ演出やスロー演出の発生していない通常の描画更新期間では一様に低画質な画像の生成が行われることになる。
【００１１】
本発明は、上記問題を鑑み、取得したシステム情報を基に制御点の生成数を変化させ、システムの状況に応じて最適な描画品質で三次元オブジェクトに自由曲面・自由曲線を生成することを目的とする描画装置および描画方法を提供するものである。
【００１２】
また、本発明は、上記問題を鑑み、描画オブジェクトの情報を取得・生成する装置により得た描画オブジェクト情報を基に上記制御点数を変化させ、少ない演算量で緻密さの欠如の目立つことのない描画品質で三次元オブジェクトに自由曲面・自由曲線を生成することを目的とする描画装置を提供するものである。
【課題を解決するための手段】
【００１３】
本発明による描画装置は、システム情報または描画オブジェクト情報を取得する情報取得部と、取得した前記情報によって、曲面または曲線を生成するための制御点の数を決定する曲面補間レベルを設定して前記曲面補間レベルに応じて前記制御点を生成する制御点生成部と、前記制御点に基づき曲面生成を行う曲面生成部とを備え、前記情報に基づいて表示物の曲面描画の演算量を動的に変化させるように構成されている。制御点生成部と曲面生成部とは、描画処理を行うブロックの描画部を構成する。
【００１４】
ここでシステム情報とは、電源の電池残量、描画装置のクロックギア比、記憶部に対する描画装置の割当バンド幅、相互結合網のバストラフィック量、ネットワークのネットワークトラフィック量、描画装置に対する割り込み頻度などの少なくともいずれか１つである。また、描画オブジェクト情報とは、生成した描画オブジェクトの移動速度情報、描画オブジェクトの表示領域情報、描画オブジェクトの注目オブジェクトとの距離情報、描画オブジェクトの数情報、描画オブジェクトの大きさ情報、描画オブジェクトの表示期間情報、或いは表示部の画質情報などの少なくともいずれか１つである。
【００１５】
この構成によれば、システムの状況や描画オブジェクトの状況に応じた最適な描画品質で自由曲面・自由曲線を生成することが可能となる。ここで最適な描画品質とは、画面更新期間内に描画処理が完了する最高精度の描画品質であったり、描画装置の作製者或いは使用者の意図に沿った描画品質であったりする。
【００１６】
本発明による描画装置は、システム情報を取得するシステム情報取得部と、前記システム情報によって、曲面または曲線を生成するための制御点の数を決定する曲面補間レベルを設定して前記曲面補間レベルに応じて前記制御点を生成する制御点生成部と、前記制御点に基づき曲面生成を行う曲面生成部とを備え、前記システム情報に基づいて表示物の曲面描画の演算量を動的に変化させるように構成されている。制御点生成部と曲面生成部とは、描画処理を行うブロックの描画部を構成する。取得したシステム情報に応じて制御点生成部が自由曲面・自由曲線の生成に用いる制御点の数を変化させ、曲面生成部によって生成される自由曲面・自由曲線の生成のための演算量を変化させる。
【００１７】
上記の描画装置に対応する本発明における描画方法は、システム情報を取得し、前記システム情報によって曲面または曲線を生成するための曲面補間レベルを決定して制御点を生成し、前記制御点に基づき曲面生成を行い、前記システム情報に基づいて表示物の曲面描画の演算量を動的に変化させるものである。
【００１８】
上記した本発明による描画装置、描画方法によれば、システム情報を基にして自由曲面或いは自由曲線生成のための制御点の生成数を制御し、システムの状況に応じた演算量で自由曲面・自由曲線の生成を行うので、所与の描画更新期間内に最適な描画品質で自由曲面・自由曲線を生成することが可能となる。
【００１９】
また、本発明による描画装置は、一定の画面更新期間を有する描画装置であって、描画オブジェクトの情報を取得する描画オブジェクト情報取得部と、前記描画オブジェクト情報取得部によって生成・認識された描画オブジェクト情報によって自由曲面・自由曲線を生成するための制御点を生成する制御点生成部と、前記制御点生成部によって生成された制御点に基づき曲面生成を行う曲面生成部とを具備する構成を採用することとし、一定の画面更新期間（１フレーム乃至数フレーム）ごとに描画オブジェクトの描画精度を変化させるものである。
【００２０】
ここで、描画装置とは描画部、描画オブジェクト情報取得部を含む三次元オブジェクト或いは二次元オブジェクトの描画を行うためのシステムである。また、描画部とは制御点生成部と曲面生成部とを含む描画処理を行うブロックである。
【００２１】
また、描画オブジェクト情報取得部とは、描画オブジェクトの移動速度情報、描画オブジェクトの表示領域情報、描画オブジェクトの特定の描画オブジェクト（以降、注目オブジェクトと呼ぶ）との距離情報、描画オブジェクトの数情報、描画オブジェクトの大きさ情報、描画オブジェクトの表示期間情報、或いは表示部の画質情報、の少なくともいずれか１つを生成するブロックである。また、制御点生成部とは自由曲面・自由曲線生成時にその形状を決定するために用いられる点である制御点を生成するブロックである。また曲面生成部とは、上記制御点生成部によって生成された制御点を使用して自由曲面或いは自由曲線を生成するブロックである。
【００２２】
本発明では、描画オブジェクト情報取得部において取得、生成した描画オブジェクトの移動速度情報、描画オブジェクトの表示領域情報、描画オブジェクトの注目オブジェクトとの距離情報、描画オブジェクトの数情報、描画オブジェクトの大きさ情報、描画オブジェクトの表示期間情報、或いは表示部の画質情報、の少なくともいずれか１つに応じて制御点生成部が上記制御点の数を変化させることにより、画面更新期間ごとに曲面生成部によって生成される自由曲面・自由曲線の生成のための演算量および自由曲面・自由曲線の描画精度を変化させるものである。
【００２３】
上記した本発明による描画装置、描画方法によれば、描画オブジェクト情報を基にして自由曲面或いは自由曲線生成のための制御点の生成数を制御し、描画オブジェクトの状況に応じた演算量で自由曲面・自由曲線の生成を行うので、所与の描画更新期間内に最適な描画品質で自由曲面・自由曲線を生成することが可能となる。
【００２４】
なお、上記の説明から明かなように、構成要素の各部それぞれは、これらをハードウエアで構成してもよいし、あるいはソフトウエアで構成してもよい。
【発明の効果】
【００２５】
本発明によれば、システムの状況や演算性能に応じて自由曲面・自由曲線の形状を決定する制御点の数を変化させる。そして、この制御点に基づいて自由曲面・自由曲線が生成される。したがって、システムの状況に応じた最適な描画品質で自由曲面・自由曲線を生成することが可能となる。
【００２６】
例えば描画処理が間に合うと判断される最大の制御点の数を生成することにより、不具合なく生成できる自由曲面・自由曲線の中から最も高精度の自由曲面・自由曲線を生成することが可能となる。また、これらの制御点の数を少なく生成するように設定することにより、演算量を削減し、消費電力を削減することが可能になる。
【００２７】
さらに、電池残量により制御点の数を制御することで、描画品質を介して電池残量をユーザに知らせることができることが可能となる。
【００２８】
また、本発明によれば、描画オブジェクトのユーザからの見え方に応じ、自由曲面・自由曲線の形状を決定する制御点の数が変化する。そして、この制御点に基づいて自由曲面・自由曲線が生成される。したがって、描画オブジェクトの見え方に応じた最適な描画品質で自由曲面・自由曲線を生成することが可能となる。例えば、短い時間で長い距離を移動する高速に動くオブジェクトを描画するという場合など、ユーザが視覚特性により認識困難であると思われる描画オブジェクトは少ない制御点を用いて自由曲面・自由曲線を生成し演算量を抑えるといったことが可能となる。また、これらの制御点の数を少なく生成するように設定することにより、演算量を削減することで消費電力を削減することが可能となることや、ハードウェアリソースを自由曲面・自由曲線の生成以外の処理に使用することが可能となる。
【発明を実施するための最良の形態】
【００２９】
本発明による描画装置は、システム情報または描画オブジェクト情報を取得する情報取得部と、取得した前記情報によって、曲面または曲線を生成するための制御点の数を決定する曲面補間レベルを設定して前記曲面補間レベルに応じて前記制御点を生成する制御点生成部と、前記制御点に基づき曲面生成を行う曲面生成部とを備え、前記情報に基づいて表示物の曲面描画の演算量を動的に変化させるように構成されている。制御点生成部と曲面生成部とは、描画処理を行うブロックの描画部を構成する。
【００３０】
ここでシステム情報とは、電源の電池残量、描画装置のクロックギア比、記憶部に対する描画装置の割当バンド幅、相互結合網のバストラフィック量、ネットワークのネットワークトラフィック量、描画装置に対する割り込み頻度などの少なくともいずれか１つである。また、描画オブジェクト情報とは、生成した描画オブジェクトの移動速度情報、描画オブジェクトの表示領域情報、描画オブジェクトの注目オブジェクトとの距離情報、描画オブジェクトの数情報、描画オブジェクトの大きさ情報、描画オブジェクトの表示期間情報、或いは表示部の画質情報などの少なくともいずれか１つである。
【００３１】
この構成によれば、システムの状況や描画オブジェクトの状況に応じた最適な描画品質で自由曲面・自由曲線を生成することが可能となる。ここで最適な描画品質とは、画面更新期間内に描画処理が完了する最高精度の描画品質であったり、描画装置の作製者或いは使用者の意図に沿った描画品質であったりする。
【００３２】
本発明による描画装置は、システム情報を取得するシステム情報取得部と、前記システム情報によって、曲面または曲線を生成するための制御点の数を決定する曲面補間レベルを設定して前記曲面補間レベルに応じて前記制御点を生成する制御点生成部と、前記制御点に基づき曲面生成を行う曲面生成部とを備え、前記システム情報に基づいて表示物の曲面描画の演算量を動的に変化させるように構成されている。制御点生成部と曲面生成部とは、描画処理を行うブロックの描画部を構成する。取得したシステム情報に応じて制御点生成部が自由曲面・自由曲線の生成に用いる制御点の数を変化させ、曲面生成部によって生成される自由曲面・自由曲線の生成のための演算量を変化させる。
【００３３】
上記の描画装置に対応する本発明における描画方法は、システム情報を取得し、前記システム情報によって曲面または曲線を生成するための曲面補間レベルを決定して制御点を生成し、前記制御点に基づき曲面生成を行い、前記システム情報に基づいて表示物の曲面描画の演算量を動的に変化させるものである。
【００３４】
この構成によれば、システムの状況に応じた最適な描画品質で自由曲面・自由曲線を生成することが可能となる。
【００３５】
上記構成において、前記のシステム情報取得部の構成要素についてはいくつかの態様がある。以下、順次説明する。
【００３６】
（１）前記システム情報が電池残量（描画装置が何らかの電源装置により電力を供給されている場合に、電源装置が描画装置に供給することのできる電力の残量）であり、その電池残量を取得する電池残量情報取得部を有していること。
【００３７】
電池残量が所与の条件を満たさなくなった場合に、目に見えて描画精度が落ちるように制御点数を少なく生成すれば、表示オブジェクトの描画精度で使用者に電池残量を判別できるようにすることが可能である。
【００３８】
（２）前記システム情報がクロックギア比（描画装置内の各ブロックのクロック周期を変更できる機構を持つ場合に、特定ブロックに対する描画部のクロック周期の比率或いは基準となるクロック周期に対する描画部のクロック周期の比率）であり、そのクロックギア比を取得するクロックギア比情報取得部を有していること。
【００３９】
これは、演算性能であるクロックギア比を自由曲面・自由曲線のための演算量に反映させるものである。これによれば、システムの状況であるクロックギア比に応じて自由曲面・自由曲線の制御点の数を変化させ、数が調整された制御点に基づいて自由曲面・自由曲線を生成するので、クロックギア比に応じた最適な描画品質で自由曲面・自由曲線を生成することが可能となる。すなわち、クロックギア比が大きいほど制御点の数を多くして、自由曲面・自由曲線の生成を高精度化することが可能となる。また、クロックギア比が小さいほど制御点の数を少なくして、演算量を削減し、消費電力を削減することが可能になる。
【００４０】
（３）前記システム情報が記憶部に対する描画装置の割当バンド幅情報（描画装置が主記憶やフレームバッファなどの記憶部を持つ構成の場合、描画部が記憶部に対してアクセスできる単位時間当たりのデータ転送の容量）であり、その割当バンド幅情報を取得する割当バンド幅情報取得部を有していること。
【００４１】
これは、演算性能である割当バンド幅を自由曲面・自由曲線のための演算量に反映させるものである。これによれば、割当バンド幅に応じて自由曲面・自由曲線の制御点の数を変化させ、数が調整された制御点に基づいて自由曲面・自由曲線を生成するので、割当バンド幅に応じた最適な描画品質で自由曲面・自由曲線を生成することが可能となる。すなわち、割当バンド幅が大きいほど制御点の数を多くして、自由曲面・自由曲線の生成を高精度化することが可能となる。また、割当バンド幅が小さいほど制御点の数を少なくして、演算量を削減し、消費電力を削減することが可能になる。
【００４２】
（４）前記システム情報が相互結合網のバストラフィック量（描画部、記憶部、表示部などを結合するバスなどの相互結合網上のデータトラフィック量）であり、そのバストラフィック量を取得するバストラフィック情報取得部を有していること。
【００４３】
これは、システムの状況であるバストラフィック量を自由曲面・自由曲線のための演算量に反映させるものである。これによれば、バストラフィック量に応じて自由曲面・自由曲線の制御点の数を変化させ、数が調整された制御点に基づいて自由曲面・自由曲線を生成するので、バストラフィック量に応じた最適な描画品質で自由曲面・自由曲線を生成することが可能となる。すなわち、バストラフィック量が小さいほど制御点の数を多くして、自由曲面・自由曲線の生成を高精度化することが可能となる。また、バストラフィック量が大きいほど制御点の数を少なくして、演算量を削減し、消費電力を削減することが可能になる。
【００４４】
（５）前記システム情報がネットワークトラフィック量（描画装置と外部とを結ぶネットワーク上のデータトラフィック量）であり、そのネットワークトラフィック量を取得するネットワークトラフィック情報取得部を有していること。
【００４５】
これは、システムの状況であるネットワークトラフィック量を自由曲面・自由曲線のための演算量に反映させるものである。これによれば、ネットワークトラフィック量に応じて自由曲面・自由曲線の制御点の数を変化させ、数が調整された制御点に基づいて自由曲面・自由曲線を生成するので、ネットワークトラフィック量に応じた最適な描画品質で自由曲面・自由曲線を生成することが可能となる。すなわち、ネットワークトラフィック量が小さいほど制御点の数を多くして、自由曲面・自由曲線の生成を高精度化することが可能となる。また、ネットワークトラフィック量が大きいほど制御点の数を少なくして、演算量を削減し、消費電力を削減することが可能になる。
【００４６】
（６）前記システム情報が描画装置に対する割り込み頻度（ユーザの操作などの外的要因或いは特権命令などの内的要因により、描画装置或いは描画部に対し発行される割り込み命令、またはそれに類する割り込み処理の頻度）であり、その割り込み頻度を取得する割り込み頻度情報取得部を有していること。
【００４７】
これは、システムの状況である割り込み頻度を自由曲面・自由曲線のための演算量に反映させるものである。これによれば、割り込み頻度に応じて自由曲面・自由曲線の制御点の数を変化させ、数が調整された制御点に基づいて自由曲面・自由曲線を生成するので、割り込み頻度に応じた最適な描画品質で自由曲面・自由曲線を生成することが可能となる。すなわち、割り込み頻度が小さいほど制御点の数を多くして、自由曲面・自由曲線の生成を高精度化することが可能となる。また、割り込み頻度が大きいほど制御点の数を少なくして、演算量を削減し、消費電力を削減することが可能になる。
【００４８】
（７）前記システム情報が、電池残量とクロックギア比と割当バンド幅情報とバストラフィック量とネットワークトラフィック量と描画装置に対する割り込み頻度のうちのいずれか２以上であること。したがって、それぞれに対応する電池残量情報取得部、クロックギア比情報取得部、割当バンド幅情報取得部、バストラフィック情報取得部、ネットワークトラフィック情報取得部、割り込み頻度情報取得部のうちの２以上を有していること。
【００４９】
なお、上記構成の描画装置における前記演算量の設定については、前記システム情報が予め設定された値よりも高いか低いかによって演算量を設定するのでもよいし、前記システム情報に応じて段階的に演算量を変化させるのでもよい。
【００５０】
また、上記構成の描画装置における前記演算量の算出については、前記曲面補間レベルから求めるのでもよいし、前記制御点の数から求めるのでもよいし、前記曲面補間レベルと前記制御点の数から求めるのでもよい。
【００５１】
また、別の局面において、画面更新期間とは、ディスプレイ装置に画像データが送られる場合のサイクル数であり、一定の画面更新期間を有する描画装置とは、例えば３０ｆｐｓの場合、１秒間に３０回画面を更新する描画装置である。画面更新期間を短く設定することで、描画オブジェクトの移動や変形は滑らかに見えるようになるが、仮想三次元空間（或いは仮想二次元空間）に写像するためのアドレス生成、描画オブジェクトの描画処理、フレームバッファへの書き込みを画面更新期間内に行う必要がある。
【００５２】
なお、例えば３０ｆｐｓの場合、１／３０秒ごとにフレームバッファの書き込みが行われるが、曲面生成部によって生成される自由曲面・自由曲線の生成のための演算量および自由曲面・自由曲線の描画精度を変化は１フレーム（１／３０秒）ごとだけではなく、数フレーム（１／３０×ｎ秒）ごとに行ってもよいものとする。
【００５３】
また、描画オブジェクトとは、描画装置が画面更新期間内に仮想三次元空間（或いは仮想二次元空間）に描く描画する対象となるオブジェクトであり、一部あるいは全部が自由曲面・自由曲線から構成される。
【００５４】
また、描画オブジェクト情報とは、生成した描画オブジェクトの移動速度情報、描画オブジェクトの表示領域情報、描画オブジェクトの注目オブジェクトとの距離情報、描画オブジェクトの数情報、描画オブジェクトの大きさ情報、描画オブジェクトの表示期間情報、或いは表示部の画質情報、の少なくともいずれか１つである。
【００５５】
ここで描画オブジェクトの移動速度とは、描画オブジェクトが一定の描画更新期間内で移動する速さである。ここで、移動速度を算出するための移動距離は描画オブジェクトの代表点が一定の画面更新期間で移動した距離であるものとする。ここで、代表点とは複数の制御点に基づき演算により求めてもよいし（重心など）、予め制御点の中から代表点を選定しておいてもよい。また、距離は仮想三次元空間（或いは仮想二次元空間）における直線距離でも良いし、所定の算出方法に基づく距離でも良い。また、一定の画像更新期間とは１フレームでも良いし数フレームでも良い。したがって、描画オブジェクトの一定の画面更新期間内での移動距離、すなわち移動速度により自由曲面・自由曲線生成のための演算量を変更することができ、自由曲面・自由曲線の描画精度を変更することが可能となる。また、移動速度が高い描画オブジェクトは低い描画オブジェクトに比べて制御点の数を少なく生成するようにすれば、ユーザに正確な形状が認識されがたい速度の描画オブジェクトの生成のための演算量を抑えることが可能となる。
【００５６】
また描画オブジェクトの表示領域とは、表示部から見える仮想三次元空間（或いは仮想二次元空間）の奥行き方向を除く二次元領域を、描画装置の動作前或いは動作中に指定したいくつかの表示領域に分割し、それぞれの描画オブジェクトが分割されたどの表示領域に表示されているかを示す位置情報である。描画オブジェクトがどの表示領域あるかを判定し、描画オブジェクトが存在する領域に予め定められた精度で自由曲面・自由曲線を描画するための制御点を生成する。ここで、描画オブジェクトがどの領域に存在するかの判定は、描画オブジェクトの代表点の座標により判定するものとする。ここで、代表点とは複数の制御点に基づき演算により求めてもよいし（重心など）、予め制御点の中から代表点を選定しておいてもよい。また、代表点とは１つだけでなく複数或いは全ての制御点を代表点としても構わない。代表点を複数とした場合は、それぞれの代表点の属する数が最も多い表示領域を描画オブジェクトの表示領域としても構わないし、それぞれの代表点ごとに別々の表示領域を持つという考え方を導入しても構わない。したがって本発明によれば、描画オブジェクトの属する表示領域により自由曲面・自由曲線生成のための演算量を変更することができ、自由曲面・自由曲線の描画精度を変更することが可能となる。また、例えば、表示部の中央から遠い描画オブジェクトは近い描画オブジェクトに比べて制御点の数を少なく生成するようにすれば、ユーザが表示部中央部を注視する場合などにユーザに正確な形状が認識されがたい描画オブジェクトの生成のための演算量を抑えることが可能となる。
【００５７】
また描画オブジェクトの注目オブジェクトとの距離とは、描画オブジェクトと注目オブジェクトの距離である。ここで、注目オブジェクトとは、仮想三次元空間（或いは仮想二次元空間）の中から、予め或いは動作中に記憶部に内蔵されたプログラム、データ、或いはネットワークを介して設定されたプログラム、データ、或いは操作部を介してユーザによって指定された描画オブジェクトのことである。また、距離は仮想三次元空間（或いは仮想二次元空間）における直線距離でも良いし、所定の算出方法に基づく距離でも良い。したがって本発明によれば、描画オブジェクトの注目オブジェクトからの距離により自由曲面・自由曲線生成のための演算量を変更することができ、自由曲面・自由曲線の描画精度を変更することが可能となる。また、注目オブジェクトからの距離が遠い描画オブジェクトは近い描画オブジェクトに比べて制御点の数を少なく生成するようにすれば、ユーザに正確な形状が認識されがたい描画オブジェクトの生成のための演算量を抑えることが可能となる。
【００５８】
また描画オブジェクトの数とは、仮想三次元空間（或いは仮想二次元空間）で描画する描画オブジェクトの数である。したがって本発明によれば、描画オブジェクトの数により自由曲面・自由曲線生成のための演算量を変更することができ、自由曲面・自由曲線の描画精度を変更することが可能となる。
【００５９】
なお、自由曲面・自由曲線の描画精度を変化させる根拠となる数は描画オブジェクトだけではなく、例えばその描画オブジェクトを生成するための制御点の総数や代表点の個数などとしても良い。また、描画オブジェクトの数が多い描画オブジェクトは少ない描画オブジェクトに比べて制御点の数を少なく生成するようにすれば、ユーザに正確な形状が認識されがたい描画オブジェクトの生成のための演算量を抑えることが可能となる。
【００６０】
また描画オブジェクトの大きさとは、描画オブジェクトがディスプレイ装置を通してユーザに認識される仮想三次元空間（或いは仮想二次元空間）で認識される大きさのことである。ここで、その大きさは制御点から選出された代表点二点間の直線距離でも良いし、或いは複数の代表点の重心から各制御点への平均距離などを算出したものを大きさの判断基準としても良い。したがって本発明によれば、描画オブジェクトの大きさにより自由曲面・自由曲線生成のための演算量を変更することができ、自由曲面・自由曲線の描画精度を変更することが可能となる。また、描画オブジェクトが小さい描画オブジェクトは大きい描画オブジェクトに比べて制御点の数を少なく生成するようにすれば、ユーザに正確な形状が認識されがたい描画オブジェクトの生成のための演算量を抑えることが可能となる。
【００６１】
また描画オブジェクトの表示期間とは、描画オブジェクトが表示部を通してユーザに認識される仮想三次元空間（或いは仮想二次元空間）に現れてからの経過時間、すなわち描画結果が表示部に送信されるフレームバッファの領域に書き込まれてからの経過時間のことである。したがって本発明によれば、描画オブジェクトが表示部に映し出されてからの経過時間により自由曲面・自由曲線生成のための演算量を変更することができ、自由曲面・自由曲線の描画精度を変更することが可能となる。また、描画オブジェクトの表示期間が短い描画オブジェクトは長い描画オブジェクトに比べて制御点の数を少なく生成するようにすれば、ユーザに正確な形状が認識されがたい描画オブジェクトの生成のための演算量を抑えることが可能となる。
【００６２】
また、表示部に設定された画質とはカラー階調、輝度、コントラスト、精細度、解像度などユーザから描画オブジェクトの見え方に影響を与える表示部の性能、或いは設定値であり、これらによってユーザは描画オブジェクトがはっきり見えるかどうかという色覚的な影響を受ける。したがって本発明によれば、描画オブジェクトが表示部に設定された画質により自由曲面・自由曲線生成のための演算量を変更することができ、自由曲面・自由曲線の描画精度を変更することが可能となる。また、表示部に設定された画質が高い場合は、画質が低い場合に比べて制御点の数を少なく生成するようにすれば、ユーザに正確な形状が認識されがたい描画オブジェクトの生成のための演算量を抑えることが可能となる。
【００６３】
なお、描画オブジェクト情報取得部はハードウェアによって実現されても良いし、プログラムによって実現されても良い。また、制御点生成部はハードウェアによって実現されても良いし、プログラムによって実現されても良い。また、曲面生成部はハードウェアによって実現されても良いし、プログラムによって実現されても良い。
【００６４】
以下、本発明にかかわる描画装置、描画方法の実施の形態を図面に基づいて詳細に説明する。
【００６５】
（実施の形態１）
図１は、本発明の実施の形態１における描画装置の構成を示している。
【００６６】
なお、本実施形態は、少なくとも描画部１００とシステム情報取得部１２０を含めばよく、それ以外のブロックについては、その有無ならびに構成は任意とする。ここで中央制御部１１０は、システム全体の管理、システム内の各ブロックへの命令などの各種処理を行うものである。記憶部１３０は、中央制御部１１０、描画部１００、通信部１５０のワーク領域となるものであり、主記憶１３１、フレームバッファ１３２として機能する。表示部１４０は、本実施形態により生成された画像を出力するためのものである。通信部１５０は、描画装置とネットワークなどを介して外部システムとの間で通信を行うためのものである。
【００６７】
なお、本実施の形態にかかわるプログラム或いはデータは、ネットワークおよび通信部１５０を介して記憶部１３０に蓄積或いは制御点生成部１０１に配信される形態を採っても良い。操作部１６０は、ユーザが描画装置に対して操作を行うためのものである。
【００６８】
システム情報取得部１２０は、電池残量情報取得部１２１、クロックギア比情報取得部１２２、割当バンド幅情報取得部１２３、バストラフィック情報取得部１２４、ネットワークトラフィック情報取得部１２５、割り込み頻度情報取得部１２６、の少なくともいずれか１つを含む。
【００６９】
ここで、電池残量情報取得部１２１は、描画部１００に対して電力を供給する電池などから構成される電源装置の電池残量を認識するものである。
【００７０】
クロックギア比情報取得部１２２は、描画装置が各々のブロックの周波数を変えることのできるクロックギア機能を備えている場合に、所与のブロックに対する描画部１００のクロックギア比或いは基準とする所与の周波数に対する描画部１００のクロックギア比を認識するものである。
【００７１】
割当バンド幅情報取得部１２３は、描画部１００の記憶部１３０に対する単位時間当たりの転送容量を認識するものである。
【００７２】
バストラフィック情報取得部１２４は、描画部１００、記憶部１３０などを相互に結合するバス１７０上のバストラフィックを認識するものである。
【００７３】
ネットワークトラフィック情報取得部１２５は、通信部１５０を介してデータの送受信を行うネットワークの単位時間当たりの転送容量を認識するものである。
【００７４】
割り込み頻度情報取得部１２６は、中央制御部１１０、通信部１５０、操作部１６０などから描画部１００に対してかけられた単位時間当たりの割り込みの量を認識するものである。
【００７５】
描画部１００は、中央制御部１１０或いはプログラムに基づいて自由曲面描画、自由曲線描画をはじめとする画像描画を行う。描画部１００は、制御点生成部１０１、曲面生成部１０２、画像生成部１０３を含む。
【００７６】
制御点生成部１０１は、システム情報取得部１２０より得られた電池残量情報、クロックギア比情報、割当バンド幅情報、バストラフィック情報、ネットワークトラフィック情報、割り込み頻度情報、の少なくとも１つ或いはそれらの組み合わせに応じて自由曲面或いは自由曲線を生成するために用いる制御点の数を変化させる処理を行うものである。
【００７７】
ここで制御点とは、ベジェ曲線、スプライン曲線などのパラメトリック曲線で自由曲面・自由曲線を生成する際に、自由曲線の形状を決定するために使用されるものである。自由曲面・自由曲線の生成の手段としてスプライン曲線或いはその拡張形を使用した場合、制御点の座標を基にして、曲線全体はその制御点間を滑らかに接続する（補間する）ことによって得られる。自由曲面・自由曲線の生成の手段としてベジェ曲線やＮＵＲＢＳ（Non Uniform Rational B-Spline）を使用した場合、与えられた制御点のうち、最初と最後の制御点だけは通過するが、その間の制御点は曲線のカーブの形状を決めるためにのみ使用される。
【００７８】
なお、制御点の数の決定の手段は、制御点生成部１０１において、ハードウェアによって実現しても良いし、記憶部１３０内のプログラムによって実現しても良いし、通信部１５０を介してネットワークによって送信されたデータ或いはプログラムにより決定しても良い。
【００７９】
曲面生成部１０２は、制御点生成部１０１によって生成された制御点を使用し、自由曲面・自由曲線を生成する。
【００８０】
なお、曲面生成手段ならびに曲面生成手段はハードウェアによって実現しても良いし、記憶部１３０内のプログラムによって実現しても良いし、通信部１５０を介してネットワークによって送信されたデータにより決定しても良い。
【００８１】
画像生成部１０３は、曲面生成部１０２によって生成された自由曲面或いは自由曲線を用いて表示オブジェクトの形状を生成し、その表示オブジェクトに対してジオメトリ演算、光源処理、シェーディング処理、テクスチャ生成、フィルタリング処理、αブレンディング処理、フォグ処理などの各種画像生成処理を行い、記憶部１３０のフレームバッファ１３２の該当アドレスに格納するための処理を行うものである。
【００８２】
図２（Ａ），（Ｂ），（Ｃ）は、システム情報に応じて自由曲線生成のための制御点を変更する例を説明する。図２（Ａ）は、取得したシステム情報により高精度の自由曲線の描画をするのに十分な条件であると判断された場合の画像を表している。図２（Ｂ）は、取得したシステム情報により高精度の自由曲線の描画をすることが難しいと判断され、中程度の精度で自由曲線を生成された場合の画像を表している。図２（Ｃ）は、取得したシステム情報により中程度の自由曲線の描画をすることが難しいと判断され、低精度で自由曲線が生成された場合の画像を表している。
【００８３】
ここで、描画する際の条件は、描画更新期間に間に合うかどうかの判定や、残りの電力等から判定されるものである。
【００８４】
本実施の形態では、同じ表示オブジェクトの画像生成を行う場合でも、システムのリソースの使用状況などシステム状況が所与の条件を満たせば高精度な自由曲線描画を行う。システム情報が高精度の自由曲面・自由曲線の描画を行うための条件を満たさなくなると、中精度や低精度の自由曲線描画へと自由曲面・自由曲線の精度を変更し、演算量を変更することができる。
【００８５】
なお、図２では、曲面補間レベルとして「高」（図中（Ａ））、「中」（図中（Ｂ））、「低」（図中（Ｃ））の３段階を用意し、制御点の数を（Ｂ）は（Ａ）の約半分、（Ｃ）は（Ｂ）の恣意的に約半分にした図を用いて説明を行っている。ただし、本発明では曲面補間レベルの数ならびに制御点の数、生成する制御点の選択の方法はこの限りでなく、所与の方式をハードウェア化しても良いし、記憶部１３０に保存され実行されることのできるプログラムによって実現しても良いし、ネットワークを介した外部からのデータなどにより決定しても良い。また、画像生成のたびにシステム情報を条件と比較しているが、本発明ではシステム情報に応じた曲面補間レベルの決定のタイミングはこの限りではなく、所定のサイクルでのみシステム情報により制御点の生成数を変更することも可能である。
【００８６】
図３は本実施形態の処理フローの一例として、電池残量に応じて生成する制御点の数を制御し、自由曲線の描画精度を変える処理の流れを説明するためのフローチャートである。
【００８７】
システム情報取得部１２０より得られた電池残量が基準Ａ以上であれば、曲面補間レベルを「高」に設定し、制御点の数を多く生成することで、演算量は多くなるが、高精度の自由曲線を生成する（ステップＳ３０、Ｓ３２、Ｓ３５）。
【００８８】
電池残量が基準Ｂ以上基準Ａ未満であれば、曲面補間レベルを「中」に設定し、制御点の数を中程度生成することで、演算量が高精度に比べ少なくなるものの、中精度の自由曲線を生成する（ステップＳ３０、Ｓ３１、Ｓ３３、Ｓ３６）。
【００８９】
電池残量が基準Ｂ未満であれば、曲面補間レベルを「低」に設定し、制御点の数を少なく生成することで、演算量が少ないものの、低精度の自由曲線を生成する（ステップＳ３０、Ｓ３１、Ｓ３４、Ｓ３７）。
【００９０】
さらに、次の画像更新期間内で引き続き画像生成を行うかどうかの判断を行い（ステップＳ３８）、行うと判断すればステップＳ３０からステップＳ３７までの処理を繰り返す。
【００９１】
なお、図３では、曲面補間レベルとして高精度と中精度と低精度の３段階を用意しているが、本発明では曲面補間レベルの数はこの限りではない。電池残量の範囲についてより細かく基準を設定し対応する曲面補間レベルを決定することで、より細かく電池残量を自由曲面・自由曲線のための演算量に反映させることができる。また、電池残量が所与の条件を満たさなくなった場合に、目に見えて描画精度が落ちるように制御点数を少なく生成することで、表示オブジェクトの描画精度で使用者に電池残量を判別できるようにすることが可能である。また、曲面補間レベルの決定ならびに制御点生成数の決定の手段は、所与の方式をハードウェア化しても良いし、記憶部１３０に保存され実行されることのできるプログラムによって実現しても良いし、ネットワークを介した外部からのデータなどにより決定しても良い。さらに曲面補間レベルの決定がハードウェア化され変更できない場合であっても、決定された曲面補間レベルから制御点の数の決定の手段として記憶部１３０に保存され実行されることのできるプログラムやネットワークを介した外部からのデータなどを用いて実現することで、制御点の数の決定方法を変えることができる。
【００９２】
図４は本実施形態の処理フローの一例として、クロックギア比に応じて生成する制御点の数を制御し、自由曲線の描画精度を変える処理の流れを説明するためのフローチャートである。
【００９３】
システム情報取得部１２０より得られたクロックギア比が基準Ａ以上であれば、曲面補間レベルを「高」に設定し、制御点の数を多く生成することで、演算量は多くなるが、高精度の自由曲線を生成する（ステップＳ４０、Ｓ４２、Ｓ４５）。
【００９４】
クロックギア比が基準Ｂ以上基準Ａ未満であれば、曲面補間レベルを「中」に設定し、制御点の数を中程度生成することで、演算量が高精度に比べ少なくなるものの、中精度の自由曲線を生成する（ステップＳ４０、Ｓ４１、Ｓ４３、Ｓ４６）。
【００９５】
クロックギア比が基準Ｂ未満であれば、曲面補間レベルを「低」に設定し、制御点の数を少なく生成することで、演算量が少ないものの、低精度の自由曲線を生成する（ステップＳ４０、Ｓ４１、Ｓ４４、Ｓ４７）。
【００９６】
さらに、次の画像更新期間内で引き続き画像生成を行うかどうかの判断を行い（ステップＳ４８）、行うと判断すればステップＳ４０からステップＳ４７までの処理を繰り返す。
【００９７】
なお、図４では、曲面補間レベルとして高精度と中精度と低精度の３段階を用意しているが、本発明では曲面補間レベルの数はこの限りではない。クロックギア比の範囲についてより細かく基準を設定し対応する曲面補間レベルを決定することで、より細かくクロックギア比を自由曲面・自由曲線のための演算量に反映させることができる。また、曲面補間レベルの決定ならびに制御点生成数の決定の手段は、所与の方式をハードウェア化しても良いし、記憶部１３０に保存され実行されることのできるプログラムによって実現しても良いし、ネットワークを介した外部からのデータなどにより決定しても良い。さらに曲面補間レベルの決定がハードウェア化され変更できない場合であっても、決定された曲面補間レベルから制御点の数の決定の手段として記憶部１３０に保存され実行されることのできるプログラムやネットワークを介した外部からのデータなどを用いて実現することで、制御点の数の決定方法を変えることができる。
【００９８】
図５は本実施形態の処理フローの一例として、割当バンド幅に応じて生成する制御点の数を制御し、自由曲線の描画精度を変える処理の流れを説明するためのフローチャートである。
【００９９】
システム情報取得部１２０より得られた割当バンド幅が基準Ａ以上であれば、曲面補間レベルを「高」に設定し、制御点の数を多く生成することで、演算量は多くなるが、高精度の自由曲線を生成する（ステップＳ５０、Ｓ５２、Ｓ５５）。
【０１００】
割当バンド幅が基準Ｂ以上基準Ａ未満であれば、曲面補間レベルを「中」に設定し、制御点の数を中程度生成することで、演算量が高精度に比べ少なくなるものの、中精度の自由曲線を生成する（ステップＳ５０、Ｓ５１、Ｓ５３、Ｓ５６）。
【０１０１】
割当バンド幅が基準Ｂ未満であれば、曲面補間レベルを「低」に設定し、制御点の数を少なく生成することで、演算量が少ないものの、低精度の自由曲線を生成する（ステップＳ５０、Ｓ５１、Ｓ５４、Ｓ５７）。
【０１０２】
さらに、次の画像更新期間内で引き続き画像生成を行うかどうかの判断を行い（ステップＳ５８）、行うと判断すればステップＳ５０からステップＳ５７までの処理を繰り返す。
【０１０３】
なお、図５では、曲面補間レベルとして高精度と中精度と低精度の３段階を用意しているが、本発明では曲面補間レベルの数はこの限りではない。割当バンド幅の範囲についてより細かく基準を設定し対応する曲面補間レベルを決定することで、より細かく割当バンド幅を自由曲面・自由曲線のための演算量に反映させることができる。また、曲面補間レベルの決定ならびに制御点生成数の決定の手段は、所与の方式をハードウェア化しても良いし、記憶部１３０に保存され実行されることのできるプログラムによって実現しても良いし、ネットワークを介した外部からのデータなどにより決定しても良い。さらに曲面補間レベルの決定がハードウェア化され変更できない場合であっても、決定された曲面補間レベルから制御点の数の決定の手段として記憶部１３０に保存され実行されることのできるプログラムやネットワークを介した外部からのデータなどを用いて実現することで、制御点の数の決定方法を変えることができる。
【０１０４】
図６は本実施形態の処理フローの一例として、バストラフィックに応じて生成する制御点の数を制御し、自由曲線の描画精度を変える処理の流れを説明するためのフローチャートである。
【０１０５】
システム情報取得部１２０より得られたバストラフィックが基準Ａ以下であれば、曲面補間レベルを「高」に設定し、制御点の数を多く生成することで、演算量は多くなるが、高精度の自由曲線を生成する（ステップＳ６０、Ｓ６２、Ｓ６５）。
【０１０６】
バストラフィックが基準Ａより上で、かつ基準Ｂ以下あれば、曲面補間レベルを「中」に設定し、制御点の数を中程度生成することで、演算量が高精度に比べ少なくなるものの、中精度の自由曲線を生成する（ステップＳ６０、Ｓ６１、Ｓ６３、Ｓ６６）。
【０１０７】
バストラフィックが基準Ｂより上であれば、曲面補間レベルを「低」に設定し、制御点の数を少なく生成することで、演算量が少ないものの、低精度の自由曲線を生成する（ステップＳ６０、Ｓ６１、Ｓ６４、Ｓ６７）。
【０１０８】
さらに、次の画像更新期間内で引き続き画像生成を行うかどうかの判断を行い（ステップＳ６８）、行うと判断すればステップＳ６０からステップＳ６７までの処理を繰り返す。
【０１０９】
なお、図６では、曲面補間レベルとして高精度と中精度と低精度の３段階を用意しているが、本発明では曲面補間レベルの数はこの限りではない。バストラフィック範囲についてより細かく基準を設定し対応する曲面補間レベルを決定することで、より細かくバストラフィックを自由曲面・自由曲線のための演算量に反映させることができる。また、曲面補間レベルの決定ならびに制御点生成数の決定の手段は、所与の方式をハードウェア化しても良いし、記憶部１３０に保存され実行されることのできるプログラムによって実現しても良いし、ネットワークを介した外部からのデータなどにより決定しても良い。さらに曲面補間レベルの決定がハードウェア化され変更できない場合であっても、決定された曲面補間レベルから制御点の数の決定の手段として記憶部１３０に保存され実行されることのできるプログラムやネットワークを介した外部からのデータなどを用いて実現することで、制御点の数の決定方法を変えることができる。
【０１１０】
図７は本実施形態の処理フローの一例として、ネットワークトラフィックに応じて生成する制御点の数を制御し、自由曲線の描画精度を変える処理の流れを説明するためのフローチャートである。
【０１１１】
システム情報取得部１２０より得られたネットワークトラフィックが基準Ａ以下であれば、曲面補間レベルを「高」に設定し、制御点の数を多く生成することで、演算量は多くなるが、高精度の自由曲線を生成する（ステップＳ７０、Ｓ７２、Ｓ７５）。
【０１１２】
ネットワークトラフィックが基準Ａより上で、かつ基準Ｂ以下あれば、曲面補間レベルを「中」に設定し、制御点の数を中程度生成することで、演算量が高精度に比べ少なくなるものの、中精度の自由曲線を生成する（ステップＳ７０、Ｓ７１、Ｓ７３、Ｓ７６）。
【０１１３】
ネットワークトラフィックが基準Ｂより上であれば、曲面補間レベルを「低」に設定し、制御点の数を少なく生成することで、演算量が少ないものの、低精度の自由曲線を生成する（ステップＳ７０、Ｓ７１、Ｓ７４、Ｓ７７）。
【０１１４】
さらに、次の画像更新期間内で引き続き画像生成を行うかどうかの判断を行い（ステップＳ７８）、行うと判断すればステップＳ７０からステップＳ７７までの処理を繰り返す。
【０１１５】
なお、図７では、曲面補間レベルとして高精度と中精度と低精度の３段階を用意しているが、本発明では曲面補間レベルの数はこの限りではない。ネットワークトラフィック範囲についてより細かく基準を設定し対応する曲面補間レベルを決定することで、より細かくネットワークトラフィックを自由曲面・自由曲線のための演算量に反映させることができる。また、曲面補間レベルの決定ならびに制御点生成数の決定の手段は、所与の方式をハードウェア化しても良いし、記憶部１３０に保存され実行されることのできるプログラムによって実現しても良いし、ネットワークを介した外部からのデータなどにより決定しても良い。さらに曲面補間レベルの決定がハードウェア化され変更できない場合であっても、決定された曲面補間レベルから制御点の数の決定の手段として記憶部１３０に保存され実行されることのできるプログラムやネットワークを介した外部からのデータなどを用いて実現することで、制御点の数の決定方法を変えることができる。
【０１１６】
図８は本実施形態の処理フローの一例として、割り込み頻度に応じて生成する制御点の数を制御し、自由曲線の描画精度を変える処理の流れを説明するためのフローチャートである。
【０１１７】
システム情報取得部１２０より得られた割り込み頻度が基準Ａ以下であれば、曲面補間レベルを「高」に設定し、制御点の数を多く生成することで、演算量は多くなるが、高精度の自由曲線を生成する（ステップＳ８０、Ｓ８２、Ｓ８５）。
【０１１８】
割り込み頻度が基準Ａより上で、かつ基準Ｂ以下あれば、曲面補間レベルを「中」に設定し、制御点の数を中程度生成することで、演算量が高精度に比べ少なくなるものの、中精度の自由曲線を生成する（ステップＳ８０、Ｓ８１、Ｓ８３、Ｓ８６）。
【０１１９】
割り込み頻度が基準Ｂより上であれば、曲面補間レベルを「低」に設定し、制御点の数を少なく生成することで、演算量が少ないものの、低精度の自由曲線を生成する（ステップＳ８０、Ｓ８１、Ｓ８４、Ｓ８７）。
【０１２０】
さらに、次の画像更新期間内で引き続き画像生成を行うかどうかの判断を行い（ステップＳ８８）、行うと判断すればステップＳ８０からステップＳ８７までの処理を繰り返す。
【０１２１】
なお、図８では、曲面補間レベルとして高精度と中精度と低精度の３段階を用意しているが、本発明では曲面補間レベルの数はこの限りではない。割り込み頻度範囲についてより細かく基準を設定し対応する曲面補間レベルを決定することで、より細かく割り込み頻度を自由曲面・自由曲線のための演算量に反映させることができる。また、曲面補間レベルの決定ならびに制御点生成数の決定の手段は、所与の方式をハードウェア化しても良いし、記憶部１３０に保存され実行されることのできるプログラムによって実現しても良いし、ネットワークを介した外部からのデータなどにより決定しても良い。さらに曲面補間レベルの決定がハードウェア化され変更できない場合であっても、決定された曲面補間レベルから制御点の数の決定の手段として記憶部１３０に保存され実行されることのできるプログラムやネットワークを介した外部からのデータなどを用いて実現することで、制御点の数の決定方法を変えることができる。
【０１２２】
図９は本実施形態の処理フローの一例として、電池残量、クロックギア比、割当バンド幅の３つのシステム情報に応じて生成する制御点の数を制御し、自由曲線の描画精度を変える処理の流れを説明するためのフローチャートである。
【０１２３】
システム情報取得部１２０より得られた電池残量が基準Ａ以上かつクロックギア比が基準Ｃ以上かつ割当バンド幅が基準Ｅ以上であれば（ステップＳ９０、Ｓ９２、Ｓ９４）、曲面補間レベルを「高」に設定し、制御点の数を多く生成することで、演算量は多くなるが、高精度の自由曲線を生成する（ステップＳ９６、Ｓ９９）。
【０１２４】
電池残量が基準Ａ以上かつクロックギア比が基準Ｃ以上かつ割当バンド幅が基準Ｆ以上基準Ｅ未満（ステップＳ９０、Ｓ９２、Ｓ９４、Ｓ９５）、または電池残量が基準Ａ以上かつクロックギア比が基準Ｄ以上基準Ｃ未満かつ割当バンド幅が基準Ｆ以上（ステップＳ９０、Ｓ９２、Ｓ９３、Ｓ９５）、または電池残量が基準Ｂ以上基準Ａ未満かつクロックギア比が基準Ｄ以上かつ割当バンド幅がＦ以上（ステップＳ９０、Ｓ９１、Ｓ９３、Ｓ９５）であれば、曲面補間レベルを「中」に設定し、制御点の数を中程度生成することで、演算量が高精度に比べ少なくなるものの、中精度の自由曲線を生成する（ステップＳ９７、Ｓ９ａ）。
【０１２５】
電池残量が基準Ｂ未満或いはクロックギア比が基準Ｄ未満或いは割当バンド幅が基準Ｆ未満であれば（ステップＳ９１、Ｓ９３、Ｓ９５）、曲面補間レベルを「低」に設定し、制御点の数を少なく生成することで、演算量が少ないものの、低精度の自由曲線を生成する（ステップＳ９８、Ｓ９ｂ）。
【０１２６】
さらに、次の画像更新期間内で引き続き画像生成を行うかどうかの判断を行い（ステップＳ９ｃ）、行うと判断すればステップＳ９０からステップＳ９ｂまでの処理を繰り返す。
【０１２７】
なお、図９では順に電池残量、クロックギア比、割当バンド幅のそれぞれ基準範囲を満たす判断ステップにより３つの曲面補間レベルの中から曲面補間レベルを決定しているが、曲面補間レベルの決定に用いるシステム情報の種類およびシステム情報の数、曲面補間レベルの決定の仕方、曲面補間レベルの数はこの限りではない。曲面補間レベルの決定の仕方は、所与の方式をハードウェア化しても良いし、記憶部１３０に保存され実行されることのできるプログラムによって実現しても良いし、ネットワークを介した外部からのデータなどにより決定しても良い。さらに曲面補間レベルの決定がハードウェア化され変更できない場合であっても、決定された曲面補間レベルから制御点の数の決定の手段として記憶部１３０に保存され実行されることのできるプログラムやネットワークを介した外部からのデータなどを用いて実現することで、制御点の数の決定方法を変えることができる。
【０１２８】
（実施の形態２）
図１０は、本発明の実施の形態２における描画装置の構成を示している。
【０１２９】
なお、同図において本実施形態は、少なくとも描画部１００と描画オブジェクト情報取得部２２０を含めばよく、それ以外のブロックについては、その有無ならびに構成は任意とする。実施の形態１の場合と同様に、ここで、中央制御部１１０は、システム全体の管理、システム内の各ブロックへの命令などの各種処理を行うものである。記憶部１３０は中央制御部１１０、描画部１００、通信部１５０のワーク領域となるものであり、主記憶１３１、フレームバッファ１３２として機能する。表示部１４０は、本実施形態により生成された画像を出力するためのものである。通信部１５０は、描画装置とネットワークなどを介して外部システムとの間で通信を行うためのものである。
【０１３０】
なお、本実施の形態にかかわるプログラム或いはデータは、ネットワークおよび通信部１５０を介して記憶部１３０に蓄積或いは制御点生成部１０１に配信される形態を採っても良い。操作部１６０は、ユーザが描画装置に対して操作を行うためのものである。
【０１３１】
描画オブジェクト情報取得部２２０は、移動速度情報取得部２２１、表示領域情報取得部２２２、注目オブジェクト距離情報取得部２２３、描画オブジェクト大きさ情報取得部２２４、描画オブジェクト数情報取得部２２５、表示期間情報取得部２２６、表示装置画質情報取得部２２７、の少なくともいずれか１つを含む。
【０１３２】
ここで、移動速度情報取得部２２１は、描画部１００において生成する描画オブジェクトの移動速度、すなわり単位時間当たりの移動距離を認識するものである。
【０１３３】
表示領域情報取得部２２２は、表示部１４０を通してユーザが認識する仮想三次元空間（仮想二次元空間）をいくつかの領域に分けた場合、どの領域に描画部１００の生成した描画オブジェクトが描画されているかを認識するものである。
【０１３４】
注目オブジェクト距離情報取得部２２３は、仮想三次元空間（仮想二次元空間）に描画された描画オブジェクトの中からユーザが注視していると思われる特定オブジェクトとの距離を認識するものである。
【０１３５】
描画オブジェクト大きさ情報取得部２２４は、描画オブジェクトの仮想三次元空間（仮想二次元空間）上での大きさを認識するものである。
【０１３６】
描画オブジェクト数情報取得部２２５は、描画オブジェクトの仮想三次元空間（仮想二次元空間）上に描画されている数を認識するものである。
【０１３７】
表示期間情報取得部２２６は、描画部１００において描画された描画オブジェクトが表示部１４０に描画され仮想三次元空間（仮想二次元空間）にあるとユーザに認知されてからの経過時間を認識するものである。
【０１３８】
表示装置画質情報取得部２２７は、中央制御部１１０、通信部１５０、操作部１６０、などから表示部１４０に対して設定を行われた、或いは表示部１４０の仕様として定められた輝度、コントラスト、解像度、カラー階調などから表示部１４０の画質を認識するものである。
【０１３９】
描画部１００は、中央制御部１１０或いはプログラムに基づいて自由曲面描画、自由曲線描画をはじめとする画像描画を行う。描画部１００は、制御点生成部１０１、曲面生成部１０２、画像生成部１０３を含む。制御点生成部１０１は、描画オブジェクト情報取得部２２０より得られた描画オブジェクトの移動速度情報、描画オブジェクトの表示領域情報、描画オブジェクトの注目オブジェクトとの距離情報、描画オブジェクトの数情報、描画オブジェクトの大きさ情報、描画オブジェクトの表示期間情報、或いは表示部の画質情報、の少なくとも１つ或いはそれらの組み合わせに応じて、自由曲面或いは自由曲線を生成するために用いる制御点の数を変化させる処理を行うものである。
【０１４０】
ここで制御点とは、実施の形態１で説明したのと同様のものである。
【０１４１】
本実施の形態においても図２が援用される。図２（Ａ）（Ｂ）（Ｃ）は描画オブジェクト情報に応じて、自由曲線生成のための制御点を変更する例を説明する。図２（Ａ）は取得した描画オブジェクト情報により高精度の自由曲線の描画が所定の描画更新期間内に描画する、と判断された場合の画像を表している。図２（Ｂ）は取得した描画オブジェクト情報により高精度の自由曲線の描画を所定の描画更新期間内に描画するまでの描画精度は必要ないと判断され、中程度の精度で自由曲線を生成された場合の画像を表している。図２（Ｃ）は取得した描画オブジェクト情報により中程度の自由曲線の描画が所定の描画更新期間内に描画するまでの描画精度は必要ないと判断され、低精度で自由曲線が生成された場合の画像を表している。
【０１４２】
本実施の形態２では、同じ描画オブジェクトの画像生成を行う場合でも、描画オブジェクト情報が所与の条件を満たせば高精度な自由曲面・自由曲線描画を行う。描画オブジェクト情報が高精度の自由曲面・自由曲線の描画を行うための条件を満たさなくなると、中精度や低精度の自由曲線描画へと自由曲面・自由曲線の精度を変更し、演算量を変更することができる。
【０１４３】
なお、図２では、画像生成のたびに描画オブジェクト情報を条件と比較しているが、本発明では描画オブジェクト情報に応じた曲面補間レベルの決定のタイミングはこの限りではなく、所定のサイクルでのみ描画オブジェクト情報により制御点の生成数を変更することも可能である。
【０１４４】
図１１は本実施形態の処理フローの一例として、描画オブジェクトの移動速度に応じて生成する制御点の数を制御し、自由曲線の描画精度を変える処理の流れを説明するためのフローチャートである。
【０１４５】
描画オブジェクト情報取得部２２０より得られた描画オブジェクトの移動速度が基準Ａ未満（遅い）であれば、曲面補間レベルを「高」に設定し、制御点の数を多く生成することで、演算量は多くなるが高精度の自由曲線を生成する（ステップＴ３０、Ｔ３２、Ｔ３５）。
【０１４６】
描画オブジェクトの移動速度が基準Ａ以上基準Ｂ未満であれば、曲面補間レベルを「中」に設定し、制御点の数を中程度生成することで、演算量が高精度に比べ少なくなるものの、中精度の自由曲線を生成する（ステップＴ３０、Ｔ３１、Ｔ３３、Ｔ３６）。
【０１４７】
描画オブジェクトの移動速度が基準Ｂ以上（速い）であれば、曲面補間レベルを「低」に設定し、制御点の数を少なく生成することで、演算量が少ないものの、低精度の自由曲線を生成する（ステップＴ３０、Ｔ３１、Ｔ３４、Ｔ３７）。
【０１４８】
さらに、次の画像更新期間内で引き続き画像生成を行うかどうかの判断を行い（ステップＴ３８）、曲面生成処理を行うと判断すればステップＴ３０からステップＴ３７までの処理を繰り返す。
【０１４９】
なお、図１１では、曲面補間レベルとして高精度、中精度、低精度の３段階を用意しているが、本発明では曲面補間レベルの数はこの限りではない。描画オブジェクトの移動速度の範囲についてより細かく基準を設定し対応する曲面補間レベルを決定することで、より細かく描画オブジェクトの移動速度を自由曲面・自由曲線のための演算量に反映させることができる。また、曲面補間レベルの決定ならびに制御点生成数の決定手段は、所与の方式をハードウェア化しても良いし、記憶部に保存され実行されることのできるプログラムによって実現しても良いし、ネットワークを介した外部からのデータなどにより決定されても良い。さらに曲面補間レベルの決定がハードウェア化され変更できない場合であっても、決定された曲面補間レベルから制御点の数の決定手段として記憶部に保存され実行されることのできるプログラムやネットワークを介した外部からのデータなどを用いて実現することで、制御点の数の決定方法を変えることができる。
【０１５０】
図１２は本実施形態の処理フローの一例として、描画オブジェクトの表示領域情報に応じて生成する制御点の数を制御し、自由曲線の描画精度を変える処理の流れを説明するためのフローチャートである。
【０１５１】
描画オブジェクト情報取得部２２０より得られた描画オブジェクトが描画されている領域がＡであれば、曲面補間レベルを「高」に設定し、制御点の数を多く生成することで、演算量は多くなるが高精度の自由曲線を生成する（ステップＴ４０、Ｔ４２、Ｔ４５）。
【０１５２】
描画オブジェクトが描画されている領域がＢであれば、曲面補間レベルを「中」に設定し、制御点の数を中程度生成することで、演算量が高精度に比べ少なくなるものの、中精度の自由曲線を生成する（ステップＴ４０、Ｔ４１、Ｔ４３、Ｔ４６）。
【０１５３】
描画オブジェクトが描画されている領域がＣであれば、曲面補間レベルを「低」に設定し、制御点の数を少なく生成することで、演算量が少ないものの、低精度の自由曲線を生成する（ステップＴ４０、Ｔ４１、Ｔ４４、Ｔ４７）。
【０１５４】
さらに、次の画像更新期間内で引き続き画像生成を行うかどうかの判断を行い（ステップＴ４８）、行うと判断すればステップＴ４０からステップＴ４７までの処理を繰り返す。
【０１５５】
なお、図１２では、曲面補間レベルとして高精度、中精度、低精度の３段階を用意しているが、本発明では曲面補間レベルの数はこの限りではない。描画オブジェクトが描画されている領域の範囲についてより細かく基準を設定し対応する曲面補間レベルを決定することで、より細かく描画オブジェクトが描画されている領域を自由曲面・自由曲線のための演算量に反映させることができる。また、曲面補間レベルの決定ならびに制御点生成数の決定手段は、所与の方式をハードウェア化しても良いし、記憶部に保存され実行されることのできるプログラムによって実現しても良いし、ネットワークを介した外部からのデータなどにより決定されても良い。さらに曲面補間レベルの決定がハードウェア化され変更できない場合であっても、決定された曲面補間レベルから制御点の数の決定手段として記憶部に保存され実行されることのできるプログラムやネットワークを介した外部からのデータなどを用いて実現することで、制御点の数の決定方法を変えることができる。
【０１５６】
図１３は本実施形態の処理フローの一例として、描画オブジェクトと注目オブジェクトとの距離に応じて生成する制御点の数を制御し、自由曲線の描画精度を変える処理の流れを説明するためのフローチャートである。
【０１５７】
描画オブジェクト情報取得部２２０より得られた注目オブジェクトとの距離が基準Ａ未満（近い）であれば、曲面補間レベルを「高」に設定し、制御点の数を多く生成することで、演算量は多くなるが高精度の自由曲線を生成する（ステップＴ５０、Ｔ５２、Ｔ５５）。
【０１５８】
注目オブジェクトとの距離が基準Ａ以上基準Ｂ未満であれば、曲面補間レベルを「中」に設定し、制御点の数を中程度生成することで、演算量が高精度に比べ少なくなるものの、中精度の自由曲線を生成する（ステップＴ５０、Ｔ５１、Ｔ５３、Ｔ５６）。
【０１５９】
注目オブジェクトとの距離が基準Ｂ以上（遠い）であれば、曲面補間レベルを「低」に設定し、制御点の数を少なく生成することで、演算量が少ないものの、低精度の自由曲線を生成する（ステップＴ５０、Ｔ５１、Ｔ５４、Ｔ５７）。
【０１６０】
さらに、次の画像更新期間内で引き続き画像生成を行うかどうかの判断を行い（ステップＴ５８）、行うと判断すればステップＴ５０からステップＴ５７までの処理を繰り返す。
【０１６１】
なお、図１３では、曲面補間レベルとして高精度、中精度、低精度の３段階を用意しているが、本発明では曲面補間レベルの数はこの限りではない。注目オブジェクトとの距離の範囲についてより細かく基準を設定し対応する曲面補間レベルを決定することで、より細かく注目オブジェクトとの距離を自由曲面・自由曲線のための演算量に反映させることができる。また、曲面補間レベルの決定ならびに制御点生成数の決定手段は、所与の方式をハードウェア化しても良いし、記憶部に保存され実行されることのできるプログラムによって実現しても良いし、ネットワークを介した外部からのデータなどにより決定されても良い。さらに曲面補間レベルの決定がハードウェア化され変更できない場合であっても、決定された曲面補間レベルから制御点の数の決定手段として記憶部に保存され実行されることのできるプログラムやネットワークを介した外部からのデータなどを用いて実現することで、制御点の数の決定方法を変えることができる。
【０１６２】
図１４は本実施形態の処理フローの一例として、描画オブジェクトの数情報に応じて生成する制御点の数を制御し、自由曲線の描画精度を変える処理の流れを説明するためのフローチャートである。
【０１６３】
描画オブジェクト情報取得部２２０より得られた描画オブジェクトの数が基準Ａ未満であれば、曲面補間レベルを「高」に設定し、制御点の数を多く生成することで、演算量は多くなるが高精度の自由曲線を生成する（ステップＴ６０、Ｔ６２、Ｔ６５）。
【０１６４】
描画オブジェクトの数が基準Ａ以上基準Ｂ未満であれば、曲面補間レベルを「中」に設定し、制御点の数を中程度生成することで、演算量が高精度に比べ少なくなるものの、中精度の自由曲線を生成する（ステップＴ６０、Ｔ６１、Ｔ６３、Ｔ６６）。
【０１６５】
描画オブジェクトの数が基準Ｂ以上であれば、曲面補間レベルを「低」に設定し、制御点の数を少なく生成することで、演算量が少ないものの、低精度の自由曲線を生成する（ステップＴ６０、Ｔ６１、Ｔ６４、Ｔ６７）。
【０１６６】
さらに、次の画像更新期間内で引き続き画像生成を行うかどうかの判断を行い（ステップＴ６８）、行うと判断すればステップＴ６０からステップＴ６７までの処理を繰り返す。
【０１６７】
なお、図１４では、曲面補間レベルとして高精度、中精度、低精度の３段階を用意しているが、本発明では曲面補間レベルの数はこの限りではない。描画オブジェクトの数の範囲についてより細かく基準を設定し対応する曲面補間レベルを決定することで、より細かく描画オブジェクトの数を自由曲面・自由曲線のための演算量に反映させることができる。また、曲面補間レベルの決定ならびに制御点生成数の決定手段は、所与の方式をハードウェア化しても良いし、記憶部に保存され実行されることのできるプログラムによって実現しても良いし、ネットワークを介した外部からのデータなどにより決定されても良い。さらに曲面補間レベルの決定がハードウェア化され変更できない場合であっても、決定された曲面補間レベルから制御点の数の決定手段として記憶部に保存され実行されることのできるプログラムやネットワークを介した外部からのデータなどを用いて実現することで、制御点の数の決定方法を変えることができる。また、描画オブジェクトの数の検出方法としては、描画オブジェクトから所与の条件で選ばれた代表点をカウンタで計上する方法などがある。
【０１６８】
図１５は本実施形態の処理フローの一例として、描画オブジェクトの大きさ情報に応じて生成する制御点の数を制御し、自由曲線の描画精度を変える処理の流れを説明するためのフローチャートである。
【０１６９】
描画オブジェクト情報取得部２２０より得られた描画オブジェクトの大きさが基準Ａ以上であれば、曲面補間レベルを「高」に設定し、制御点の数を多く生成することで、演算量は多くなるが高精度の自由曲線を生成する（ステップＴ７０、Ｔ７２、Ｔ７５）。
【０１７０】
描画オブジェクトの大きさが基準Ｂ以上基準Ａ未満であれば、曲面補間レベルを「中」に設定し、制御点の数を中程度生成することで、演算量が高精度に比べ少なくなるものの、中精度の自由曲線を生成する（ステップＴ７０、Ｔ７１、Ｔ７３、Ｔ７６）。
【０１７１】
描画オブジェクトの大きさが基準Ｂ未満であれば、曲面補間レベルを「低」に設定し、制御点の数を少なく生成することで、演算量が少ないものの、低精度の自由曲線を生成する（ステップＴ７０、Ｔ７１、Ｔ７４、Ｔ７７）。
【０１７２】
さらに、次の画像更新期間内で引き続き画像生成を行うかどうかの判断を行い（ステップＴ７８）、行うと判断すればステップＴ７０からステップＴ７７までの処理を繰り返す。
【０１７３】
なお、図１５では、曲面補間レベルとして高精度、中精度、低精度の３段階を用意しているが、本発明では曲面補間レベルの数はこの限りではない。描画オブジェクトの大きさの範囲についてより細かく基準を設定し対応する曲面補間レベルを決定することで、より細かく描画オブジェクトの大きさを自由曲面・自由曲線のための演算量に反映させることができる。また、曲面補間レベルの決定ならびに制御点生成数の決定手段は、所与の方式をハードウェア化しても良いし、記憶部に保存され実行されることのできるプログラムによって実現しても良いし、ネットワークを介した外部からのデータなどにより決定されても良い。さらに曲面補間レベルの決定がハードウェア化され変更できない場合であっても、決定された曲面補間レベルから制御点の数の決定手段として記憶部に保存され実行されることのできるプログラムやネットワークを介した外部からのデータなどを用いて実現することで、制御点の数の決定方法を変えることができる。
【０１７４】
図１６は本実施形態の処理フローの一例として、描画オブジェクトの表示期間情報に応じて生成する制御点の数を制御し、自由曲線の描画精度を変える処理の流れを説明するためのフローチャートである。
【０１７５】
描画オブジェクト情報取得部２２０より得られた描画オブジェクトの表示期間が基準Ａ以上であれば、曲面補間レベルを「高」に設定し、制御点の数を多く生成することで、演算量は多くなるが高精度の自由曲線を生成する（ステップＴ８０、Ｔ８２、Ｔ８５）。
【０１７６】
描画オブジェクトの表示期間が基準Ａ未満で、かつ基準Ｂ以上あれば、曲面補間レベルを「中」に設定し、制御点の数を中程度生成することで、演算量が高精度に比べ少なくなるものの、中精度の自由曲線を生成する（ステップＴ８０、Ｔ８１、Ｔ８３、Ｔ８６）。
【０１７７】
描画オブジェクトの表示期間が基準Ｂ未満であれば、曲面補間レベルを「低」に設定し、制御点の数を少なく生成することで、演算量が少ないものの、低精度の自由曲線を生成する（ステップＴ８０、Ｔ８１、Ｔ８４、Ｔ８７）。
【０１７８】
さらに、次の画像更新期間内で引き続き画像生成を行うかどうかの判断を行い（ステップＴ８８）、行うと判断すればステップＴ８０からステップＴ８７までの処理を繰り返す。
【０１７９】
なお、図１６では、曲面補間レベルとして高精度、中精度、低精度の３段階を用意しているが、本発明では曲面補間レベルの数はこの限りではない。描画オブジェクトの表示期間の範囲についてより細かく基準を設定し対応する曲面補間レベルを決定することで、より細かく描画オブジェクトの表示期間を自由曲面・自由曲線のための演算量に反映させることができる。また、曲面補間レベルの決定ならびに制御点生成数の決定手段は、所与の方式をハードウェア化しても良いし、記憶部に保存され実行されることのできるプログラムによって実現しても良いし、ネットワークを介した外部からのデータなどにより決定されても良い。さらに曲面補間レベルの決定がハードウェア化され変更できない場合であっても、決定された曲面補間レベルから制御点の数の決定手段として記憶部に保存され実行されることのできるプログラムやネットワークを介した外部からのデータなどを用いて実現することで、制御点の数の決定方法を変えることができる。また、表示期間の検出方法としては、描画オブジェクトから所与の条件で選ばれた代表点が表示領域（フレームバッファ内など）に置かれた時点から一定の画面更新期間ごとにカウンタでインクリメントする方法などがある。
【０１８０】
図１７は本実施形態の処理フローの一例として、表示部の画質情報に応じて生成する制御点の数を制御し、自由曲線の描画精度を変える処理の流れを説明するためのフローチャートである。
【０１８１】
描画オブジェクト情報取得部２２０より得られた表示部の画質が基準Ａ以上であれば、曲面補間レベルを「高」に設定し、制御点の数を多く生成することで、演算量は多くなるが高精度の自由曲線を生成する（ステップＴ９０、Ｔ９２、Ｔ９５）。
【０１８２】
表示部の画質が基準Ａ未満で、かつ基準Ｂ以上であれば、曲面補間レベルを「中」に設定し、制御点の数を中程度生成することで、演算量が高精度に比べ少なくなるものの、中精度の自由曲線を生成する（ステップＴ９０、Ｔ９１、Ｔ９３、Ｔ９６）。
【０１８３】
表示部の画質が基準Ｂ未満であれば、曲面補間レベルを「低」に設定し、制御点の数を少なく生成することで、演算量が少ないものの、低精度の自由曲線を生成する（ステップＴ９０、Ｔ９１、Ｔ９４、Ｔ９７）。
【０１８４】
さらに、次の画像更新期間内で引き続き画像生成を行うかどうかの判断を行い（ステップＴ９８）、行うと判断すればステップＴ９０からステップＴ９７までの処理を繰り返す。
【０１８５】
なお、図１７では、曲面補間レベルとして高精度、中精度、低精度の３段階を用意しているが、本発明では曲面補間レベルの数はこの限りではない。表示部の画質の範囲についてより細かく基準を設定し対応する曲面補間レベルを決定することで、より細かく表示部の画質を自由曲面・自由曲線のための演算量に反映させることができる。また、曲面補間レベルの決定ならびに制御点生成数の決定手段は、所与の方式をハードウェア化しても良いし、記憶部に保存され実行されることのできるプログラムによって実現しても良いし、ネットワークを介した外部からのデータなどにより決定されても良い。さらに曲面補間レベルの決定がハードウェア化され変更できない場合であっても、決定された曲面補間レベルから制御点の数の決定手段として記憶部に保存され実行されることのできるプログラムやネットワークを介した外部からのデータなどを用いて実現することで、制御点の数の決定方法を変えることができる。
【０１８６】
図１８は本実施形態の処理フローの一例として、描画オブジェクトの移動速度、描画オブジェクトが描画されている領域、注目オブジェクトとの距離の３つの描画オブジェクト情報に応じて生成する制御点の数を制御し、自由曲線の描画精度を変える処理の流れを説明するためのフローチャートである。
【０１８７】
描画オブジェクト情報取得部２２０より得られた描画オブジェクトの移動速度が基準Ａ未満かつ描画オブジェクトの大きさが基準Ｃ以上かつ注目オブジェクトとの距離が基準Ｅ未満であれば（ステップＴ１００、Ｔ１０２、Ｔ１０４）、曲面補間レベルを「高」に設定し、制御点の数を多く生成することで、演算量は多くなるが高精度の自由曲線を生成する（ステップＴ１０６、Ｔ１０９）。
【０１８８】
（ａ）描画オブジェクトの移動速度が基準Ａ未満、かつ描画オブジェクトの大きさが基準Ｃ以上、かつ注目オブジェクトとの距離が基準Ｅ以上基準Ｆ未満（ステップＴ１００、Ｔ１０２、Ｔ１０４、Ｔ１０５）、
（ｂ）または描画オブジェクトの移動速度が基準Ａ未満、かつ描画オブジェクトの大きさが基準Ｄ以上基準Ｃ未満かつ注目オブジェクトとの距離が基準Ｆ未満（ステップＴ１００、Ｔ１０２、Ｔ１０３、Ｔ１０５）、
（ｃ）または描画オブジェクトの移動速度が基準Ａ以上基準Ｂ未満、かつ描画オブジェクトの大きさが基準Ｄ以上、かつ注目オブジェクトとの距離がＦ未満（ステップＴ１００、Ｔ１０１、Ｔ１０３、Ｔ１０５）であれば、曲面補間レベルを「中」に設定し、制御点の数を中程度生成することで、演算量が高精度に比べ少なくなるものの、中精度の自由曲線を生成する（ステップＴ１０７、Ｔ１０ａ）。
【０１８９】
描画オブジェクトの移動速度が基準Ｂ以上、或いは描画オブジェクトの大きさが基準Ｄ未満、或いは注目オブジェクトとの距離が基準Ｆ以上であれば（ステップＴ１０１、Ｔ１０３、Ｔ１０５）、曲面補間レベルを「低」に設定し、制御点の数を少なく生成することで、演算量が少ないものの、低精度の自由曲線を生成する（ステップＴ１０８、Ｔ１０ｂ）。
【０１９０】
さらに、次の画像更新期間内で引き続き画像生成を行うかどうかの判断を行い（ステップＴ１０ｃ）、行うと判断すればステップＴ１００からステップＴ１０ｂまでの処理を繰り返す。
【０１９１】
なお、図１８では順に描画オブジェクトの移動速度、描画オブジェクトの大きさ、注目オブジェクトとの距離のそれぞれ基準範囲を満たす判断ステップにより３つの曲面補間レベルの中から曲面補間レベルを決定しているが、曲面補間レベルの決定に用いる描画オブジェクト情報の種類および描画オブジェクト情報の数、曲面補間レベルの決定の仕方、曲面補間レベルの数はこの限りではない。曲面補間レベルの決定の仕方は、所与の方式をハードウェア化しても良いし、記憶部に保存され実行されることのできるプログラムによって実現しても良いし、ネットワークを介した外部からのデータなどにより決定されても良い。さらに曲面補間レベルの決定がハードウェア化され変更できない場合であっても、決定された曲面補間レベルから制御点の数の決定手段として記憶部に保存され実行されることのできるプログラムやネットワークを介した外部からのデータなどを用いて実現することで、制御点の数の決定方法を変えることができる。
【０１９２】
図１９は、前記描画オブジェクト情報が描画オブジェクトの移動速度、描画オブジェクトの表示領域情報、描画オブジェクトの注目オブジェクトとの距離情報、描画オブジェクトの数情報、描画オブジェクトの表示期間情報のいずれかである際に用いる描画オブジェクトの代表点の決定の一例として、最も低精度で自由曲面・自由曲線を描画する際に用いる制御点で形作られた多角形の重心を描画オブジェクトの代表点とする方法である。
【０１９３】
図１９では、最も低精度で自由曲面・自由曲線を描画する際に用いる点を４点（Ｑ０、Ｑ１、Ｑ２、Ｑ３）から成る多角形を対角線で切り、三角形にして重心（Ｑ４）を求めているが、位置ベクトルから算出する方法など他の求め方を用いてもよい。また、重心の決定の仕方は、所与の方式をハードウェア化しても良いし、記憶部に保存され実行されることのできるプログラムによって実現しても良いし、ネットワークを介した外部からのデータなどにより決定されても良い。
【０１９４】
図２０は、前記描画オブジェクト情報が描画オブジェクトの移動速度、描画オブジェクトの表示領域情報、描画オブジェクトの注目オブジェクトとの距離情報、描画オブジェクトの数情報、描画オブジェクトの表示期間情報のいずれかである際に用いる描画オブジェクトの代表点の決定の一例として、最も低精度で自由曲面・自由曲線を描画する際に用いる制御点から所与の条件で選ばれた点を代表点とする方法である。例では、最高精度で自由曲線を描画した図２０（Ａ）から最低精度で自由曲線を描画した図２０（Ｂ）までの全ての自由曲線生成に共通する制御点４点（Ｑ０、Ｑ１、Ｑ２、Ｑ３）全てを代表点としているが、代表点はこの最低精度で描画した場合に使用する制御点の一部でもよい。また、最低制御点の中から代表点を決定する方法は、所与の方式をハードウェア化しても良いし、記憶部に保存され実行されることのできるプログラムによって実現しても良いし、ネットワークを介した外部からのデータなどにより決定されても良い。
【０１９５】
図２１は、前記描画オブジェクト情報が描画オブジェクトの移動速度、描画オブジェクトの注目オブジェクトとの距離情報のいずれかである際に用いる距離として、描画オブジェクトの代表点の直線距離を用いた検出の例である。描画オブジェクトＰ１３０の代表点をＱ２、描画オブジェクトＰ１３１の代表点をＱ５とし、二点間の直線距離Ｌを描画オブジェクトＰ１３０，Ｐ１３１間の直線距離とする。
【０１９６】
なお、図２１では、描画オブジェクトＰ１３０とＰ１３１の代表点として最低精度の自由曲面・自由曲線描画で用いる制御点の中から所与の条件で選んだ一点を選択しているが、代表点の選び方はこれだけに限らない。また、図２１では二点間の距離としてｘ−ｙ方向のみを示しているが、奥行き方向を含めた距離であっても構わない。また、代表点間の距離の算出は、所与の方式をハードウェア化しても良いし、記憶部に保存され実行されることのできるプログラムによって実現しても良いし、ネットワークを介した外部からのデータなどにより決定されても良い。
【０１９７】
図２２は、前記描画オブジェクト情報が描画オブジェクトの移動速度、描画オブジェクトの注目オブジェクトとの距離情報のいずれかである際に用いる距離として、描画オブジェクトが複数個の代表点を持つ場合に、描画オブジェクトの代表点の直線距離の平均値を用いた検出の例である。描画オブジェクトＰ１４０の代表点をＱ０、Ｑ１、Ｑ２、Ｑ３とし、描画オブジェクトＰ１４１の代表点をＱ４、Ｑ５、Ｑ６、Ｑ７とし、Ｑ０とＱ７の直線距離Ｌ０、Ｑ１とＱ４の直線距離Ｌ１、Ｑ２とＱ５の直線距離Ｌ２、Ｑ３とＱ６の直線距離Ｌ３、の直線距離の平均値Ｌ（＝（Ｌ０＋Ｌ１＋Ｌ２＋Ｌ３）／４）を描画オブジェクトＰ１４０，Ｐ１４１間の直線距離とする。
【０１９８】
なお、図２２では描画オブジェクトＰ１４０とＰ１４１の代表点として最低精度の自由曲面・自由曲線描画で用いる制御点の中から所与の条件で選んだ４点を選択しているが、代表点の選び方はこれだけに限らない。また、図２２では二点間の距離としてｘ−ｙ方向のみを示しているが奥行き方向を含めた距離であっても構わない。また、描画オブジェクト間の代表点の関連付け、代表点間の距離の算出、および平均距離の算出は、所与の方式をハードウェア化しても良いし、記憶部に保存され実行されることのできるプログラムによって実現しても良いし、ネットワークを介した外部からのデータなどにより決定されても良い。
【０１９９】
図２３は、前記描画オブジェクト情報が描画オブジェクトの表示領域情報である際に、描画オブジェクトが複数個の代表点を持つ場合の曲面補間レベルの決定方法として、それぞれの代表点の属する表示領域に設定された曲面補間レベルの平均値を描画オブジェクトの曲面補間レベルに設定する例である。描画オブジェクトＰ１５０の代表点がＱ０からＱ６の７点であるとき、それぞれ代表点Ｑ０、Ｑ１、Ｑ２、Ｑ３が表示領域Ｒ１５１に属し、代表点Ｑ４、Ｑ５が表示領域Ｒ１５２に属し、代表点Ｑ６が表示領域Ｒ１５３に属する。表示領域Ｒ１５１の曲面補間レベルをＡ、表示領域Ｒ１５２の曲面補間レベルをＢ、表示領域Ｒ１５３の曲面補間レベルをＣとしたとき、代表点Ｑ０からＱ６の属する表示領域の曲面補間レベルＡ、Ｂ、Ｃの平均値Ｄ、すなわち（Ａ＊４＋Ｂ＊２＋Ｃ＊１）／７を描画オブジェクトＰ１５０の曲面補間レベルとする。
【０２００】
なお、平均値Ｄが予め設定されている曲面補間レベルの数値にならない場合は、最も近い曲面補間レベルをその描画オブジェクトの曲面補間レベルとする。
【０２０１】
なお、曲面補間レベルの平均値の算出は、所与の方式をハードウェア化しても良いし、記憶部に保存され実行されることのできるプログラムによって実現しても良いし、ネットワークを介した外部からのデータなどにより決定されても良い。
【０２０２】
図２４は、前記描画オブジェクト情報が描画オブジェクトの表示領域情報である際に、描画オブジェクトが複数個の代表点を持つ場合の曲面補間レベルの決定方法として、それぞれの制御点の属する表示領域に設定された曲面補間レベルに従い、次の制御点生成数を設定する例である。描画オブジェクトＰ１６０の代表点がＱ０からＱ６の７点であるとき、それぞれ代表点Ｑ０、Ｑ１、Ｑ２、Ｑ３が表示領域Ｒ１６１に属し、代表点Ｑ４、Ｑ５が表示領域Ｒ１６２に属し、代表点Ｑ６が表示領域Ｒ１６３に属する。表示領域Ｒ１６１の曲面補間レベルをＡ、表示領域Ｒ１６２の曲面補間レベルをＢ、表示領域Ｒ１６３の曲面補間レベルをＣとしたとき、代表点Ｑ０、Ｑ１、Ｑ２、Ｑ３は曲面補間レベルＡに従い、次の画面更新期間時に生成されるかを決定され、代表点Ｑ４、Ｑ５は曲面補間レベルＢに従い、次の画面更新期間時に生成されるかを決定され、代表点６は曲面補間レベルＣに従い、次の画面更新期間時に生成される。曲面補間レベル決定段階で生成されなかった制御点は近傍の点の曲面補間レベルに従うなどの手法を採っても良い。
【０２０３】
図２５は、前記描画オブジェクト情報が描画オブジェクトの大きさ情報、描画オブジェクトの注目オブジェクトとの距離情報のいずれかである際に用いる描画オブジェクトの大きさの検出方法として、最低精度で自由曲線を描画した際に使用する制御点２点間の距離を描画オブジェクトの大きさとする例である。描画オブジェクトＰ１７０を最低精度で描画する際の制御点がＱ０からＱ６の７点であるとき、所与の条件により選択された２点Ｑ３、Ｑ６の直線距離Ｌを描画オブジェクトＰ１７０の大きさとする。
【０２０４】
なお、大きさ判定に用いる制御点２点の選定、および２点間の直線距離の算出は、所与の方式をハードウェア化しても良いし、記憶部に保存され実行されることのできるプログラムによって実現しても良いし、ネットワークを介した外部からのデータなどにより決定されても良い。また、前記描画オブジェクト情報が描画オブジェクトの注目オブジェクトとの距離情報の際、注目オブジェクトの選定方法として、描画オブジェクトの大きさが所与の条件を満たすものを注目オブジェクトとしても良い。
【０２０５】
なお、描画オブジェクトの大きさが注目オブジェクトの条件を満たしているかの判定は、所与の方式をハードウェア化しても良いし、記憶部に保存され実行されることのできるプログラムによって実現しても良いし、ネットワークを介した外部からのデータなどにより決定されても良い。
【産業上の利用可能性】
【０２０６】
以上説明してきたとおり、本発明による描画装置、描画方法は、システム情報を基にして自由曲面或いは自由曲線生成のための制御点の生成数を制御し、システムの状況に応じた演算量で自由曲面・自由曲線の生成を行うので、所与の描画更新期間内に自由曲面或いは自由曲線を生成する技術として有用である。
【０２０７】
また、本発明による描画装置、描画方法は、描画オブジェクト情報を基にして自由曲面或いは自由曲線生成のための制御点の生成数を制御し、描画オブジェクトの状況に応じた演算量で自由曲面・自由曲線の生成を行うので、所与の描画更新期間内に自由曲面或いは自由曲線を生成する技術として有用である。
【図面の簡単な説明】
【０２０８】
【図１】本発明の実施の形態１における描画装置の構成の例を示すブロック図
【図２】本発明の実施の形態１，２の描画装置において、システム情報、描画オブジェクト情報に応じて生成される制御点の数ならびに画像が異なる例の説明図
【図３】本発明の実施の形態１の描画装置において、電池残量に応じて制御点の数を変更することに関するフローチャート
【図４】本発明の実施の形態１の描画装置において、クロックギア比に応じて制御点の数を変更することに関するフローチャート
【図５】本発明の実施の形態１の描画装置において、割当バンド幅に応じて制御点の数を変更することに関するフローチャート
【図６】本発明の実施の形態１の描画装置において、バストラフィックに応じて制御点の数を変更することに関するフローチャート
【図７】本発明の実施の形態１の描画装置において、ネットワークトラフィックに応じて制御点の数を変更することに関するフローチャート
【図８】本発明の実施の形態１の描画装置において、割り込み頻度に応じて制御点の数を変更することに関するフローチャート
【図９】本発明の実施の形態１の描画装置において、複数のシステム情報に応じて制御点の数を変更することに関するフローチャート
【図１０】本発明の実施の形態２における描画装置の構成の例を示すブロック図
【図１１】本発明の実施の形態２の描画オブジェクトの移動速度に応じて制御点の数を変更することを説明するためのフローチャート
【図１２】本発明の実施の形態２の描画オブジェクトが描画されている領域に応じて制御点の数を変更することを説明するためのフローチャート
【図１３】本発明の実施の形態２の注目オブジェクトとの距離に応じて制御点の数を変更することを説明するためのフローチャート
【図１４】本発明の実施の形態２の描画オブジェクトの数に応じて制御点の数を変更することを説明するためのフローチャート
【図１５】本発明の実施の形態２の描画オブジェクトの大きさに応じて制御点の数を変更することを説明するためのフローチャート
【図１６】本発明の実施の形態２の描画オブジェクトの表示期間に応じて制御点の数を変更することを説明するためのフローチャート
【図１７】本発明の実施の形態２の表示部の画質に応じて制御点の数を変更することを説明するためのフローチャート
【図１８】本発明の実施の形態２の複数の描画オブジェクト情報に応じて制御点の数を変更することを説明するためのフローチャート
【図１９】本発明の実施の形態２の描画オブジェクトの代表点を決定する方法を説明するための図
【図２０】本発明の実施の形態２の描画オブジェクトの代表点を決定する方法を説明するための図
【図２１】本発明の実施の形態２の描画オブジェクト間の距離を検出する方法を説明するための図
【図２２】本発明の実施の形態２の描画オブジェクト間の距離を検出する方法を説明するための図
【図２３】本発明の実施の形態２の描画オブジェクトの表示領域に従った曲面補間レベルを決定する方法を説明するための図
【図２４】本発明の実施の形態２の描画オブジェクトの表示領域に従った曲面補間レベルを決定する方法を説明するための図
【図２５】本発明の実施の形態２の描画オブジェクトの大きさを検出する方法を説明するための図
【符号の説明】
【０２０９】
１００  描画部
１０１  制御点生成部
１０２  曲面生成部
１０３  画像生成部
１１０  中央制御部
１２０  システム情報取得部
１２１  電池残量情報取得部
１２２  クロックギア比情報取得部
１２３  割当バンド幅情報取得部
１２４  バストラフィック情報取得部
１２５  ネットワークトラフィック情報取得部
１２６  割り込み頻度情報取得部
１３０  記憶部
１３１  主記憶
１３２  フレームバッファ
１４０  表示部
１５０  通信部
１６０  操作部
１７０  バス
２２０  描画オブジェクト情報取得部
２２１  移動速度情報取得部
２２２  描表示領域情報取得部
２２３  注目オブジェクト距離情報取得部
２２４  描画オブジェクト大きさ情報取得部
２２５  描画オブジェクト数情報取得部
２２６  表示期間情報取得部
２２７  表示装置画質情報取得部
【図１】
2005235172.tif 000003
【図２】
2005235172.tif 000004
【図３】
2005235172.tif 000005
【図４】
2005235172.tif 000006
【図５】
2005235172.tif 000007
【図６】
2005235172.tif 000008
【図７】
2005235172.tif 000009
【図８】
2005235172.tif 000010
【図９】
2005235172.tif 000011
【図１０】
2005235172.tif 000012
【図１１】
2005235172.tif 000013
【図１２】
2005235172.tif 000014
【図１３】
2005235172.tif 000015
【図１４】
2005235172.tif 000016
【図１５】
2005235172.tif 000017
【図１６】
2005235172.tif 000018
【図１７】
2005235172.tif 000019
【図１８】
2005235172.tif 000020
【図１９】
2005235172.tif 000021
【図２０】
2005235172.tif 000022
【図２１】
2005235172.tif 000023
【図２２】
2005235172.tif 000024
【図２３】
2005235172.tif 000025
【図２４】
2005235172.tif 000026
【図２５】
2005235172.tif 000027