(57)【特許請求の範囲】
【請求項１】
三次元描画を行う画像処理システムにおいて、
時系列的に記述された一連の命令によって画像処理の手順が規定され、当該時系列的な記述中に外部情報を取得するためのジャンプ命令を含むディスプレイリストを発行する上位装置と、
三次元図形を規定する頂点情報をパラメータとした三次元描画用の命令が前記ディスプレイリストと同一の記述形式で記述された三次元描画コマンドリストを、前記外部情報として格納する第１のメモリと、
前記上位装置に接続された第１のバスと、
前記第１のメモリに接続され、前記第１のバスとは異なる第２のバスと、
前記上位装置によって発行された前記ディスプレイリストを順次解析し、当該解析結果に基づいて、命令を順次出力するディスプレイリスト解析部と、
前記ディスプレイリスト解析部から順次出力された命令に従って、三次元描画を含む処理を行う画像処理部とを有し、
前記ディスプレイリスト解析部は、
前記ディスプレイリストにおける前記ジャンプ命令が記述されたジャンプ部分で、前記第１のメモリから読み出された前記三次元描画コマンドリストを前記第２のバスを介して取得し、当該取得した三次元描画コマンドリストを前記ディスプレイリストの一部とみなして解析することを特徴とする画像処理システム。
【請求項２】
前記第１のバスに接続され、前記上位装置によって発行された前記ディスプレイリストを格納する第２のメモリをさらに有し、
前記ディスプレイリスト解析部は、前記ディスプレイリストを前記第２のメモリより取得するとともに、前記三次元描画コマンドリストを前記第２のメモリに格納することなく前記第１のメモリより直接取得することを特徴とする請求項１に記載された画像処理システム。
【請求項３】
前記ジャンプ命令は、取得すべき前記三次元描画コマンドリストの指定を含み、
前記ディスプレイリスト解析部は、
前記ジャンプ命令によって指定された前記三次元描画コマンドリストを前記第１のメモリより取得することを特徴とする請求項１または２に記載された画像処理システム。
【請求項４】
前記ジャンプ命令は、取得すべき前記三次元描画コマンドリストのデータサイズを含み、
前記ディスプレイリスト解析部は、
前記ディスプレイリストを順次解析して前記ジャンプ部分に到達した場合、前記ディスプレイリストの解析を中断して、前記第１のメモリからの前記三次元描画コマンドリストの取得を開始し、
前記第１のメモリから取得したデータ量が前記ジャンプ命令によって指定された前記データサイズに到達した場合、前記ディスプレイリストにおける前記ジャンプ部分以降の解析を再開することを特徴とする請求項１から３のいずれかに記載された画像処理システム。
【請求項５】
前記画像処理部は、三次元描画以外に、二次元描画も行い、
前記第１のメモリは、前記三次元描画コマンドリスト以外に、前記二次元描画を行う際に用いられる二次元画像データを格納することを特徴とする請求項１から４のいずれかに記載された画像処理システム。
【請求項６】
三次元描画を行う画像処理方法において、
上位装置が、時系列的に記述された一連の命令によって画像処理の手順が規定され、当該時系列的な記述中に外部情報を取得するためのジャンプ命令を含むディスプレイリストを発行する第１のステップと、
ディスプレイリスト解析部が、前記ディスプレイリストを、前記上位装置に接続された第１のバスを介して取得する第２のステップと、
前記ディスプレイリスト解析部が、前記ディスプレイリストを順次解析するとともに、前記ディスプレイリストにおける前記ジャンプ命令が記述されたジャンプ部分で、三次元図形を規定する頂点情報をパラメータとした三次元描画用の命令が前記ディスプレイリストと同一の記述形式で記述された三次元描画コマンドリストを前記外部情報として格納する第１のメモリから、前記第１のメモリに接続され前記第１のバスとは異なる第２のバスを介して取得し、当該取得した三次元描画コマンドリストを前記ディスプレイリストの一部とみなして解析し、当該解析結果に基づいて、命令を順次出力する第３のステップと、
画像処理部が、前記順次出力された命令に従って、三次元描画を含む処理を行う第４のステップと
を有することを特徴とする画像処理方法。
【請求項７】
前記ジャンプ命令は、取得すべき前記三次元描画コマンドリストの指定を含み、
前記第３のステップは、
前記ジャンプ命令によって指定された前記三次元描画コマンドリストを取得するステップを有することを特徴とする請求項６に記載された画像処理方法。
【請求項８】
前記ジャンプ命令は、取得すべき前記三次元描画コマンドリストのデータサイズを含み、
前記第３のステップは、
前記ディスプレイリストを順次解析して前記ジャンプ部分に到達した場合、前記ディスプレイリストの解析を中断して、前記三次元描画コマンドリストの取得を開始するステップと、
前記取得したデータ量が前記ジャンプ命令によって指定された前記データサイズに到達した場合、前記ディスプレイリストにおける前記ジャンプ部分以降の解析を再開するステップとを有することを特徴とする請求項６または７に記載された画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、上位装置によって発行されたディスプレイリストに基づいて、三次元描画を行う画像処理システムおよび画像処理方法に関する。
【背景技術】
【０００２】
例えば、特許文献１には、上位装置であるＣＰＵ（Central Processing Unit）によって発行されたディスプレイリストに基づいて、転送元メモリに格納された素材（オブジェクト）を用いた描画処理を行う画像プロセッサが開示されている。この画像プロセッサは、それぞれ別個のバスを介して、ＣＰＵおよび転送元メモリに接続されている。この画像プロセッサにおいて、転送回路は、ＣＰＵによって発行された一連の転送命令に従って、転送元メモリに格納された圧縮形式または非圧縮形式の素材を読み出し、これを内部の転送先メモリに書き込む。描画回路は、転送先メモリから素材を読み出し、これを用いた描画処理を行うことによって、出力すべき表示画像を生成する。また、特許文献２には、上位のプロセッサ（ホストＣＰＵ）によって生成された一連の命令（コマンド）を一時的に格納するＦＩＦＯメモリを備えた画像プロセッサが開示されている。ＦＩＦＯメモリに格納された命令は、このＦＩＦＯメモリに書き込まれた順序（入力順序）で時系列的に古いものから読み出され、これに応じた描画処理が順次実行される。
【０００３】
【特許文献１】特許第３９７０２９１号公報
【特許文献２】特開２００１−２９１０９８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、三次元描画では三次元図形を規定する頂点情報（三次元座標等）が必要になるが、その情報量は図形が複雑になるほど多くなる。ディスプレイリストに頂点情報を記述する場合、すなわち、描画命令のパラメータとして頂点情報を規定する場合、ディスプレイリストのデータサイズが飛躍的に増大し、リスト転送時の帯域によっては、単位フレームあたりに描画可能な図形の量が制限されてくる。この制限は、ディスプレイリストから頂点情報を切り離し、ディスプレイリストの転送系とは別バス化されたメモリに頂点情報そのものを格納しておくことで一応解消できる。しかしながら、この場合には、切り離された頂点情報から描画命令を新たに生成し、この生成された描画命令と、ディスプレイリストに記述された命令とを統合するための内部回路が必要となり、回路規模の増大や複雑化を招く。
【０００５】
そこで、本発明の目的は、三次元描画の際に用いられるディスプレイリストのサイズの増大を抑制しつつ、ディスプレイリスト解析系の回路規模の増大や複雑化を抑制することである。
【課題を解決するための手段】
【０００６】
かかる課題を解決すべく、第１の発明は、上位装置と、第１のメモリと、第１および第２のバスと、ディスプレイリスト解析部と、画像処理部とを有し、三次元描画を行う画像処理システムを提供する。上位装置は、時系列的に記述された一連の命令によって画像処理の手順が規定され、この時系列的な記述中に外部情報を取得するためのジャンプ命令を含むディスプレイリストを発行する。第１のメモリは、三次元図形を規定する頂点情報をパラメータとした三次元描画用の命令がディスプレイリストと同一の記述形式で記述された三次元描画コマンドリストを、外部情報として格納する。第１のバスは、上位装置に接続されており、第１のバスと異なる第２のバスは、第１のメモリに接続されている。ディスプレイリスト解析部は、ＣＰＵによって発行されたディスプレイリストを順次解析し、この解析結果に基づいて、命令を順次出力する。画像処理部は、ディスプレイリスト解析部から順次出力された命令に従って、三次元描画を含む処理を行う。ここで、ディスプレイリスト解析部は、ディスプレイリストにおけるジャンプ命令が記述されたジャンプ部分で、第１のメモリから読み出された三次元描画コマンドリストを第２のバスを介して取得し、この取得した三次元描画コマンドリストをディスプレイリストの一部とみなして解析する。
【０００７】
ここで、第１の発明において、第１のバスに接続され、上位装置によって発行されたディスプレイリストを格納する第２のメモリをさらに設けてもよい。この場合、ディスプレイリスト解析部は、ディスプレイリストを第２のメモリより取得するとともに、三次元描画コマンドリストを第２のメモリに格納することなく第１のメモリより直接取得することが好ましい。
【０００８】
第１の発明において、ジャンプ命令は、取得すべき三次元描画コマンドリストの指定を含んでいてもよい。この場合、ディスプレイリスト解析部は、ジャンプ命令によって指定された三次元描画コマンドリストを第１のメモリより取得することが好ましい。
【０００９】
第１の発明において、ジャンプ命令は、取得すべき三次元描画コマンドリストのデータサイズを含んでいてもよい。ここで、ディスプレイリスト解析部は、ディスプレイリストを順次解析してジャンプ部分に到達した場合、ディスプレイリストの解析を中断して、第１のメモリからの三次元描画コマンドリストの取得を開始することが好ましい。また、ディスプレイリスト解析部は、第１のメモリから取得したデータ量がジャンプ命令によって指定されたデータサイズに到達した場合、ディスプレイリストにおけるジャンプ部分以降の解析を再開することが好ましい。
【００１０】
第１の発明において、画像処理部は、三次元描画以外に、二次元描画も行ってもよい。この場合、第１のメモリは、三次元描画コマンドリスト以外に、二次元描画を行う際に用いられる二次元画像データを格納することが好ましい。
【００１１】
第２の発明は、三次元描画を行う画像処理方法を提供する。この画像処理方法は、上位装置が、時系列的に記述された一連の命令によって画像処理の手順が規定され、この時系列的な記述中に外部情報を取得するためのジャンプ命令を含むディスプレイリストを発行する第１のステップと、ディスプレイリスト解析部が、ディスプレイリストを、上位装置に接続された第１のバスを介して取得する第２のステップと、ディスプレイリスト解析部が、ディスプレイリストを順次解析するとともに、ディスプレイリストにおけるジャンプ命令が記述されたジャンプ部分で、三次元図形を規定する頂点情報をパラメータとした三次元描画用の命令がディスプレイリストと同一の記述形式で記述された三次元描画コマンドリストを外部情報として格納する第１のメモリから、第１のメモリに接続され第１のバスとは異なる第２のバスを介して取得し、この取得した三次元描画コマンドリストをディスプレイリストの一部とみなして解析し、この解析結果に基づいて、命令を順次出力する第３のステップと、画像処理部が、順次出力された命令に従って、三次元描画を含む処理を行う第４のステップとを有する。
【００１２】
ここで、第２の発明において、ジャンプ命令は、取得すべき三次元描画コマンドリストの指定を含んでいてもよい。この場合、第３のステップは、ジャンプ命令によって指定された三次元描画コマンドリストを取得するステップを有することが好ましい。
【００１３】
第２の発明において、ジャンプ命令は、取得すべき三次元描画コマンドリストのデータサイズを含んでいてもよい。ここで、第３のステップは、ディスプレイリストを順次解析してジャンプ部分に到達した場合、ディスプレイリストの解析を中断して、三次元描画コマンドリストの取得を開始するステップと、取得したデータ量がジャンプ命令によって指定されたデータサイズに到達した場合、ディスプレイリストにおけるジャンプ部分以降の解析を再開するステップとを有することが好ましい。
【発明の効果】
【００１４】
第１または第２の発明によれば、三次元図形を規定する頂点情報をディスプレイリストと切り離し、これをディスプレイリストとは別個のバスにて供給する。この頂点情報は、単なるデータの羅列ではなく、ディスプレイリストと同一の記述形式を有する三次元描画コマンドリストとして管理されており、ジャンプ命令によってディスプレイリストと紐付けられ、ディスプレイリストの記述体系の一部として組み込まれる。これにより、ディスプレイリストの解析系は、ディスプレイリストと三次元描画コマンドリストとを区別することなく取り扱うことができ、頂点情報から描画命令を生成するための回路を設ける不要がなくなる。その結果、三次元図形が複雑になっても、ディスプレイリスト自体のサイズの増大を有効に抑制できるとともに、ディスプレイリスト解析系における回路規模の増大や複雑化を有効に抑制できる。
【発明を実施するための最良の形態】
【００１５】
図１は、本実施形態に係る画像処理システムの全体的なブロック図である。この画像処理システムは、ＣＰＵ１と、メインメモリ２と、ＣＧＲＯＭ３と、画像プロセッサ４と、表示装置５とを主体に構成されている。
【００１６】
上位装置であるＣＰＵ１は、画像プロセッサ４に実行させるべきディスプレイリスト６を発行する。このディスプレイリスト６は、時系列的に記述された一連の命令によって画像処理の手順が規定されている。このディスプレイリスト６が従来のそれと異なる点は、それ単独で処理手順を完全に規定するのではなく、これ以外の外部情報と連携することによって、はじめて完全なものになる点である。このような連携を可能にすべく、ディスプレイリスト６に記述可能な命令として、ジャンプ命令が新規に追加されている。ディスプレイリスト６にジャンプ命令を記述することにより、このジャンプ命令が記述されたジャンプ部分で、外部情報が参照される。ＣＰＵ１からＣＰＵバス７に出力されたディスプレイリスト６は、メインメモリ２を介して間接的に、或いは、直接的に画像プロセッサ４に供給される。なお、ディスプレイリスト６は、例えば１フレーム毎といった如く、ＣＰＵ１によって随時更新される。
【００１７】
メインメモリ２は、ＣＰＵ１と同様、ＣＰＵバス７に接続されており、ＣＰＵ１の指定に応じてディスプレイリスト６を格納・保持する。一方、固定データを格納するＣＧＲＯＭ３は、一例としてＮＡＮＤ型フラッシュメモリによって構成されており、ＣＰＵバス７とは異なるＣＧバス８に接続されている。このＣＧＲＯＭ３に格納される固定データとしては、画像プロセッサ４が二次元描画を行う際に用いられる二次元画像データ９（以下、「２Ｄ素材９」という）や、三次元描画を行う際に用いられる三次元描画コマンドリスト１０（以下、「３Ｄコマンドリスト１０」という）が挙げられる。ここで、２D素材９は、圧縮形式または非圧縮形式で多数存在し、ディスプレイリスト６の指定に応じてＣＧＲＯＭ３から読み出されたものがＣＧバス８を介して画像プロセッサ４に取り込まれる。
【００１８】
一方、３Ｄコマンドリスト１０は、上述したディスプレイリスト６が参照する外部情報に相当し、三次元図形を規定する頂点情報をパラメータとした三次元描画用の命令（以下、「「３Ｄ描画命令」という）がディスプレイリスト６と同一の記述形式で記述されている。一般に、三次元描画を行うためには、三次元図形を規定する頂点情報（三次元座標等）が必要になるが、その情報量は図形が複雑になるほど飛躍的に増大する。そこで、情報量が膨大になりがちな頂点情報については、ディスプレイリスト６より切り離して管理し、ディスプレイリスト６のサイズ増大を抑制する。また、頂点情報は、図形固有のデータなので変更しないでも使えるという性質を有する。このような特性に鑑み、頂点情報を可変データ（ＣＰＵ１によって随時更新されるデータ）ではなく固定データ（ＣＰＵ１によって随時更新されないデータ）として扱う。なお、頂点情報をディスプレイリスト化する理由は、画像プロセッサ４に内蔵されたディスプレイリスト解析系の回路規模の増大や複雑化を抑制するためである。この３Ｄコマンドリスト１０は、複数存在してもよく、ディスプレイリスト６の指定に応じてＣＧＲＯＭ３から読み出されたものがＣＧバス８を介して画像プロセッサ４に取り込まれる。
【００１９】
画像プロセッサ４は、ディスプレイリスト解析部４ａと、画像処理部４ｂと、ＲＡＭ４ｃと、各種インターフェイス４ｄ〜４ｆとを主体に構成されている。ディスプレイリスト解析部４ａは、ＣＰＵ１によって発行されたディスプレイリスト６を取得するとともに、取得したディスプレイリスト６の記述内容を順次解析する。そして、この解析結果に基づいて、画像処理部４ｂに命令が順次出力される。その際、ディスプレイリスト解析部４ａは、ディスプレイリスト６におけるジャンプ命令が記述されたジャンプ部分で、３Ｄコマンドリスト１０を取得し、取得した３Ｄコマンドリスト１０をディスプレイリスト６の一部とみなして解析する。ここで、ディスプレイリスト解析部４ａがディスプレイリスト６を取得する経路は２つ存在し、ＣＰＵ１によるモード指定によって、いずれかの取得経路が選択される。ただし、モードの実行中は経路の切り替えが禁止されている。
【００２０】
図２は、第１のモードにおけるディスプレイリスト取得経路を示す図である。ディスプレイリスト６は、プログラムの内容に応じて、ＣＰＵ１によってメインメモリ２に構築・格納される。ディスプレイリスト解析部４ａは、図１に示したＣＰＵバスインターフェイス４ｄの制御下で、メインメモリ２に格納されたディスプレイリスト６をＣＰＵバス７を介して取得するとともに、取得したディスプレイリスト６の記述内容を解析する。この解析結果に応じて、ディスプレイリスト解析部４ａは、図１に示したＣＧバスインターフェイス４ｅの制御下で、ＣＧＲＯＭ３に格納された３Ｄコマンドリスト１０をＣＧバス８を介して取得する。これにより、ディスプレイリスト６はメインメモリ２より取得され、３Ｄコマンドリスト１０はメインメモリ２への格納を経ることなく、ＣＧＲＯＭ３より直接取得されることになる。ここで留意すべきは、ディスプレイリスト６および３Ｄコマンドリスト１０の取得経路が別バス化されている点である。このようなバスの帯域分散を図ることによって、頂点情報量の増大に起因して、単位フレームあたりに描画可能な図形の量に制限が生じることを有効に抑制できる。
【００２１】
図３は、第２のモードにおけるディスプレイリスト取得経路を示す図である。この場合、ＣＰＵ１によって発行されたディスプレイリスト６は、ＣＰＵバス７を介して画像プロセッサ４内に取り込まれ、図１に示したＣＰＵバスインターフェイス４ｄおよびＲＡＭインターフェイス４ｆを経て、内部のＲＡＭ４ｃに格納される。そして、ディスプレイリスト解析部４ａは、ＲＡＭ４ｃに格納されたディスプレイリスト６を取得するとともに、取得したディスプレイリスト６の記述内容を解析する。この解析結果に応じて、ディスプレイリスト解析部４ａは、図１に示したＣＧバスインターフェイス４ｅの制御下で、ＣＧＲＯＭ３に格納された３Ｄコマンドリスト１０をＣＧバス８を介して取得する。
【００２２】
図４は、ディスプレイリスト解析部４ａのブロック図である。ディスプレイリスト解析部４ａは、解析回路４ｇと、バス制御回路４ｈとを有する。解析回路４ｇは、上述した図２または図３の経路のいずれかによって取得したディスプレイリスト６を時系列的な記述に即した処理順序（例えば、リストの上から下に向かって１ラインずつ）で順次解析する。そして、処理対象となるラインに記述された命令が通常の命令（非ジャンプ命令）の場合、この命令が画像処理部４ｂに出力される。この通常命令には、ＣＧＲＯＭ３に格納された２Ｄ素材９をＲＡＭ４ｃに転送する手順を規定する２Ｄ転送命令と、ＲＡＭ４ｃに格納された２Ｄ素材９を用いた描画手順を規定する２Ｄ描画命令とが存在する。一方、処理対象となるラインに記述された命令がジャンプ命令の場合、このジャンプ命令が記述されたジャンプ部分で、ディスプレイリスト６の解析を一旦中断する。そして、ジャンプ命令によって指定された３Ｄコマンドリスト１０の指定アドレス（ＣＧＲＯＭ３の格納アドレス）およびそのデータサイズとともに、開始トリガがバス制御回路４ｈに出力される。３Ｄコマンドリスト１０の指定をジャンプ命令で行うことによって、３Ｄコマンドリスト１０の選択に関する柔軟性を確保できる。また、データサイズは、指定アドレスを基準としたどこまでの範囲内のデータが３Ｄコマンドリスト１０に該当するのかを特定するために用いられる。
【００２３】
バス制御回路４ｈは、解析回路４ｇから出力された指定アドレスからデータサイズ相当に至るまでの範囲内のデータ、すなわち、３Ｄコマンドリスト１０をＣＧバスインターフェイス４ｅより取得し、解析回路４ｇに転送する。これを受けた解析回路４ｇは、３Ｄコマンドリスト１０のデータサイズに到達するまで、バス制御回路４ｈからの３Ｄコマンドリスト１０をディスプレイリスト６の一部とみなして解析を続け、その各ラインに記述された命令を画像処理部４ｂに順次出力する。そして、データサイズに到達した時点で、中断していたディスプレイリスト６のジャンブ部分以降の解析が再開される。
【００２４】
図１に示したように、画像処理部４ｂは、ディスプレイリスト解析部４ａから順次出力された命令に応じた処理を行う。具体的には、ディスプレイリスト解析部４ａからの命令が２Ｄ転送命令の場合、この転送命令によって指定された２Ｄ素材９がＲＡＭ４ｃに転送される。また、２Ｄ描画命令の場合、この描画命令によって指定された２Ｄ素材９がＲＡＭインターフェイス４ｆを介して読み出され、描画命令に応じた二次元描画が行われた後、ＲＡＭ４ｃ内に構築されたフレームバッファに画像が書き込まれる。さらに、３Ｄ描画命令の場合、この描画命令に応じた三次元描画、例えば三角形ストリップによる多角形ポリゴンの生成等が行われた後、フレームバッファに画像が書き込まれる。フレームバッファに格納された表示画像は、ＲＡＭインターフェイス４ｆを介して表示装置５に出力され、これによって、表示装置５に画像が表示される。
【００２５】
つぎに、ディスプレイリスト解析の一例を図５に示したフローチャートを参照しつつ具体的に説明する。ここでは、特に、３Ｄコマンドリスト１０へのジャンプ部分と、トライアングル描画部分に注目して説明する。
【００２６】
まず、ディスプレイリスト６の記述内容が解析され、ステップ１の描画領域設定（SETAREA）、ステップ２の光源設定（SETLIGHT）、ステップ３の座標変換設定（SETMATRIX）、ステップ４の描画エフェクト設定（SETEFFECT）が順次出力される。
【００２７】
そして、ステップ５において、図６に示すジャンプ命令（JUMPCGB）が記述されたジャンプ部分に到達した場合、指定アドレスからのデータバスに変更される。このジャンプ命令（JUMPCGB）は、ＣＧバス８上に存在する３Ｄコマンドリスト１０へのジャンプと、データサイズによるディスプレイリスト６への復帰とを指示する命令である。ここで、「CGBADR」は、ＣＧバス８上の３Ｄコマンドリスト１０の開始点を設定するパラメータであり、「CGBDTSZ」は、ＣＧバス８上の３Ｄコマンドリスト１０のデータサイズを設定するパラメータである。
【００２８】
ステップ５のジャンプ命令（JUMPCGB）によって、３Ｄコマンドリスト１０がコールされ、テクスチャ設定（SETTEXTURE）が出力された後（ステップ６）、図７に示すトライアングル描画（TRIANGLE3D）が出力される（ステップ７）。このトライアングル描画（TRIANGLE3D）は、三次元空間に三角形ポリゴンを描画する命令である。ここで、「CL」は背面カリングの有無、「TX」はテクスチャマッピングの有無、「FS」はポリゴン描画方法（三角形ポリゴン描画、三角形ファン描画、三角形リスト描画等）「TRINUM」は三角形の数ｎをそれぞれ設定するパラメータである。また、（ＴＸn，ＴＹn，ＴＺn）は頂点の法線ベクトル、（ＮＸn，ＮＹn，ＮＺn）は頂点の法線ベクトル、MTRXCE0n〜MTRXCE3nはマトリクスブレンディング係数、MTRXID0n〜MTRXID3Nはマトリクスブレンディングインデックス、（ＴＵn，ＴＶn）はテクスチャ座標、（ＴＶＣ_Ａn，ＴＶＣ_Ｒn，ＴＶＣ_Ｇn，ＴＶＣ_Ｂn）は頂点カラーをそれぞれ設定するパラメータである。ここで、添字ｎが付されたパラメータは、三次元図形を規定する頂点情報に相当し、描画すべき三次元図形が複雑になるほど記述量も増大する。したがって、ディスプレイリスト６と切り離して、３Ｄコマンドリスト１０として管理することが有効である。
【００２９】
そして、上述したデータサイズ相当のデータ量を取得し、その解析が終了した時点でディスプレイリスト６に復帰する。これによって、光源設定（SETLIGHT）、座標変換設定（SETMATRIX）、描画エフェクト設定（SETEFFECT）が順次出力される（ステップ８〜１０）。
【００３０】
ステップ１１のジャンプ命令（JUMPCGB）によって、３Ｄコマンドリスト１０がコールされ、テクスチャ設定（SETTEXTURE）が出力された後（ステップ１２）、図８に示す頂点インデックス登録（SET3DVTXIDX）が出力される（ステップ１３）。この頂点インデックス登録（SET3DVTXIDX）は、３Ｄトライアングルまたは３Ｄライン描画でインデックス頂点を用いる場合の頂点情報を登録する命令である。ここで、「VTXIDXST」は登録インデックス開始位置、「VTXIDXED」は登録インデックス終了位置をそれぞれ設定するパラメータであり、それ以外はトライアングル描画（TRIANGLE3D）のパラメータと同じである。この命令に関しても、トライアングル描画（TRIANGLE3D）と同様、描画すべき三次元図形が複雑になるほど記述量も増大するので、ディスプレイリスト６と切り離して、３Ｄコマンドリスト１０として管理することが有効である。
【００３１】
そして、ステップ１４において、図９に示す頂点インデックスによるトライアングル描画（TRIANGLE3D_idx）が出力される。このトライアングル描画（TRIANGLE3D_idx）は、３D空間に頂点インデックスを使用した三角形を描画する命令である。ここで、「ＶＴＸＩＤn」は頂点インデックス番号を整数で設定するパラメータであり、それ以外はトライアングル描画（TRIANGLE3D）のパラメータと同じである。この命令に関しても、描画すべき三次元図形が複雑になるほど記述量も増大するので、ディスプレイリスト６と切り離して、３Ｄコマンドリスト１０として管理することが有効である。そして、上述したデータサイズ相当のデータ量を取得し、その解析が終了した時点でディスプレイリスト６に復帰し、ジャンブ部分以降の解析が再開される。
【００３２】
このように、本実施形態によれば、三次元図形を規定する頂点情報をディスプレイリスト６と切り離して３Ｄコマンドリスト１０として管理し、これをディスプレイリスト６とは別個のＣＧバス８にて供給する。この頂点情報は、単なるデータの羅列ではなく、ディスプレイリスト６と同一の記述形式を有する３Ｄコマンドリスト１０として管理されている。そして、この３Ｄコマンドリスト１０は、ジャンプ命令によってディスプレイリスト６と紐付けられており、ディスプレイリスト６の記述体系の一部として組み込まれる。これにより、ディスプレイリスト解析部２ａは、解析処理を行う上で、ディスプレイリスト６と３Ｄコマンドリスト１０とを区別することなく取り扱うことができる。それとともに、頂点情報から描画命令を生成するディスプレイリスト生成回路のようなものを設ける必要もない。その結果、三次元図形が複雑化しても、ディスプレイリスト６自体のサイズの増大を有効に抑制でき、ＣＧバス８の転送帯域の制約を緩和することができる。それとともに、ディスプレイリスト解析部４ａにおける回路規模の増大や複雑化を有効に抑制することができる。
【００３３】
また、３Ｄコマンドリスト１０をディスプレイリスト６と切り離すことで、これを３Ｄ描画用以外のただのサブルーチンとしても流用することができる。また、サブルーチン生成もディスプレイリスト生成を流用できるので、コンテンツ作りの段階で、頂点データを生成するためのルーチンを新たに作成する必要がなくなるといった効果もある。
【００３４】
また、本実施形態によれば、２Ｄ素材９および３Ｄコマンドリスト１０をＣＧＲＯＭ３に共通して格納・保持することによって、３Ｄコマンドリスト１０を格納するためのデバイスを別個に設ける必要がない。これにより、画像処理システムのコストを有効に低減することができる。
【図面の簡単な説明】
【００３５】
【図１】画像処理システムの全体的なブロック図
【図２】第１のモードにおけるディスプレイリスト取得経路を示す図
【図３】第２のモードにおけるディスプレイリスト取得経路を示す図
【図４】ディスプレイリスト解析部のブロック図
【図５】ディスプレイリスト解析の一例を示すフローチャート
【図６】ディスプレイリストのジャンプ命令の記述例を示す図
【図７】３Dコマンドリストの記述例を示す図
【図８】３Dコマンドリストの記述例を示す図
【図９】３Dコマンドリストの記述例を示す図
【符号の説明】
【００３６】
１  ＣＰＵ
２  メインメモリ
３  ＣＧＲＯＭ
４  画像プロセッサ
５  表示装置
６  ディスプレイリスト
７  ＣＰＵバス
８  ＣＧバス
９  二次元画像データ（２Ｄ素材）
１０  三次元描画コマンドリスト（３Ｄコマンドリスト）
４ａ  ディスプレイリスト解析部
４ｂ  画像処理部
４ｃ  ＲＡＭ
４ｄ  ＣＰＵバスインターフェイス
４ｅ  ＣＧバスインターフェイス
４ｆ  ＲＡＭインターフェイス
４ｇ  解析回路
４ｈ  バス制御回路
【図１】
0004692579.tif 000002
【図２】
0004692579.tif 000003
【図３】
0004692579.tif 000004
【図４】
0004692579.tif 000005
【図５】
0004692579.tif 000006
【図６】
0004692579.tif 000007
【図７】
0004692579.tif 000008
【図８】
0004692579.tif 000009
【図９】
0004692579.tif 000010