(57)【要約】【課題】フレーム落ちを低減して滑らかにベクタデータに基づく画像を再生できるようにする。【解決手段】中間描画サイズ決定部１０１は、１フレームを描画する為に許容される時間内にレンダリング部１０２が描画可能な最大の画像サイズを算出する。その画像サイズが、表示描画サイズ１１１より小さい場合、中間描画サイズ決定部１０１は、１フレームを描画する為に許容される時間内にレンダリング部１０２が描画可能な最大の画像サイズを、中間描画サイズ１１４として出力する。レンダリング部１０２は、ベクタデータ１１０を中間描画サイズ１１４でレンダリングして中間ラスタデータ１１６を生成する。スケーリング部１０３は、レンダリング部１０２で生成された中間ラスタデータ１１６を、表示描画サイズ１１１に拡大して最終ラスタデータ１０５を生成する。【選択図】図１
2008052595.tif 000002
【特許請求の範囲】
【請求項１】
ベクタデータを、表示描画サイズよりも小さな中間描画サイズでレンダリングして中間ラスタデータを生成する生成手段と、
前記生成手段により生成された中間ラスタデータを、表示描画サイズに拡大する拡大手段とを有することを特徴とする画像処理装置。
【請求項２】
前記ベクタデータと、前記ベクタデータのフレームレートとを用いて、前記中間描画サイズを決定する決定手段を有し、
前記生成手段は、前記ベクタデータを、前記決定手段により決定された中間描画サイズでレンダリングして中間ラスタデータを生成することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記決定手段は、１フレームの画像を描画する為に割り当てられた時間内に前記ベクタデータを前記生成手段がレンダリング可能なサイズを、前記中間描画サイズとして決定することを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記決定手段は、前記ベクタデータを、表示描画サイズよりも小さいサイズで仮レンダリングし、仮レンダリングした結果を用いて、前記中間描画サイズを決定することを特徴とする請求項２又は３に記載の画像処理装置。
【請求項５】
前記決定手段は、前記ベクタデータを、表示描画サイズよりも小さいサイズで仮レンダリングし、仮レンダリングした結果を用いて、前記生成手段が前記ベクタデータを表示描画サイズでレンダリング可能か否かを判断し、判断した結果に応じて前記中間描画サイズを決定することを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記決定手段は、一定時間毎に、又は前記ベクタデータにおける描画オブジェクトが変化した際に、前記中間描画サイズを再決定し、前記中間描画サイズを動的に変更することを特徴とする請求項２又は３に記載の画像処理装置。
【請求項７】
前記決定手段は、前記ベクタデータにおけるオブジェクトの数と、
前記ベクタデータにおけるオブジェクトの輪郭線とスキャンラインとが交わる位置に存在するエッジピクセルの数と、
前記ベクタデータにおけるオブジェクトの合成方法と、
前記ベクタデータにおけるオブジェクトの位置であって、半透明合成処理が行われる位置に存在する半透明合成ピクセルの数と、
前記ベクタデータにおけるオブジェクトであって、半透明合成処理が行われる半透明合成オブジェクトの数とのうち、少なくとも何れか１つを用いて、中間描画サイズを決定することを特徴とする請求項２〜６の何れか１項に記載の画像処理装置。
【請求項８】
ベクタデータを、表示描画サイズよりも小さな中間描画サイズでレンダリングして中間ラスタデータを生成する生成ステップと、
前記生成ステップにより生成された中間ラスタデータを、表示描画サイズに拡大する拡大ステップとを有することを特徴とする画像処理方法。
【請求項９】
前記ベクタデータと、前記ベクタデータのフレームレートとを用いて、前記中間描画サイズを決定する決定ステップを有し、
前記生成ステップは、前記ベクタデータを、前記決定ステップにより決定された中間描画サイズでレンダリングして中間ラスタデータを生成することを特徴とする請求項８に記載の画像処理方法。
【請求項１０】
前記決定ステップは、１フレームの画像を描画する為に割り当てられた時間内に前記ベクタデータを前記生成ステップがレンダリング可能なサイズを、前記中間描画サイズとして決定することを特徴とする請求項９に記載の画像処理方法。
【請求項１１】
前記決定ステップは、前記ベクタデータを、表示描画サイズよりも小さいサイズで仮レンダリングし、仮レンダリングした結果を用いて、前記中間描画サイズを決定することを特徴とする請求項９又は１０に記載の画像処理方法。
【請求項１２】
前記決定ステップは、前記ベクタデータを、表示描画サイズよりも小さいサイズで仮レンダリングし、仮レンダリングした結果を用いて、前記生成ステップが前記ベクタデータを表示描画サイズでレンダリング可能か否かを判断し、判断した結果に応じて前記中間描画サイズを決定することを特徴とする請求項１１に記載の画像処理方法。
【請求項１３】
前記決定ステップは、一定時間毎に、又は前記ベクタデータにおける描画オブジェクトが変化した際に、前記中間描画サイズを再決定し、前記中間描画サイズを動的に変更することを特徴とする請求項９又は１０に記載の画像処理方法。
【請求項１４】
前記決定ステップは、前記ベクタデータにおけるオブジェクトの数と、
前記ベクタデータにおけるオブジェクトの輪郭線とスキャンラインとが交わる位置に存在するエッジピクセルの数と、
前記ベクタデータにおけるオブジェクトの合成方法と、
前記ベクタデータにおけるオブジェクトの位置であって、半透明合成処理が行われる位置に存在する半透明合成ピクセルの数と、
前記ベクタデータにおけるオブジェクトであって、半透明合成処理が行われる半透明合成オブジェクトの数とのうち、少なくとも何れか１つを用いて、中間描画サイズを決定することを特徴とする請求項９〜１３の何れか１項に記載の画像処理方法。
【請求項１５】
ベクタデータを、表示描画サイズよりも小さな中間描画サイズでレンダリングして中間ラスタデータを生成する生成ステップと、
前記生成ステップにより生成された中間ラスタデータを、表示描画サイズに拡大する拡大ステップとをコンピュータに実行させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理方法、及びコンピュータプログラムに関し、特に、ベクタデータをレンダリングするために用いて好適なものである。
【背景技術】
【０００２】
ベクタデータ（vector data）のレンダリングするに際し、レンダリングする画像サイズが大きくなると、半透明合成部分のピクセル数やトラッキングするエッジピクセル数等が増加する。このため、レンダリング処理の処理時間が増大する。更に、ベクタデータの複雑さやオブジェクト数の増加によってもレンダリング処理の処理時間は増大する。
【０００３】
レンダリング処理に時間を要しても、プリンタにおいては、特許文献１のようにレンダリング処理の完了を待ってから印刷を始めたり、印刷方向からスキャンライン毎にレンダリングし、描画速度に合わせて印刷速度を遅らせたりする等することが可能である。
【０００４】
【特許文献１】特開平７−１０７２７２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、ベクタデータで構成されるアニメーションを再生する際には、レンダリングした画像を規定のフレームレートで連続的に出力する必要がある。このため、１フレーム当たりに許される時間内にレンダリングを完了できなかったフレームがアニメーション中に含まれる虞がある。そうすると、アニメーションの再生時にフレーム落ちを起こし、規定のフレームレートに従って連続的に画像を表示させることが出来なくなる。
【０００６】
本発明は、このような問題点に鑑みてなされたものであり、フレーム落ちを低減して滑らかにベクタデータに基づく画像を再生できるようにすることを目的とする。
【課題を解決するための手段】
【０００７】
本発明の画像処理装置は、ベクタデータを、表示描画サイズよりも小さな中間描画サイズでレンダリングして中間ラスタデータを生成する生成手段と、前記生成手段により生成された中間ラスタデータを、表示描画サイズに拡大する拡大手段とを有することを特徴とする。
【０００８】
本発明の画像処理方法は、ベクタデータを、表示描画サイズよりも小さな中間描画サイズでレンダリングして中間ラスタデータを生成する生成ステップと、前記生成ステップにより生成された中間ラスタデータを、表示描画サイズに拡大する拡大ステップとを有することを特徴とする。
【０００９】
本発明のコンピュータプログラムは、ベクタデータを、表示描画サイズよりも小さな中間描画サイズでレンダリングして中間ラスタデータを生成する生成ステップと、前記生成ステップにより生成された中間ラスタデータを、表示描画サイズに拡大する拡大ステップとをコンピュータに実行させることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、ベクタデータを、表示描画サイズよりも小さな中間描画サイズでレンダリングして中間ラスタデータを生成し、生成した中間ラスタデータを、表示描画サイズに拡大するようにした。従って、１フレームに割り当てられた時間内にベクタデータを表示描画サイズにレンダリングできない場合であっても、その時間内にベクタデータをレンダリングすることが可能になる。即ち、１フレームに割り当てられた時間内にベクタデータのレンダリングが終了していない状態になることを低減できる。これにより、フレーム落ちが生じてしまうことを低減でき、滑らかにベクタデータに基づく画像を再生することが可能になる。
【発明を実施するための最良の形態】
【００１１】
以下に、図面を参照しながら、本発明の一実施形態について説明する。
図１は、ベクタデータレンダリング装置の構成の一例を示す図である。
図１において、ベクタデータレンダリング装置１００は、中間描画サイズ決定部１０１と、レンダリング部１０２と、スケーリング部１０３と、最終ラスタデータ記憶部１０７と、表示データ取得部１０６と、表示制御部１０８とを有している。
【００１２】
ベクタデータレンダリング装置１００は、表示対象のベクタデータ１１０に基づく画像を表示描画サイズ１１１で形成し、規定のフレームレート１１２でアニメーション再生するための装置である。
【００１３】
表示データ取得部１０６は、ベクタデータ１１０、表示描画サイズ１１１、及びフレームレート１１２を、例えばベクタデータレンダリング装置１００に装着された記憶媒体から読み出す等して取得する。
【００１４】
ここでベクタデータ１１０は、アニメーションの１フレームに対応するオブジェクトであって、ベクタ形式で記述されたオブジェクトのリストを含む構成を有する。表示描画サイズ１１１は、アニメーションを出力する際の出力サイズを表す。フレームレート１１２は、表示対象であるオブジェクトの単位時間当たりの描画枚数を表す。
【００１５】
中間描画サイズ決定部１０１は、ベクタデータ１１０、表示描画サイズ１１１、及びフレームレート１１２を、表示データ取得部１０６から入力する。中間描画サイズ決定部１０１は、これらのデータに加え、レンダリング部１０２におけるレンダリング能力１１３を、レンダリング部１０２から入力する。ここで、レンダリング能力１１３には、レンダリング部１０２が単位時間にトラッキング可能なエッジピクセル数、レンダリング部１０２が単位時間に半透明合成可能なピクセル数、及びレンダリング部１０２がハードウエア内部に持つバッファの段数等が含まれる。
【００１６】
図２は、エッジピクセルと、オブジェクトと、スキャンラインとの関係の一例を示す図である。図２では、単一オブジェクトのレンダリング画像を例に挙げて示している。また、水平方向をスキャンライン（図２に向かって右向きの矢印）２０２としている。
図２に示すように、本実施形態では、オブジェクト２０１を構成するライン（輪郭線）と最初に交わるピクセル（グレーの部分）がエッジピクセル２００となる。
【００１７】
図３は、半透明合成ピクセルの一例を示す図である。図３では、複数オブジェクトのレンダリング画像を例に挙げて示している。
図３に示すように、本実施形態では、例えば、三角のオブジェクト３０１と円のオブジェクト３０２とを半透明合成した場合に、図３のグレーの部分３００が半透明合成ピクセルとなる。尚、２つのオブジェクト３０１、３０２のうち、上側になるオブジェクトが透明でない場合には、半透明合成を行わないようにする。この場合、図３に示すような半透明合成ピクセルは生じないことになる。
【００１８】
図１に説明を戻し、中間描画サイズ決定部１０１は、ベクタデータ１１０、表示描画サイズ１１１、及びフレームレート１１２と、レンダリング部１０２におけるレンダリング能力１１３とに基づいて、中間描画サイズ１１４を計算する。
【００１９】
即ち、中間描画サイズ決定部１０１は、１フレームを描画する為に許容される時間内でレンダリング部１０２がベクタデータ１１０をレンダリングした際に実現可能な最大の画像サイズを推定する。
【００２０】
具体的に中間描画サイズ決定部１０１は、ベクタデータ１１０を解析して、ベクタデータ１１０における描画オブジェクトの数をカウントする。そして、中間描画サイズ決定部１０１は、カウントした描画オブジェクトの数に基づいて、表示描画サイズ１１１よりも小さい任意のサイズでベクタデータ１１０を仮レンダリングする。この仮レンダリングは、ベクタデータ１１０におけるエッジピクセル数及び半透明合成ピクセル数等を求めるための処理である。このため、仮レンダリングでは、実際には行われる半透明合成等の処理を行わず、ベクタデータ１１０におけるエッジピクセル数及び半透明合成ピクセル数等が算出された段階で処理が終了する。
【００２１】
次に、中間描画サイズ決定部１０１は、仮レンダリングした結果から、エッジピクセル数及び半透明合成ピクセル数等をカウントする。そして、中間描画サイズ決定部１０１は、カウントしたエッジピクセル数及び半透明合成ピクセル数等を用いて、表示描画サイズ１１１でのエッジピクセル数及び半透明合成ピクセル数等を推定する。
【００２２】
本実施形態では、エッジピクセル数及び半透明合成ピクセル数等が、表示描画サイズ１１１に対して比例関係にあると仮定する。そして、仮レンダリングした結果からカウントしたエッジピクセル数及び半透明合成ピクセル数等を定数倍して表示描画サイズ１１１でのエッジピクセル数及び半透明合成ピクセル数等を近似的に求めるようにしている。
【００２３】
次に、中間描画サイズ決定部１０１は、１フレームを描画する為に許容される時間内に処理対象の画像をレンダリング部１０２が描画可能な最大の画像サイズを算出する。この画像サイズは、例えば、ベクタデータ１１０におけるオブジェクト数と、エッジピクセル数及び半透明合成ピクセル数と、レンダリング能力１１３とに基づいて算出される。
【００２４】
この様にして算出された画像サイズが、表示描画サイズ１１１以上である場合には、処理対象の画像を表示描画サイズ１１１で形成するための全ての処理を、レンダリング部１０２で行える。このため、中間描画サイズ決定部１０１は、中間描画サイズ１１４として表示描画サイズ１１１をレンダリング部１０２に出力する。
【００２５】
一方、算出された画像サイズが、表示描画サイズ１１１より小さい場合には、処理対象の画像を表示描画サイズ１１１で形成するための全ての処理を、レンダリング部１０２で行えない。そこで、中間描画サイズ決定部１０１は、１フレームを描画する為に許容される時間内に処理対象の画像をレンダリング部１０２が描画可能な最大の画像サイズを、中間描画サイズ１１４として出力する。
尚、本実施形態では、中間描画サイズ決定部１０１は、以上のような中間描画サイズ１１４を算出するための処理を、一定時間毎に行うようにしている。
【００２６】
レンダリング部１０２は、表示データ取得部１０６から入力したベクタデータ１１０を、中間描画サイズ決定部１０１から入力した中間描画サイズ１１４でレンダリングしてラスタライズし、中間ラスタデータ１１６を生成する。ここで、中間ラスタデータ１１６は表示描画サイズ１１１以下のサイズある。従って、中間ラスタデータ１１６の生成は、１フレームを描画する為にレンダリング部１０２に許容されている時間内に完了する。
【００２７】
スケーリング部１０３は、レンダリング部１０２で生成された中間ラスタデータ１１６を、表示描画サイズ１１１に拡大して最終ラスタデータ１０５を生成し、生成した最終ラスタデータ１０５を必要に応じて最終ラスタデータ記憶部１０７に記憶する。中間ラスタデータ１１６のサイズは表示描画サイズ１１１以下の値をとる。そこで、スケーリング部１０３により、中間ラスタデータ１１６を表示描画サイズ１１１に拡大する事で最終的な出力ラスタデータ（最終ラスタデータ１０５）を得るようにする。
【００２８】
尚、中間ラスタデータ１１６のサイズと表示描画サイズ１１１とが等しい場合には、スケーリング部１０３は、中間ラスタデータ１１６を拡大せず、入力された中間ラスタデータ１１６を最終ラスタデータ１０５として最終ラスタデータ記憶部１０７に記憶する。
【００２９】
以上の様にして生成された最終ラスタデータ１０５は、表示制御部１０８により、ＬＣＤ（Liquid Crystal Display）等のディスプレイを備えた表示装置１０４に出力される。そうすると、表示装置１０４は、最終ラスタデータ１０５を、規定のフレームレート１１２で連続表示する。これにより、ベクタデータ１１０に含まれるアニメーションが再生される。
【００３０】
次に、図４のフローチャートを参照しながら、中間描画サイズ決定部１０１の処理の一例を説明する。
まず、図４−１のステップＳ４０１において、中間描画サイズ決定部１０１は、ベクタデータ１１０、表示描画サイズ１１１、及びフレームレート１１２を、表示データ取得部１０６から入力まで待機する。ベクタデータ１１０、表示描画サイズ１１１、及びフレームレート１１２を、表示データ取得部１０６から入力すると、ステップＳ４０２に進む。
【００３１】
ステップＳ４０２に進むと、中間描画サイズ決定部１０１は、レンダリング部１０２におけるレンダリング能力１１３を、レンダリング部１０２から入力するまで待機する。レンダリング能力１１３を、レンダリング部１０２から入力すると、ステップＳ４０３に進む。
【００３２】
ステップＳ４０３に進むと、中間描画サイズ決定部１０１は、ステップＳ４０１で入力したベクタデータ１１０を解析し、解析した結果に基づいて、ベクタデータ１１０におけるオブジェクト数をカウントする。
【００３３】
次に、ステップＳ４０４において、中間描画サイズ決定部１０１は、ステップＳ４０３でカウントしたオブジェクト数に基づいて、ステップＳ４０１で入力したベクタデータ１１０を仮レンダリングする。前述したように、この仮レンダリングにより得られる画像サイズは、ステップＳ４０１で入力した表示描画サイズ１１１よりも小さい任意のサイズである。
【００３４】
次に、ステップＳ４０５において、中間描画サイズ決定部１０１は、ステップＳ４０４で行った仮レンダリングの結果に基づいて、エッジピクセル数をカウントする。
次に、ステップＳ４０６において、中間描画サイズ決定部１０１は、ステップＳ４０５でカウントしたエッジピクセル数を定数倍して、表示描画サイズ１１１でのエッジピクセル数を推定する。
【００３５】
次に、ステップＳ４０７において、中間描画サイズ決定部１０１は、ステップＳ４０４で行った仮レンダリングの結果に基づいて、半透明合成ピクセル数をカウントする。
次に、ステップＳ４０８において、中間描画サイズ決定部１０１は、ステップＳ４０７でカウントした半透明合成ピクセル数を定数倍して、表示描画サイズ１１１での半透明合成ピクセル数を推定する。
【００３６】
次に、図４−２のステップＳ４０９において、中間描画サイズ決定部１０１は、１フレームを描画する為に許容される時間内に処理対象の画像をレンダリング部１０２が描画可能な最大の画像サイズを算出する。この画像サイズは、例えば、ステップＳ４０３でカウントしたオブジェクト数と、ステップＳ４０６で推定したエッジピクセル数と、ステップＳ４０８で推定した半透明合成ピクセル数と、ステップＳ４０２で入力したレンダリング能力１１３とに基づき算出される。
【００３７】
次に、ステップＳ４１０において、中間描画サイズ決定部１０１は、ステップＳ４０９で算出した画像サイズが、ステップＳ４０１で入力した表示描画サイズ１１１以上であるか否かを判定する。この判定の結果、ステップＳ４０９で算出した画像サイズが、ステップＳ４０１で入力した表示描画サイズ１１１より小さい場合には、後述するステップＳ４１３に進む。
【００３８】
一方、ステップＳ４０９で算出した画像サイズが、ステップＳ４０１で入力した表示描画サイズ１１１以上である場合には、処理対象の画像を表示描画サイズ１１１で形成するための全ての処理をレンダリング部１０２で行えない。従って、ステップＳ４１１において、中間描画サイズ決定部１０１は、１フレームを描画する為に許容される時間内に処理対象の画像をレンダリング部１０２が描画可能な最大の画像サイズを、中間描画サイズ１１４としてレンダリング部１０２に出力する。
【００３９】
次に、ステップＳ４１２において、中間描画サイズ決定部１０１は、中間描画サイズ１１４を出力してから一定時間が経過するまで待機する。一定時間が経過すると、図４−１のステップＳ４０１に戻り、中間描画サイズ１１４を再度求める。
ステップＳ４１０での判定の結果、ステップＳ４０９で算出した画像サイズが、ステップＳ４０１で入力した表示描画サイズ１１１より小さい場合には、処理対象の画像を表示描画サイズ１１１で形成するための全ての処理をレンダリング部１０２で行える。従って、ステップＳ４１３において、中間描画サイズ決定部１０１は、ステップＳ４０１で入力した表示描画サイズ１１１を中間描画サイズ１１４としてレンダリング部１０２に出力する。
【００４０】
図５は、以上のような処理を行うベクタデータレンダリング装置１００におけるハードウエアの構成の一例を示す図である。
図５において、ＣＰＵ１０１０と、ＲＯＭ１０２０と、ＲＡＭ１０３０と、キーボード（ＫＢ）１０４０のキーボードコントローラ（ＫＢＣ）１０５０とが、システムバス１１３０に接続されている。また、表示部としてのＣＲＴディスプレイ（ＣＲＴ）１０６０のＣＲＴコントローラ（ＣＲＴＣ）１０７０が、システムバス１１３０に接続されている。そして、ハードディスク（ＨＤ）１０８０及びフレキシブルディスク（ＦＤ）１０９０のディスクコントローラ（ＤＫＣ）１１００も、システムバス１１３０に接続されている。さらに、ネットワーク１１１０との接続のためのネットワークインターフェースコントローラ（ＮＩＣ）１１２０も、システムバス１１３０に接続されている。
【００４１】
ＣＰＵ１０１０は、ＲＯＭ１０２０或いはＨＤ１０８０に記憶されたソフトウェア、或いはＦＤ１０９０より供給されるソフトウェアを実行することで、システムバス１１３０に接続された各構成部を総括的に制御する。
すなわち、ＣＰＵ１０１０は、所定の処理シーケンスに従った処理プログラムを、ＲＯＭ１０２０、或いはＨＤ１０８０、或いはＦＤ１０９０から読み出して実行することで、後述する動作を実現するための制御を行う。
【００４２】
ＲＡＭ１０３０は、ＣＰＵ１０１０の主メモリ或いはワークエリア等として機能する。
ＫＢＣ１０５０は、ＫＢ１０４０や図示していないポインティングデバイス等からの指示入力を制御する。
【００４３】
ＣＲＴＣ１０７０は、ＣＲＴ１０６０の表示を制御する。
ＤＫＣ１１００は、ブートプログラム、種々のアプリケーション、編集ファイル、ユーザファイル、ネットワーク管理プログラム、及び本実施形態における所定の処理プログラム等を記憶するＨＤ１０８０及びＦＤ１０９０とのアクセスを制御する。
ＮＩＣ１１２０は、ネットワーク１１１０上の装置或いはシステムと双方向にデータをやりとりする。
【００４４】
以上のように本実施形態では、レンダリング部１０２とスケーリング部１０３の２つの画像形成手段を設け、これらレンダリング部１０２とスケーリング部１０３の処理割合を中間描画サイズ決定部１０１で調整するようにした。従って、レンダリング処理時間の高いベクタデータに対してはスケーリング部１０３の処理割合を高めて画像を形成することで、１フレームの画像を形成するために許容される時間内に画像を形成することができ、フレーム落ちを防止できる。
【００４５】
より具体的に説明すると、本実施形態では、中間描画サイズ決定部１０１は、１フレームを描画する為に許容される時間内にレンダリング部１０２が描画可能な最大の画像サイズを算出する。その画像サイズが、表示描画サイズ１１１より小さい場合、中間描画サイズ決定部１０１は、１フレームを描画する為に許容される時間内にレンダリング部１０２が描画可能な最大の画像サイズを、中間描画サイズ１１４として出力する。レンダリング部１０２は、ベクタデータ１１０を中間描画サイズ１１４でレンダリングして中間ラスタデータ１１６を生成する。スケーリング部１０３は、レンダリング部１０２で生成された中間ラスタデータ１１６を、表示描画サイズ１１１に拡大して最終ラスタデータ１０５を生成する。
【００４６】
以上のようにすることによって、レンダリング部１０２は、１フレームを描画する為に許容されている時間内に中間ラスタデータ１１６の生成を完了できる。そして、スケーリング部１０３における中間ラスタデータ１１６の拡大処理はレンダリングに比べて計算量が一般に小さく、並列化が可能である。従って、ハードウエア化による高速処理が可能となる。
【００４７】
以上のことから、ベクタデータ１１０がベクタデータレンダリング装置１００に入力されてから最終ラスタデータ１０５が出力されるまでの時間を、１フレームを描画する為に許容される規定の時間内に収めるように調整できる。従って、１フレームを描画する為に許容される時間内にレンダリング部１０２（レンダラ）が描画を完了できない場合にも、フレーム落ちを防止しながらアニメーションを再生できる。
【００４８】
更に、中間描画サイズ１１４を一定時間毎に算出するようにした。ベクタデータ１１０をレンダリングするための処理時間は、半透明合成ピクセル数、エッジピクセル数、ベクタデータ１１０の複雑さ・オブジェクト数等によってフレーム毎に変動する。従って、中間描画サイズ１１４を一定時間毎に算出（更新）することにより、ベクタデータ１１０をレンダリングするための処理時間が変動しても、１フレームを描画する為に許容される規定の時間内に、各フレームの画像を出来るだけ確実に形成できる。従って、フレーム落ちをより確実に防止できる。
【００４９】
尚、本実施形態では、中間描画サイズ１１４を一定時間毎に算出するようにした。しかしながら、必ずしもこのようにする必要はない。例えば、ベクタデータ１１０における描画オブジェクトの構成が変化したか否かを中間描画サイズ１１４が判定し、ベクタデータ１１０における描画オブジェクトの構成が変化した場合に、中間描画サイズ１１４を算出するようにしてもよい。このようにすれば、ベクタデータ１１０をレンダリングするための処理時間が変動しても、１フレームを描画する為に許容される規定の時間内に、各フレームの画像をより一層確実に形成できる。尚、このようにする場合には、例えば、図４−２のステップＳ４１２を省略し、ステップＳ４０１の後に、ステップＳ４０１で入力したベクタデータ１１０における描画オブジェクトの構成が変化したか否かを判定すればよい。そして、ステップＳ４０１で入力したベクタデータ１１０における描画オブジェクトの構成が変化した場合には、ステップＳ４０２以降の処理を行い、そうでない場合には、ステップＳ４０１に戻るようにすればよい。
【００５０】
また、本実施形態では、中間描画サイズ決定部１０１は、レンダリング部１０２におけるレンダリング能力１１３を、レンダリング部１０２から入力するようにしたが、必ずしもこのようにする必要はない。例えば、レンダリング部１０２におけるレンダリング能力１１３を中間描画サイズ決定部１０１に予め登録しておいてもよい。
【００５１】
また、本実施形態では、１フレームを描画する為に許容される時間内に処理対象の画像をレンダリング部１０２が描画可能な最大の画像サイズと、表示描画サイズ１１１とを比較するようにした。しかしながら、必ずしもこのようにする必要はない。例えば、ベクタデータ１１０におけるオブジェクト数と、前述したようにして推定したエッジピクセル数及び半透明合成ピクセル数との合計が、レンダリング能力１１３により示される値以上であるか否かを判定するようにしてもよい。
【００５２】
このようにする場合、図４−２のステップＳ４０９の代わりに、ステップＳ４０１で入力したベクタデータ１１０におけるオブジェクト数と、ステップＳ４０６、Ｓ４０８で推定したエッジピクセル数及び半透明合成ピクセル数との合計を求める。そして、ステップＳ４１０の代わりに、オブジェクト数と、エッジピクセル数及び半透明合成ピクセル数との合計が、レンダリング能力１１３以上であるか否かを判定する。この判定の結果、オブジェクト数と、エッジピクセル数及び半透明合成ピクセル数との合計が、レンダリング能力１１３を上回っている場合には、ステップＳ４１１に進み、そうでない場合には、ステップＳ４１３に進む。
【００５３】
また、本実施形態では、仮レンダリングの結果から、エッジピクセル数及び半透明合成ピクセル数を求めた。そして、これらエッジピクセル数及び半透明合成ピクセル数と、ベクタデータ１１０におけるオブジェクト数とに基づいて、中間描画サイズ１１４を決定した（ステップＳ４０４〜Ｓ４１１、Ｓ４１３）。しかしながら、中間描画サイズ１１４を求めるための元となる情報は、これらに限定されない。例えば、半透明合成が行われるオブジェクトの数を考慮に入れてもよい。一方、半透明合成を行う必要がない画像では、半透明合成ピクセル数や半透明合成が行われるオブジェクトの数を考慮する必要はない。また、レンダリング部１０２がハードウエア内部に持つバッファの段数を考慮してもよい。更に、ベクタデータ１１０に含まれる画像フォーマットの種類を考慮してもよい。この他、オブジェクトの合成方法（合成オペレーション種類）を考慮してもよい。
【００５４】
（本発明の他の実施形態）
前述した実施形態の機能を実現するべく各種のデバイスを動作させるように、該各種デバイスと接続された装置あるいはシステム内のコンピュータに対し、前記実施形態の機能を実現するためのソフトウェアのプログラムコードを供給してもよい。そのシステムあるいは装置のコンピュータ（ＣＰＵあるいはＭＰＵ）に格納されたプログラムに従って前記各種デバイスを動作させることによって実施したものも、本発明の範疇に含まれる。
【００５５】
また、この場合、前記ソフトウェアのプログラムコード自体が前述した実施形態の機能を実現することになる。また、そのプログラムコード自体、及びそのプログラムコードをコンピュータに供給するための手段、例えば、かかるプログラムコードを格納した記録媒体は本発明を構成する。かかるプログラムコードを記憶する記録媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。
【００５６】
また、コンピュータが供給されたプログラムコードを実行することにより、前述の実施形態の機能が実現されるだけでない。そのプログラムコードがコンピュータにおいて稼働しているオペレーティングシステムあるいは他のアプリケーションソフト等と共同して前述の実施形態の機能が実現される場合にもかかるプログラムコードは本発明の実施形態に含まれることは言うまでもない。
【００５７】
さらに、供給されたプログラムコードがコンピュータの機能拡張ボードに備わるメモリに格納された後、そのプログラムコードの指示に基づいてその機能拡張ボードに備わるＣＰＵが実際の処理の一部または全部を行う。その処理によって前述した実施形態の機能が実現される場合にも本発明に含まれることは言うまでもない。
また、供給されたプログラムコードがコンピュータに接続された機能拡張ユニットに備わるメモリに格納された後、そのプログラムコードの指示に基づいて機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行う。その処理によって前述した実施形態の機能が実現される場合にも本発明に含まれることは言うまでもない。
【００５８】
尚、前述した各実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【図面の簡単な説明】
【００５９】
【図１】本発明の実施形態を示し、ベクタデータレンダリング装置の構成の一例を示す図である。
【図２】本発明の実施形態を示し、エッジピクセルと、オブジェクトと、スキャンラインとの関係の一例を示す図である。
【図３】本発明の実施形態を示し、半透明合成ピクセルの一例を示す図である。
【図４−１】本発明の実施形態を示し、中間描画サイズ決定部１０１の処理の一例を説明するフローチャートである。
【図４−２】本発明の実施形態を示し、図４−１に続くフローチャートである。
【図５】本発明の実施形態を示し、ベクタデータレンダリング装置におけるハードウエアの構成の一例を示す図である。
【符号の説明】
【００６０】
１００  ベクタデータレンダリング装置
１０１  中間描画サイズ決定部
１０２  レンダリング部
１０３  スケーリング部
１０４  表示装置
１０５  最終ラスタデータ
１０７  最終ラスタデータ記憶部
１０８  表示制御部
１１０  ベクタデータ
１１１  表示描画サイズ
１１２  フレームレート
１１３  レンダリング能力
１１４  中間描画サイズ
１１６  中間ラスタデータ
【図１】
2008052595.tif 000003
【図２】
2008052595.tif 000004
【図３】
2008052595.tif 000005
【図４−１】
2008052595.tif 000006
【図４−２】
2008052595.tif 000007
【図５】
2008052595.tif 000008