首页 / 专利库 / 电脑图像 / 图形处理单元 / Device and method for image information generation, processor and method for image information processing, and recording medium

Device and method for image information generation, processor and method for image information processing, and recording medium

阅读:445发布:2022-07-07

专利汇可以提供Device and method for image information generation, processor and method for image information processing, and recording medium专利检索,专利查询,专利分析的服务。并且PURPOSE: To shorten the instruction word length and reduce the consumption of the capacity of a source video memory. CONSTITUTION: This system is provided with a main memory 53 which stores three-dimensional image data read out of a CD-ROM disk, a frame buffer 63 which stores characteristic data specified by polygons, a GTE(geometry transfer engine) 61 which converts the three-dimensional image data into two-dimensional image information by performing perspective conversion processing, a CPU 51 which synthesizs the two-dimensional image information and the information specifying the characteristics of the polygons to generate drawing instructions made into packets for every polygon, a GPU(graphics processing unit) 62 which draws the two-dimensional image information on the frame buffer 63 on the basis of the characteristic data specified by the drawing instructions, and a video output means 65 which reads the two-dimensional image data out of the frame buffer 63 in synchronism with a television synchronizing signal and supplies it to a display means such as a display device.,下面是Device and method for image information generation, processor and method for image information processing, and recording medium专利的具体信息内容。

【特許請求の範囲】
  • 【請求項1】 複数のポリゴンからなる3次元画像データを記憶する第1の記憶手段と、 各ポリゴン毎に指定される特性データを記憶する第2の記憶手段と、 上記3次元画像データに透視変換を施して、表示画面に対応する2次元画像情報に変換する変換手段と、 上記ポリゴンの特性を指定する情報と上記2次元画像情報とを合成して、ポリゴン毎にパケット化された描画命令を生成する描画命令生成手段とを有してなることを特徴とする画像情報生成装置。
  • 【請求項2】 上記第2の記憶手段は各ポリゴン毎に指定される色情報テーブルを記憶し、 上記描画命令生成手段は、上記色情報テーブルを指定する情報と上記2次元画像情報とを合成して、ポリゴン毎にパケット化された描画命令を生成することを特徴とする請求項1記載の画像情報生成装置。
  • 【請求項3】 各ポリゴンに貼り付けるテクスチャパターン情報を記憶する第3の記憶手段をさらに有し、 上記描画命令生成手段は、上記色情報テーブルを指定する情報と上記テクスチャパターン情報を指定する情報と上記2次元画像情報とを合成して、ポリゴン毎にパケット化された描画命令を生成することを特徴とする請求項2記載の画像情報生成装置。
  • 【請求項4】 上記第2の記憶手段は各ポリゴン毎に指定される半透明率指定データを記憶し、 上記描画命令生成手段は、上記半透明率指定データと上記2次元画像情報とを合成して、ポリゴン毎にパケット化された描画命令を生成することを特徴とする請求項1
    記載の画像情報生成装置。
  • 【請求項5】 上記半透明率は、モードに応じて複数種類決められていることを特徴とする請求項4記載の画像情報生成装置。
  • 【請求項6】 複数のポリゴンからなる3次元画像データを記憶し、 各ポリゴン毎に指定される特性データを記憶し、 上記3次元画像データに透視変換を施して、表示画面に対応する2次元画像情報に変換し、 上記ポリゴンの特性を指定する情報と上記2次元画像情報とを合成して、ポリゴン毎にパケット化された描画命令を生成することを特徴とする画像情報生成方法。
  • 【請求項7】 各ポリゴン毎に指定される特性データとして各ポリゴン毎に指定される色情報テーブルを記憶し、 上記色情報テーブルを指定する情報と上記2次元画像情報とを合成して、ポリゴン毎にパケット化された描画命令を生成することを特徴とする請求項6記載の画像情報生成方法。
  • 【請求項8】 各ポリゴンに貼り付けるテクスチャパターン情報をさらに記憶し、 上記色情報テーブルを指定する情報と上記テクスチャパターン情報を指定する情報と上記2次元画像情報とを合成して、ポリゴン毎にパケット化された描画命令を生成することを特徴とする請求項7記載の画像情報生成方法。
  • 【請求項9】 各ポリゴン毎に指定される特性データとして各ポリゴン毎に指定される半透明率指定データを記憶し、 上記半透明率指定データと上記2次元画像情報とを合成して、ポリゴン毎にパケット化された描画命令を生成することを特徴とする請求項6記載の画像情報生成方法。
  • 【請求項10】 上記半透明率は、モードに応じて複数種類決められていることを特徴とする請求項9記載の画像情報生成方法。
  • 【請求項11】 複数のポリゴンからなる3次元画像データを記憶する第1の記憶手段と、 各ポリゴン毎に指定される特性データを記憶する第2の記憶手段と、 上記3次元画像データに透視変換を施して、表示画面に対応する2次元画像情報に変換する変換手段と、 上記ポリゴンの特性を指定する情報と上記2次元画像情報とを合成して、ポリゴン毎にパケット化された描画命令を生成する描画命令生成手段と、 当該生成された描画命令により指定された特性データに基づき2次元画像を画像メモリに描画する描画手段と、 当該画像メモリから2次元画像データをテレビジョン同期信号に同期して読み出し、表示手段に供給する供給手段とを有してなることを特徴とする画像情報処理装置。
  • 【請求項12】 上記第2の記憶手段は各ポリゴン毎に指定される色情報テーブルを記憶し、 上記描画命令生成手段は、上記色情報テーブルを指定する情報と上記2次元画像情報とを合成して、ポリゴン毎にパケット化された描画命令を生成し、 上記描画手段は、当該生成された描画命令により指定された色情報テーブルに基づき2次元画像を画像メモリに描画することを特徴とする請求項11記載の画像情報処理装置。
  • 【請求項13】 各ポリゴンに貼り付けるテクスチャパターン情報を記憶する第3の記憶手段をさらに有し、 上記描画命令生成手段は、上記色情報テーブルを指定する情報と上記テクスチャパターン情報を指定する情報と上記2次元画像情報とを合成して、ポリゴン毎にパケット化された描画命令を生成することを特徴とする請求項12記載の画像情報処理装置。
  • 【請求項14】 上記第2の記憶手段は各ポリゴン毎に指定される半透明率指定データを記憶し、 上記描画命令生成手段は、上記半透明率指定データと上記2次元画像情報とを合成して、ポリゴン毎にパケット化された描画命令を生成し、 上記描画手段は、当該生成された描画命令により指定される半透明率に基づいて、先に描画されたポリゴンの画素データと次に描画されるポリゴンの画素データとを混合して2次元画像を画像メモリに描画することを特徴とする請求項11記載の画像情報処理装置。
  • 【請求項15】 上記半透明率は、モードに応じて複数種類決められていることを特徴とする請求項14記載の画像情報処理装置。
  • 【請求項16】 複数のポリゴンからなる3次元画像データを記憶し、 各ポリゴン毎に指定される特性データを記憶し、 上記3次元画像データに透視変換を施して、表示画面に対応する2次元画像情報に変換し、 上記ポリゴンの特性を指定する情報と上記2次元画像情報とを合成して、ポリゴン毎にパケット化された描画命令を生成し、 当該生成された描画命令により指定された特性データに基づき2次元画像を画像メモリに描画し、 当該画像メモリから2次元画像データをテレビジョン同期信号に同期して読み出し、表示手段に供給することを特徴とする画像情報処理方法。
  • 【請求項17】 各ポリゴン毎に指定される特性データとして各ポリゴン毎に指定される色情報テーブルを記憶し、 上記色情報テーブルを指定する情報と上記2次元画像情報とを合成して、ポリゴン毎にパケット化された描画命令を生成し、 当該生成された描画命令により指定された色情報テーブルに基づき2次元画像を画像メモリに描画することを特徴とする請求項16記載の画像情報処理方法。
  • 【請求項18】 各ポリゴンに貼り付けるテクスチャパターン情報をさらに記憶有し、 上記色情報テーブルを指定する情報と上記テクスチャパターン情報を指定する情報と上記2次元画像情報とを合成して、ポリゴン毎にパケット化された描画命令を生成することを特徴とする請求項17記載の画像情報処理方法。
  • 【請求項19】 各ポリゴン毎に指定される特性データとして各ポリゴン毎に指定される半透明率指定データを記憶し、 上記半透明率指定データと上記2次元画像情報とを合成して、ポリゴン毎にパケット化された描画命令を生成し、 当該生成された描画命令により指定される半透明率に基づいて、先に描画されたポリゴンの画素データと次に描画されるポリゴンデータとを混合して2次元画像を画像メモリに描画することを特徴とする請求項16記載の画像情報処理方法。
  • 【請求項20】 上記半透明率は、モードに応じて複数種類決められていることを特徴とする請求項19記載の画像情報処理方法。
  • 【請求項21】 複数のポリゴンからなる3次元画像データ、及び各ポリゴン毎に指定される特性データを、ポリゴン単位でパケット化して記録してなることを特徴とする記録媒体。
  • 【請求項22】 各ポリゴン毎に色情報テーブル指定情報をさらに記録してなることを特徴とする請求項21記載の記録媒体。
  • 【請求項23】 各ポリゴン毎に指定される半透明率指定データをさらに記録してなることを特徴とする請求項21記載の記録媒体。
  • 说明书全文

    【発明の詳細な説明】

    【0001】

    【発明の属する技術分野】本発明は、情報処理により画像情報を作成する画像情報生成装置及び方法、画像情報処理装置及び方法、並びに画像情報が記録された記録媒体に関する。

    【0002】

    【従来の技術】例えば、家庭用ゲーム機やパーソナルコンピュータ装置或いはグラフィックコンピュータ装置等において、テレビジョン受像機やモニタ受像機或いはC
    RTディスプレイ装置等に出されて表示される画像は2次元のものが殆どであり、基本的には2次元の平面的な背景に2次元のキャラクタ等を適宜に配置して移動させたり、変化させたりするような形態で画像表示が行われている。

    【0003】しかしながら、上述したような2次元的な画像表示や映像では、表現できる背景及びキャラクタやそれらの動きに制限があり、例えばゲームの臨場感を高めることが困難である。

    【0004】そこで、例えば次に示すような方法で疑似的な3次元の画像や映像を作成することが行われている。 すなわち、上記キャラクタとしていくつかの方向から見た画像を用意しておき、表示画面中での視点の変化等に応じてこれらの複数画像の内から1つを選択して表示したり、2次元の画像を奥行き方向に重ねて疑似的な3次元画像を表現したりするような方法が挙げられる。
    また、画像データを生成或いは作成する際に、いわゆるテクスチャ(生地、地模様)の画像を多面体等の所望の面に貼り付けるようなテクスチャマッピング方法や、画像の色データをいわゆるカラールックアップテーブルを通して変換することにより表示色を変化させる手法が採られている。

    【0005】ここで、従来の家庭用ゲーム機の概略的な構成の一例を図44に示す。 この図44において、マイクロプロセッサ等から成るCPU391は、入力パッドやジョイスティック等の入力デバイス394の操作情報をインターフェイス393を介し、メインバス399を通して取り出す。 この操作情報の取り出しと同時に、メインメモリ392に記憶されている3次元画像のデータがビデオプロセッサ396によってソースビデオメモリ395に転送され、記憶される。

    【0006】また、上記CPU391は、上記ソースビデオメモリ395に記憶された画像を重ね合わせて表示するための画像データの読み出し順位を上記ビデオプロセッサ396に送る。 上記ビデオプロセッサ396は上記画像データの読み出し順位に従って上記ソースビデオメモリ395から画像データを読み出し、画像を重ね合わせて表示する。

    【0007】上述のように画像を表示すると同時に、上記取り出された操作情報中の音声情報により、オーディオプロセッサ397はオーディオメモリ398内に記憶されている上記表示される画像に応じた音声データを出力する。

    【0008】図45は、図44に示す構成をもつ家庭用ゲーム機において、2次元画像のデータを用いて3次元画像を出力する手順を示す図である。 この図45では、
    市松模様の背景画像上に円筒状の物体を3次元画像として表示する場合を説明する。

    【0009】この図45のソースビデオメモリ395には、市松模様の背景画像200と、この背景画像200
    上の円筒状の物体の深さ方向の断面を表す矩形の画像、
    いわゆるスプライト201、202、203、204のデータが記憶されている。 なお、三形以上の多角形をポリゴンと呼び、特に四角形のポリゴンをスプライトと呼んでいる。 この矩形の画像であるスプライト201、
    202、203、204上の円筒の断面の画像以外の部分は透明色で描かれている。

    【0010】ビデオプロセッサ396内のシンクジェネレータ400は、表示する画像の同期信号に合わせた読み出しアドレス信号を発生する。 また、このシンクジェネレータ400は、上記読み出しアドレス信号をメインバス399を介して図44のCPU391から与えられた読み出しアドレステーブル401に送る。 さらに、このシンクジェネレータ400は上記読み出しアドレステーブル401からの情報に従って上記ソースビデオメモリ395内の画像データを読み出す。

    【0011】上記読み出された画像データは、上記CP
    U391により上記メインバス399を介して与えられたプライオリティテーブル402内の画像の重ね合わせ順位に基づいて、重ね合わせ処理部403で順次重ね合わせられる。 この場合には、上記背景画像200が最も順位が低く、矩形の画像201、202、203、20
    4と順に順位が高くなっているため、背景画像200から順次画像が重ね合わせられる。

    【0012】次に、透明色処理部404において、円筒以外の部分を背景画像で表示するために上記重ね合わせられた円筒の断面の画像201、202、203、20
    4により表示される円筒以外の部分を透明にする処理を施す。

    【0013】上述した処理により、円筒状の物体の2次元画像のデータが図45に示す3次元画像VD0 の画像データとして出力される。

    【0014】

    【発明が解決しようとする課題】ところで、テクスチャマッピングやカラールックアップテーブルによる色指定や、前に表示されていた画像の画素データ(例えばR,
    G,Bの3原色データからなるデータ、以下も同じ)と次に描画しようとする画像の画素データとを所定の比率αで混合することにより半透明処理を行う場合の当該半透明処理の指定、さらに、色の境界にノイズを乗せてぼかすディザ処理のオン/オフの指定等を行う場合、CP
    U391はこれらのための描画命令を出力するが、複数のテクスチャやカラールックアップテーブルの指定や、
    半透明処理の指定、ディザ処理の指定等のための命令語長は長くなり、また、ソースビデオメモリ395内に保持されるデータ量も多くなる。

    【0015】なお、例えば上述の装置において、半透明処理は前記ビデオプロセッサ396の透明処理部404
    にて行われ、この透明処理部404では上記CPU39
    1から供給される混合比率αのデータに基づいて、前の画素データとこれから描画しようとする画素データとを所定の混合比率αで混合することにより上記半透明処理を行う。 この場合、従来の半透明処理では、混合比率α
    の値は、描画命令が有しており、それに基づいて例えばソースビデオメモリ395に画素毎に蓄えられるようになされている。 このため、混合比率を細かく設定しようとすると、混合比率αの値を表すビット数が大きくなり、描画命令のデータ量が大きくなると共に、ソースビデオメモリ395内の容量を消費してしまう。

    【0016】そこで、本発明は、命令語長を短縮できると共に、ソースビデオメモリの消費量も減らすことができる画像情報を生成することができる画像情報生成装置及び方法、画像情報処理装置及び方法、並びに画像情報が記録された記録媒体を提供するものである。

    【0017】

    【課題を解決するための手段】本発明の画像情報生成装置及び方法においては、複数のポリゴンからなる3次元画像データを記憶し、各ポリゴン毎に指定される特性データを記憶し、3次元画像データに透視変換を施して表示画面に対応する2次元画像情報に変換し、ポリゴンの特性を指定するための情報と2次元画像情報とを合成してポリゴン毎にパケット化された描画命令を生成することにより、上述の課題を解決する。

    【0018】また、本発明の画像情報処理装置及び方法においては、複数のポリゴンからなる3次元画像データを記憶し、各ポリゴン毎に指定される特性データを記憶し、3次元画像データに透視変換を施して表示画面に対応する2次元画像情報に変換し、ポリゴンの特性を指定するための情報と2次元画像情報とを合成して、ポリゴン毎にパケット化された描画命令を生成し、当該生成された描画命令により指定された特性データに基づき2次元画像を画像メモリに描画し、画像メモリから2次元画像データをテレビジョン同期信号に同期して読み出し表示手段に供給することにより、上述の課題を解決する。

    【0019】さらに、本発明の記録媒体においては、複数のポリゴンからなる3次元画像データ及び各ポリゴン毎に指定される特性データを、ポリゴン単位でパケット化して記録してなることにより、上述の課題を解決する。

    【0020】すなわち、本発明によれば、ポリゴンの特性を指定する情報と2次元画像情報とを合成してポリゴン毎にパケット化された描画命令を生成することにより、命令語長を短縮している。

    【0021】

    【発明の実施の形態】以下、本発明の好ましい実施の形態について、図面を参照しながら説明する。

    【0022】先ず、本発明の画像情報生成方法及び画像情報処理方法により生成された画像データを用いて3次元グラフィックスデータを生成して表示するような画像処理システムについて説明する。 本構成例の画像処理システムは、例えば家庭用ゲーム機やパーソナルコンピュータ装置或いはグラフィックコンピュータ装置等に適用されるものであり、図1の例では家庭用ゲーム機に適用した例を示している。

    【0023】本構成例の画像処理システムは、後述する本発明の画像データフォーマットのデータが記録されている本発明の記録媒体である例えば光学ディスク(例えばCD−ROMのディスク等)からデータ(例えばゲームプログラム等)を読み出して実行することにより、使用者からの指示に応じた表示(例えばゲーム等)が行えるようになっており、具体的には図1に示すような構成を有している。

    【0024】また、本構成例の画像処理システムは、C
    D−ROMのディスクから読み出された3次元画像データを記憶するメインメモリ53と、各ポリゴン毎に指定される特性データとして色情報テーブル,テクスチャパターン情報,半透明率指定データ等を記憶するフレームバッファ63と、CD−ROMのディスクから読み出された3次元画像データに対して透視変換処理を施して2
    次元画像情報に変換する座標変換手段としてのジオメトリトランスファエンジン(GTE)61と、当該2次元画像情報とポリゴンの特性を指定する情報とを合成してポリゴン毎にパケット化された描画命令を生成する描画命令生成手段としてのCPU51と、当該生成された描画命令により指定された特性データに基づき2次元画像情報をフレームバッファ63に描画するグラフィックスプロセッシングユニット(GPU62)と、上記フレームバッファ63から2次元画像データをテレビジョン同期信号に同期して読み出し、ディスプレイ装置等の表示手段に供給するビデオ出力手段65とを有してなるものである。

    【0025】すなわち、この画像処理システムは、中央演算処理装置(CPU51)及びその周辺装置(周辺デバイスコントローラ52等)からなる制御系50と、フレームバッファ63上に描画を行うグラフィックスプロセッシングユニット(GPU62)等からなるグラフィックシステム60と、楽音、効果音等を発生するサウンドプロセッシングユニット(SPU71)等からなるサウンドシステム70と、補助記憶装置である光学ディスク(CD−ROMのディスク)ドライブ81の制御や再生情報のデコード等を行う光学ディスク制御部80と、
    使用者からの指示を入力するコントローラ92からの指示入力及びゲームの設定等を記憶する補助メモリ(メモリカード93)からの入出力を制御する通信制御部90
    と、上記制御系50から通信制御部90までが接続されているメインバスB等を備えている。

    【0026】上記制御系50は、CPU51と、割り込み制御、タイムコントロール、メモリコントロール、ダイレクトメモリアクセス(DMA)転送の制御等を行う周辺デバイスコントローラ52と、例えば2メガバイトのRAMからなる主記憶装置(メインメモリ)53と、
    このメインメモリ53や上記グラフィックシステム6
    0,サウンドシステム70等の管理を行ういわゆるオペレーティングシステム等のプログラムが格納された例えば512キロバイトのROM54とを備えている。

    【0027】CPU51は、例えば32ビットのRIS
    C(reduced instruction set computor)CPUであり、
    ROM54に記憶されているオペレーティングシステムを実行することにより装置全体の制御を行う。 当該CP
    U51は命令キャッシュとスクラッチパッドメモリを搭載し、実メモリの管理も行う。

    【0028】上記グラフィックシステム60は、CD−
    ROMから読み込まれたデータを一時記憶するメインメモリ53と、当該メインメモリ53に記憶されたデータに対して座標変換等の処理を行う座標計算用コプロセッサからなるジオメトリトランスファエンジン(GTE)
    61と、CPU51からの描画指示(描画命令)に基づいて描画を行うグラフィックスプロセッシングユニット(GPU)62と、該GPU62により描画された画像を記憶する例えば1メガバイトのフレームバッファ63
    と、いわゆる離散コサイン変換などの直行変換がなされ圧縮されて符号化された画像データを復号化する画像デコーダ(以下MDECと呼ぶ)64とを備えている。

    【0029】GTE61は、例えば複数の演算を並列に実行する並列演算機構を備え、CPU51のコプロセッサとして、CPU51からの演算要求に応じて透視変換等の座標変換、法線ベクトルと光源ベクトルとの内積演算による光源計算、例えば固定小数点形式の行列やベクトルの演算を高速に行うことができるようになっている。

    【0030】具体的には、このGTE61は、1つの三角形状のポリゴンに同じ色で描画するフラットシェーディングを行う演算の場合では、1秒間に最大150万程度のポリゴンの座標演算を行うことができるようになっており、これによってこの画像処理システムでは、CP
    U51の負荷を低減すると共に、高速な座標演算を行うことができるようになっている。 なお、ポリゴンとは、
    ディスプレイ上に表示される3次元の物体を構成するための図形の最小単位であり、三角形や四角形等の多角形からなるものである。

    【0031】GPU62は、CPU51からのポリゴン描画命令に従って動作し、フレームバッファ63に対して多角形(ポリゴン)等の描画を行う。 このGPU62
    は、1秒間に最大36万程度のポリゴンの描画を行うことができるようになっている。 また、このGPU62
    は、CPU51とは独立した2次元のアドレス空間を持ち、そこにフレームバッファ63がマッピングされるようになっている。

    【0032】フレームバッファ63は、いわゆるデュアルポートRAMからなり、GPU62からの描画あるいはメインメモリ53からの転送と、表示のための読み出しとを同時に行うことができるようになっている。

    【0033】このフレームバッファ63は、例えば1メガバイトの容量を有し、それぞれ16ビットの横102
    4で縦512の画素のマトリックスとして扱われる。

    【0034】このフレームバッファ63のうちの任意の表示領域を例えばディスプレイ装置等のビデオ出力手段65に出力することができるようになっている。

    【0035】また、このフレームバッファ63には、ビデオ出力として出力される表示領域の他に、GPU62
    がポリゴン等の描画を行う際に参照するカラールックアップテーブル(CLUT)が記憶される第2の領域であるCLUT領域と、描画時に座標変換されてGPU62
    によって描画されるポリゴン等の中に挿入(マッピング)される素材(テクスチャ)が記憶される第1の記憶領域であるテクスチャ領域サツが設けられている。 これらのCLUT領域とテクスチャ領域は表示領域の変更等に従って動的に変更されるようになっている。 すなわち、
    このフレームバッファ63は、表示中の領域に対して描画アクセスを実行することができ、また、メインメモリ53との間で高速DMA転送を行うことも可能となっている。

    【0036】なお、上記GPU62は、上述のフラットシェーディングの他にポリゴンの頂点の色から補間してポリゴン内の色を決めるグーローシェーディングと、上記テクスチャ領域に記憶されているテクスチャをポリゴンに張り付けるテクスチャマッピングを行うことができるようになっている。

    【0037】これらのグーローシェーディング又はテクスチャマッピングを行う場合には、上記GTE61は、
    1秒間に最大50万程度のポリゴンの座標演算を行うことができる。

    【0038】MDEC64は、上記CPU51からの制御により、CD−ROMのディスクから読み出されてメインメモリ53に記憶されている静止画あるいは動画の画像データを復号化して再びメインメモリ53に記憶する。 具体的には、MDEC64は逆離散コサイン変換(逆DCT)演算を高速に実行でき、CD−ROMディスクから読み出されたカラー静止画圧縮標準(いわゆるJPEG)や蓄積メディア系動画像符号化標準(いわゆるMPEG、但し本構成例ではフレーム内圧縮のみ)の圧縮データの伸張を行うことができるようになっている。

    【0039】また、この再生された画像データは、GP
    U62を介してフレームバッファ63に記憶することにより、上述のGPU62によって描画される画像の背景として使用することができるようにもなっている。

    【0040】上記サウンドシステム70は、CPU51
    からの指示に基づいて、楽音、効果音等を発生するサウンド再生処理プロセッサ(SPU)71と、CD−RO
    Mディスクから読み出された音声,楽音等のデータや音源データ等が記憶される例えば512キロバイトのサウンドバッファ72と、SPU71によって発生される楽音、効果音等を出力するサウンド出力手段としてのスピーカ73とを備えている。

    【0041】上記SPU71は、16ビットの音声データを4ビットの差分信号として適応差分符号化(ADP
    CM)された音声データを再生するADPCM復号機能と、サウンドバッファ72に記憶されている音源データを再生することにより、効果音等を発生する再生機能と、サウンドバッファ72に記憶されている音声データ等を変調させて再生する変調機能等を備えている。 すなわち、当該SPU71は、ルーピングや時間を系数とした動作パラメータの自動変更などの機能を持つADPC
    M音源24ボイスを内蔵し、CPU51からの操作により動作する。 また、SPU71は、サウンドバッファ7
    2がマッピングされた独自のアドレス空間を管理し、C
    PU51からサウンドバッファ72にADPCMデータを転送し、キーオン/キーオフやモジュレーション情報を直接渡すことによりデータを再生する。

    【0042】このような機能を備えることによって、このサウンドシステム70は、CPU51からの指示によってサウンドバッファ72に記録された音声データ等に基づいて楽音、効果音等を発生するいわゆるサンプリング音源として使用することができるようになっている。

    【0043】上記光学ディスク制御部80は、CD−R
    OMのディスクである光学ディスクに記録されたプログラム、データ等を再生するディスクドライブ装置81
    と、例えばエラー訂正(ECC)符号が付加されて記録されているプログラム、データ等を復号するデコーダ8
    2と、ディスクドライブ装置81からの再生データを一時的に記憶する例えば32キロバイトのバッファ83とを備えている。 すなわち、当該光学ディスク制御部80
    は、上記ドライブ装置81やデコーダ82等のディスクの読み出しを行うために必要な部品類から構成されている。 ここでは、ディスクフォーマットとして例えばCD
    −DA、CD−ROM XA等のデータをサポートできるようになっている。 なお、デコーダ82はサウンドシステム70の一部も構成している。

    【0044】また、ディスクドライブ装置81で再生されるディスクに記録されている音声データとしては、上述のADPCMデータ(CD−ROM XAのADPC
    Mデータ等)の他に音声信号をアナログ/デジタル変換したいわゆるPCMデータがある。

    【0045】ADPCMデータとして、例えば16ビットのデジタルデータの差分を4ビットで表わして記録されている音声データは、デコーダ82で誤り訂正と復号化がなされた後、上述のSPU71に供給され、SPU
    71でデジタル/アナログ変換等の処理が施された後、
    スピーカ73を駆動するために使用される。

    【0046】また、PCMデータとして、例えば16ビットのデジタルデータとして記録されている音声データは、デコーダ82で復号化された後、スピーカ73を駆動するために使用される。 なお、当該デコーダ82のオーディオ出力は、一旦SPU71に入り、このSPU出力とミックスされ、リバーブユニットを経由して最終のオーディオ出力となる。

    【0047】また、通信制御部90は、メインバスBを介してCPU51との通信の制御を行う通信制御デバイス91と、使用者からの指示を入力するコントローラ9
    2と、ゲームの設定等を記憶するメモリカード93とを備えている。

    【0048】コントローラ92は、使用者の意図をアプリケーションに伝達するインタフェースであり、使用者からの指示を入力するために、例えば16個の指示キーを有し、通信制御デバイス91からの指示に従って、この指示キーの状態を、同期式通信により、通信制御デバイス91に毎秒60回程度送信する。 そして、通信制御デバイス91は、コントローラ92の指示キーの状態をCPU51に送信する。 なお、コントローラ92は、本体に2個のコネクタを有し、その他にマルチタップを使用して多数のコントローラを接続することも可能となっている。

    【0049】これにより、使用者からの指示がCPU5
    1に入力され、CPU51は、実行しているゲームプログラム等に基づいて使用者からの指示に従った処理を行う。

    【0050】また、CPU51は、実行しているゲームの設定やゲームの終了時或いは途中の結果等を記憶する必要があるときに、該記憶するデータを通信制御デバイス91に送信し、通信制御デバイス91は当該CPU5
    1からのデータをメモリカード93に記憶する。

    【0051】このメモリカード93は、メインバスBから分離されているため、電源を入れた状態で、着脱することができるようになっている。 これにより、ゲームの設定等を複数のメモリカード93に記憶することができるようになっている。

    【0052】また、本構成例システムは、メインバスB
    に接続された16ビットパラレル入出力(I/O)ポート101と、非同期式のシリアル入出力(I/O)ポート102とを備えている。

    【0053】そして、パラレルI/Oポート101を介して周辺機器との接続を行うことができるようになっており、また、シリアルI/Oポート102を介して他のビデオゲーム装置等との通信を行うことができるようになっている。

    【0054】ところで、上記メインメモリ53、GPU
    62、MDEC64及びデコーダ82等の間では、プログラムの読み出し、画像の表示あるいは描画等を行う際に、大量の画像データを高速に転送する必要がある。

    【0055】このため、この画像処理システムでは、上述のようにCPU51を介さずに周辺デハイスコントローラ52からの制御により上記メインメモリ53、GP
    U62、MDEC64及びデコーダ82等の間で直接データの転送を行ういわゆるDMA転送を行うことができるようになっている。

    【0056】これにより、データ転送によるCPU51
    の負荷を低減させることができ、高速なデータの転送を行うことができようになっている。

    【0057】このビデオゲーム装置では、電源が投入されると、CPU51が、ROM54に記憶されているオペレーティングシステムを実行する。

    【0058】このオペレーティングシステムに実行により、CPU51は、上記グラフィックシステム60、サウンドシステム70等の制御を行う。

    【0059】また、オペレーティングシステムが実行されると、CPU51は、動作確認等の装置全体の初期化を行った後、光学ディスク制御部80を制御して、光学ディスクに記録されているゲーム等のプログラムを実行する。

    【0060】このゲーム等のプログラムの実行により、
    CPU51は、使用者からの入力に応じて上記グラフィックシステム60、サウンドシステム70等を制御して、画像の表示、効果音、楽音の発生を制御するようになっている。

    【0061】次に、本構成例の画像処理システムにおけるディスプレイ上への表示について説明する。

    【0062】上記GPU62は、フレームバッファ63
    4内の任意の矩形領域の内容を、そのまま上記ビデオ出力手段65の例えばCRT等のディスプレイ上に表示する。 この領域を以下表示エリアと呼ぶ。 上記矩形領域とディスプレイ画面表示の関係は、図2に示すようになっている。

    【0063】また、上記GPU62は、次の10個の画面モードをサポートしている。

    【0064】 〔モード〕 〔標準解像度〕 備考 モード0 256(H)×240(V) ノンインターレス モード1 320(H)×240(V) ノンインターレス モード2 512(H)×240(V) ノンインターレス モード3 640(H)×240(V) ノンインターレス モード4 256(H)×480(V) インターレス モード5 320(H)×480(V) インターレス モード6 512(H)×480(V) インターレス モード7 640(H)×480(V) インターレス モード8 384(H)×240(V) ノンインターレス モード9 384(H)×480(V) インターレス 画面サイズすなわちディスプレイ画面上のピクセル数は可変で、図3のように、平方向、垂直方向それぞれ独立に表示開始位置(座標(DTX,DTY))、表示終了位置(座標(DBX,DBY))を指定することができる。

    【0065】また、各座標に指定可能な値と画面モードとの関係は、以下のようになっている。 なお、座標値のDTX,DBXは4の倍数になるように設定する必要がある。 したがって、最小画面サイズは、横4ピクセル、
    縦2ピクセル(ノンインターレス時)又は4ピクセル(インターレス時)になる。

    【0066】 〔X座標の指定可能範囲〕 〔モード〕 〔DTX〕 〔DBX〕 0,4 0〜276 4〜280 1,5 0〜348 4〜352 2,6 0〜556 4〜560 3,7 0〜700 4〜704 8,9 0〜396 4〜400 〔Y座標の指定可能範囲〕 〔モード〕 〔DTY〕 〔DBY〕 0〜3,8 0〜241 2〜243 4〜7,9 0〜480 4〜484 次に、GPU62は、表示色数に関するモードとして、
    16ビットダイレクトモード(32768色)と、24
    ビットダイレクトモード(フルカラー)の2つをサポートしている。 上記16ビットダイレクトモード(以下1
    6ビットモードと呼ぶ)は32768色表示モードである。 この16ビットモードでは、24ビットダイレクトモード(以下24ビットモードと呼ぶ)に較べ表示色数に限りはあるが、描画時のGPU62内部での色計算は24ビットで行われ、また、諧調を疑似的に増やすいわゆるディザ機能も搭載しているので、疑似フルカラー(24ビットカラー)表示が可能となっている。 また、
    上記24ビットモードは、16777216色(フルカラー)表示のモードである。 但し、フレームバッファ6
    3内に転送されたイメージデータの表示(ビットマップ表示)のみが可能で、GPU62の描画機能を実行することはできない。 ここで、1ピクセルのビット長は24
    ビットとなるが、フレームバッファ63上での座標や表示位置の値は16ビットを基準として指定する必要がある。 すなわち、640×480の24ビット画像データは、フレームバッファ63中では960×480として扱われる。 また、前記座標値DBXは8の倍数になるように設定する必要があり、したがって、この24ビットモードでの最小画面サイズは横8×縦2ピクセルになる。

    【0067】また、GPU62には次のような描画機能が搭載されている。

    【0068】先ず、1×1ドット〜256×256ドットのポリゴン又はスプライトに対して、4ビットCLU
    T(4ビットモード、16色/ポリゴン、スプライト)
    や8ビットCLUT(8ビットモード、256色/ポリゴン、スプライト),16ビットCLUT(16ビットモード、32768色/ポリゴン、スプライト)等の描画が可能なポリゴン又はスプライト描画機能と、ポリゴンやスプライト(三角形や四角形等の多角形)の各頂点の画面上の座標を指定して描画を行うと共に、ポリゴンやスプライト内部を同一色で塗りつぶすフラットシェーディング、各頂点に異なる色を指定して内部をグラデーションするグーローシェーディング、ポリゴンやスプライト表面に2次元のイメージデータ(テクスチャパターン、特にスプライトに対するものをスプライトパターンと呼ぶ)を用意して張り付けるテクスチャマッピング等を行うポリゴン描画機能と、グラデーションが可能な直線描画機能と、CPU51からフレームバッファ63への転送、フレームバッファ63からCPU51への転送、フレームバッファ63からフレームバッファ63への転送等のイメージ転送機能と、その他の機能として、
    各ピクセルの平均をとって半透明化する機能(各ピクセルのピクセルデータを所定比率αで混合することからα
    ブレンディング機能と呼ばれる)、色の境界にノイズを乗せてぼかすディザ機能、描画エリアを越えた部分を表示しない描画クリッピング機能、描画エリアに応じて描画原点を動かすオフセット指定機能等がある。

    【0069】また、描画を行う座標系は符号付きの11
    ビットを単位としており、X,Yそれぞれに−1024
    〜+1023の値をとる。 また、図4に示すように、本構成例でのフレームバッファ63のサイズは1024×
    512となっているので、はみ出した部分は折り返すようになっている。 描画座標の原点は、座標値のオフセット値を任意に設定する機能により、フレームバッファ6
    3内で自由に変更することができる。 また、描画は、描画クリッピング機能により、フレームバッファ63内の任意の矩形領域に対してのみ行われる。

    【0070】さらに、GPU62は、最大256×25
    6ドットのテクスチャをサポートしており、縦,横それぞれの値を自由に設定することができる。

    【0071】上記ポリゴン又はスプライトに張りつけるイメージデータ(テクスチャパターン又はスプライトパターン)は、図5に示すように、フレームバッファ63
    の非表示領域に配置する。 テクスチャパターン又はスプライトパターンは、描画コマンド実行に先立ってフレームバッファ63に転送される。 テクスチャパターン又はスプライトパターンは、256×256ピクセルを1ページとして、フレームバッファ63上にメモリの許す限り何枚でも置くことができ、この256×256の領域をテクスチャページと呼んでいる。 1枚のテクスチャページの場所は、描画コマンドのTSBと呼ぶテクスチャページの位置(アドレス)指定のためのパラメータに、
    ページ番号を指定することで決定される。

    【0072】テクスチャパターン又はスプライトパターンには、4ビットCLUT(4ビットモード)、8ビットCLUT(8ビットモード)、16ビットCLUT
    (16ビットモード)の3種類の色モードがある。 4ビットCLUT及び8ビットCLUTの色モードでは、C
    LUTを使用する。

    【0073】このCLUTとは、図6に示すように、最終的に表示される色を表す3原色のR,G,B値が16
    乃至256個、フレームバッファ63上に並んだものである。 各R,G,B値はフレームバッファ63上の左から順に番号付けされており、テクスチャパターン又はスプライトパターンはこの番号により各ピクセルの色を表す。 また、CLUTはポリゴン又はスプライト単位で選択でき、全てのポリゴン又はスプライトに対して独立したCLUTを持つことも可能である。 また、図6において、1個のエントリは16ビットモードの1ピクセルと同じ構造となっており、したがって、1セットのCLU
    Tは1×16(4ビットモード時)、1×255(8ビットモード時)のイメージデータと等しくなる。 フレームバッファ63内でのCLUTの格納位置は、描画コマンド内のCBAと呼ぶCLUTの位置(アドレス)指定のためのパラメータに、使用するCLUTの左端の座標を指定することで決定する。

    【0074】さらに、ポリゴン又はスプライト描画の概念を模式的に示すと図7のように表すことができる。 なお、図7の例ではスプライトを例に挙げている。 また図7中の描画コマンドのU,Vはテクスチャページのどの位置かを横(U),縦(V)で指定するパラメータであり、X,Yは描画エリアの位置を指定するためのパラメータである。

    【0075】また、GPU62は、動画表示の方式として、フレームダブルバッファリングという手法を用いるようにしている。 このフレームダブルバッファリングとは、図8に示すように、フレームバッファ63上に2つの矩形領域を用意し、一方のエリアに描画をしている間はもう片側を表示し、描画が終了したら2つのエリアをお互いに交換するものである。 これにより、書き換えの様子が表示されるのを回避することができることになる。 なお、バッファの切り換え操作は、垂直帰線期間内に行う。 また、GPU62では、描画の対象となる矩形領域と座標系の原点を自由に設定できるので、この2つを移動させることにより、複数のバッファを実現することも可能である。

    【0076】次に、本構成例の画像処理システムにおけるテクスチャマッピング及びグーローシェーディング時のCPU51が出力する命令形式(インストラクションセット)について説明する。

    【0077】先ず、描画命令形式について説明する。

    【0078】命令形式(1)として、描画命令をCPU
    51が直接指定するために、図9に示すようなパケット構成を用いる。 なお、この図9において、R,G,Bは多角形の全ての頂点で共有する輝度値を、Xn,Ynは頂点nの描画空間上の2次元座標を示す。 この命令形式(1)に対して、例えば、(X0,Y0)−(X1,Y
    1)−(X2,Y2)で囲まれる領域を輝度値(R,
    G,B)で塗りつぶす命令の場合には、図10に示すようになり、以降の描画の座標オフセットを(0FX,0
    FY)に変更する。

    【0079】次に、命令形式(2)として、図11に示すように、命令形式(1)の型の描画命令に命令のワード数と次の命令へのポインタを付加したタグを設けたパケット構成を用いる。 なお、この図11中のSIZEは命令のワード長(この例では4)を、ADDRは次の命令の先頭アドレスを示す。 これによって、フレームバッファ63上で連続した領域におかれていない複数の命令列をつなげて一度に実行できるようになる。 この場合の描画命令の転送は専用のハードウエアが行い、CPU5
    1は一切関与しない。 また、この命令形式(2)において、例えば、(X0,Y0)−(X1,Y1)−(X
    2,Y2)で囲まれる領域を輝度値(R,G,B)で塗りつぶす命令の場合には、図12に示すようになり、以降の描画の座標オフセットを変更する。

    【0080】次に、本発明のデータ形式について詳細に説明する。

    【0081】GPU62はホスト(CPU51)より供給されるパケット化されたコマンド(描画命令)列を順次実行する。 なお、以下の説明では下記の記号を使用する。

    【0082】 CODE コマンドコード呼びオプション R,G,B すべての頂点で共有する輝度値 Rn,Bn,Gn 頂点nの輝度値 Xn,Yn 頂点nの描画空間上の2次元座標 Un,Vn 頂点nに対応するテクスチャソーク空間上の 点の2次元座標 CBA(CLUT BASE ADDRESS) CLUTの先頭アドレス TSB(TEXTURE SOURCE BASE) テクスチャページ先頭アドレス及びテクスチ ャタイプなどの付加情報 なお、Xn,Ynは、コマンドでは16ビットが割り当てられているが、実際には各々下位11ビットまでが有効である。 CBA及びTSBのビットアサインは図13
    及び図14に示す通りである。 なお、図13中CLXはCLUTのX軸の先頭アドレス(6ビット)で、CLY
    はCLUTのY軸の先頭アドレス(9ビット)である。
    また、図14に示すTSBは、MODEコマンド(後述する設定コマンド参照)の下位ビットと同じビットアサインである。 この図14中のTPFはテクスチャパターンのピクセルの深さで、00のとき4ビットモード(C
    LUT)、01のとき8ビットモード(CLUT)、1
    0のとき16ビットモード(CLUT)である。 図14
    中のABRは半透明レートを示し、00のとき0.50
    ×F+0.50×B、01のとき1.00×F+1.0
    0×B、10のとき0.50×F+1.00×B、11
    のとき0.25×F+1.00×Bとなる(なおFは前景、Bは背景に対応する)。 また、図14中のTBXはテクスチャパターンソース空間x方向のベースアドレス(上位5ビット)で、TBYはテクスチャパターンソース空間y方向のベースアドレス(上位1ビット)である。

    【0083】次に三角形描画コマンド(コマンドコード=1h)は、図15に示すように、コマンドコード(オプションを含む)の後に、頂点情報をコマンド引数として与える。 オプションにより、引数の数、フォーマットが異なる。 この図15中のIIPが0のときは1種類の輝度値(R,G,B)で三角形を描画(フラットシェーディング)し、1のときは三頂点の輝度値を線形補間して、三角形を描画(グーローシェーディング)する。 C
    NTが0のときコマンド以降に続く3頂点で三角形を一つ描画し、1のときコマンド以降に続く4頂点で連結三角形を描画(四角形)する。 TMEが0のときテクスチャマッピングオフとなり、1のときテクスチャマッピングがオンとなる。 ABEが0のとき半透明処理がオフとなり、1のとき半透明処理がオンとなる。 TGEはTM
    Eの時のみ有効で、0のときテクスチャパターンと輝度値とを掛け合わせて表示し、1のときテクスチャパターンのみを描画する。 ここでのデータ構成は、2 3通りとなるが、その一部を図16に示す。

    【0084】次に直線描画コマンド(コマンドコード=
    2h)は、図17に示すように、コマンドコード(オプションを含む)の後に、端点情報をコマンド引数として与える。 オプションにより引数の数やフォーマットが異なる。 なお図17中のIIPが0のときはピクセルを描画指定された輝度値で描画し、1のときは2頂点の輝度値を線分の長軸方向の変位で線形補間して描画する。 C
    NTが0のときはコマンド以降に続く2端点で直線を1
    つ描画し、1のとき連結直線を描画する。 ABEが0のとき半透明処理がオフとなり、1のとき半透明処理がオンとなる。

    【0085】連結直線を描画するときは、最後にコマンドの終了を示す終端コード(TERMINATION CODE)が必要となる。 終端コードのフォーマットは図18に示すようになり、そのデータ構成例を図19に示す。 なお、座標値Xn,Ynは下位11ビットのみが有効であるので、通常の使用では座標値と終端コードが衝突することはない。

    【0086】次にスプライト描画コマンド(コマンドコード=3h)は、図20に示すようになり、データ構成例を図21に示す。 このスプライト描画コマンドでは、
    コマンドコード(オプションを含む)の後に、輝度情報、矩形領域の左下端点、テクスチャソース空間の左上端点、矩形領域の幅と高さをコマンド引数として与える。 オプションにより引数の数、フォーマットが異なる。 また、スプライト描画コマンドは2ピクセル同時に処理をするため、Unは偶数を指定しなければならない(下位1ビットは意味を持たない)。 なお、図20中のTMEが0のときはテクスチャマッピングがオフし、1
    のときはテクスチャマッピングがオンする。 ABEが0
    のときは半透明処理がオフし、1のときは半透明処理がオンする。 TGE(TMEの時のみ有効)が0のときはテクスチャパターン(この場合にはスプライトパターン)に一定の輝度値を掛け合わせて描画し、1のときはテクスチャパターン(スプライトパターン)のみを描画する。 SIZは矩形領域のサイズを指定し、00のときにはH,Wフィールドで指定し、01のときは1×1、
    10のときは8×8、11のときは16×16のサイズ指定となる。

    【0087】次にローカルローカル転送コマンド(コマンドコード=4h)すなわちフレームバッファ間の転送コマンドとして、例えば矩形領域転送コマンドは、図2
    2に示す通りであり、データ構成は図23に示すようになる。 この矩形領域転送コマンドは、コマンドコード(オプションを含む)の後に、ソース矩形領域の左上端点、ディスティネーション矩形領域の左上端点、矩形領域の幅と高さをコマンド引数として与える。 なお、図中のCODEはコマンドコード及びオプションを示し、S
    X,SYはソース(転送元)矩形領域の左上端点の座標を、DX,DYはディスティネーション(転送先)矩形領域の左上端点の座標を、Wは矩形領域の幅を、Hは矩形領域の高さを示す。

    【0088】次に、ホストローカル転送コマンド(コマンドコード=5h)は、図24に示す通りとなり、データ構成は図25に示すようになる。 このホストローカル転送コマンドは、CPUとフレームバッファ間の転送コマンドであり、コマンドコード(オプションを含む)で例えばディスティネーション矩形領域の左上端点、矩形領域の幅と高さ、転送データをコマンド引数として与える。 なお、図中のCODEはコマンドコード及びオプションを示し、DX,DYはディスティネーション(転送先)矩形領域の左上端点の座標を、Wは矩形領域の幅を、Hは矩形領域の高さを、FRAM0〜FRAMnは転送データを示す。

    【0089】次にローカルホスト転送コマンド(コマンドコード=6h)は、図26に示す通りであり、このデータ構成は図27に示すようになる。 このローカルホスト転送コマンドは、フレームバッファとCPUとの間の転送コマンドであり、例えばソース矩形領域の左上端点、矩形領域の幅と高さをコマンド引数として与える。
    なお、図中のCODEはコマンドコード及びオプションを示し、SX,SYはソース(転送元)矩形領域の左上端点の座標を、Wは矩形領域の幅を、Hは矩形領域の高さを示す。 また、汎用ポートを使用するコマンド(パラメータリード)をローカルホスト転送中に行うことはできない。

    【0090】次に、設定コマンド(コマンドコード=7
    h)は、図28に示すように、各種パラメータレジスタを設定するコマンドである。 これはコマンドコード(アドレスを含む)と、設定値を与える。 なお、図中のCO
    DEはコマンドコード及びオプションを示し、ADDR
    はアドレスを、DATAはパラメータを示す。

    【0091】ここで、この設定コマンドのうちモード(MODE)設定コマンド(アドレス=1h)は、図2
    9に示す構成であり、図中のTPFはテクスチャパターン(スプライの場合はスプライトトパターン)のピクセルの深さを示し、00のとき4ビットモード(CLU
    T)、01のとき8ビットモード(CLUT)、10のとき16ビットモード(ダイレクト)を示す。 DTDは0のときディザリングを行わないことを示し、1のときディザリングを行うことを示す。 DFEは0のときインターレース時に表示されていないフィールドのみ描画し、1のときインターレース時に両フィールドとも描画する。 ABRは半透明レートを示し、00のとき0.50×
    F+0.50×Bを、01のとき1.00×F+1.00×Bを、1
    0のとき0.50×F+1.00×Bを、11のとき0.25×F+
    1.00×Bを示す(なお、Fは前景、Bは背景に対応する)。 TBXはテクスチャパターンソース空間x方向ベースアドレス(上位4ビット)を、TBYはテクスチャパターンソース空間y方向ベースアドレス(上位1ビット)を示す。

    【0092】また、設定コマンドのうちテクスチャパターンリピート(TEXTURE PATTERN REPEAT )設定コマンド
    ( アドレス=2h)は、図30に示す構成であり、図中TUMはテクスチャパターンU座標繰り返しマスクを、
    TVMはテクスチャパターンV座標繰り返しマスクを、
    TUAはテクスチャパターン繰り返しU上位固定アドレスを、TVAはテクスチャパターン繰り返しV上位固定アドレスを示す。

    【0093】次に、設定コマンドのうちクリッピングスタート(CLIPPING START)設定コマンド(アドレス=3
    h)とクリッピングエンド(CLIPPING END)設定コマンド(アドレス=4h)は、図31に示す構成を有する。 なお、図31の(a)にはクリッピングスタート設定コマンドを、図31の(b)にはクリッピングエンド設定コマンドを示す。 クリッピッグはポリゴン(三角形)/直線/スプライト描画コマンドに対して有効であり、ホストローカル/ローカルローカル転送には作用しない。 図中のCTXはクリッピングの左上端点のXアドレス(1
    0ビット)を、CTYはクリッピングの左上端点のYアドレス(9ビット)を、CBXはクリッピングの右下端点のXアドレス(10ビット)を、CBYはクリッピングの右下端点のYアドレス(9ビット)を示す。

    【0094】次に、設定コマンドのうちオフセット(OFF
    SET)設定コマンド(アドレス=5h)は図32に示す構成をとり、図中OFXは座標オフセット値(X)(有符号11ビット)を、OFYは座標オフセット値(Y)
    (有符号11ビット)を示す。

    【0095】次に特殊コマンド(アドレス=0h)は、
    図33に示す構成をとり、特殊コマンドとしては割り込み要求イネーブルコマンドと後述するNOPコマンド等がある。 これはコマンドとオプションで指定する。

    【0096】上記特殊コマンドのうちIRQ(interrupt
    request) 発生コマンドは、図34に示す構成をとり、
    IRQピンをアサートする。

    【0097】また特殊コマンドのうちNOP(no operat
    ion)コマンドは、図35に示す構成をとり、このときは何もしない。

    【0098】さらに、特殊コマンドのうちキャッシュフラッシュコマンドは、図36に示す構成をとり、テクスチャキャッシュとCLUTの内容をフラッシュする。 ただし、ホストローカル転送,ローカルホスト転送を行うとテクスチャキャッシュだけは自動的にフラッシュされる(CLUTは保存される)。

    【0099】また、特殊コマンドのうちブロックライトコマンドは、図37に示す構成となり、データ構成は図38に示すようになる。 このコマンドは、高速で矩形を初期化する。 なお、図中のW,Hは矩形領域のサイズを示す。 また、R,G,Bは8ビットで指定されるが、実際にメモリ上へ書き込まれる値は、上記4ビットのみである。 矩形領域の開始位置(X0,Y0)、サイズ(H,V)は共に32ピクセルの整数倍で指定する。 下位4ビットは意味を持たない。

    【0100】ところで、GPU62は専用のローカルメモリを持ち、これは表示用のフレームバッファであると同時にテクスチャパターンやテクスチャCLUTの領域としても使用する。 すなわち、このローカルメモリが図1のフレームバッファ63である。

    【0101】上記フレームバッファ63へのアドレッシングとして、GPU62が描画する領域はx方向0〜1
    023、y方向0〜511のサイズであり、ローカルメモリ(フレームバッファ63)の1次元アドレスとの対応は、 1次元アドレス=X A +Y A ×1024 である。 ただし、24ビットモードの場合は、 1次元アドレス=(3/2)×X A +Y A ×1024 である。

    【0102】なお、フレームバッファ63のページサイズは1024固定なので、実際にはXA がカラムアドレス、Y Aがロウアドレスに対応する。 フレームバッファ63内にはどこでも描画可能で、また、フレームバッファ63内の任意の領域を表示することもできる。 ただし、表示できる大きさは、モードに応じて制限がある。
    さらに、フレームバッファ63のアドレスX A ,Y Aはそれぞれ10ビット,9ビット無符号で指定される。 ただし、ポリゴンの描画で使用する座標値x,yは、それぞれ11ビット有符号で指定される。 またさらに、描画は(x,y)にオフセットレジスタで指定されたオフセット(OFX,OFY)が加算された値をアドレスとして、フレームバッファ63に描画される。 ただし、マウントされるフレームメモリの大きさ、1024×512
    を越えた領域には描画されない。

    【0103】次に、ピクセルフォーマットについて説明する。 GPU63は、図39の(a)に示すようにR:
    G:B=8:8:8(ビット)の24ビットモードと、
    同図中(b)に示すようにR:G:B=5:5:5(ビット)の16ビットモードをサポートする。 ただし、2
    4ビットモードは表示のみで描画することはできない。
    なお、図中のRは赤色成分を、Gは緑色成分を、Bは青色成分を、STPはオーバーライトフラグを示す。 モードによっては、STPに1が指定されると、以降そのピクセル上に新たに描画が実行されてもピクセルの内容は保存される。 これによって最初に描画したパターンを保持しておくことができる。

    【0104】次に、本構成例フォーマットによれば、ポリゴン/スプライトを描画する際に、テクスチャページにおかれたパターン(テクスチャパターン又はスプライトパターン)を使用してテクスチャマッピングを行うことができるようになる。 以降の説明では(x,y)は描画空間の座標を、(u,v)はテクスチャページ空間の座標を表す。

    【0105】先ず、テクスチャパターンやスプライトパターンの置かれているフレームバッファ内の領域をテクスチャページ或いはテクスチャページ空間と呼ぶ。 テクスチャパターンやスプライトパターンのピクセルフォーマットとしては、4,8,16ビット/ピクセルの3種類のモードがある。 4ビット,8ビットモードは疑似カラーであり、16ビットモードはダイレクトカラーである。 これらモードはポリゴン又はスプライト単位で切り換えることができる。 16ビットモード以外のテクスチャパターンやスプライトパターンは1ワード内に何個かのピクセルがパックされている。 したがって、テクスチャパターンやスプライトパターンのピクセルとフレームバッファのアドレスは1対1に対応していない。 そのため、フレームバッファにテクスチャパターンやスプライトパターンをロードする場合のアドレスの指定には注意が必要である。 各モードの場合のピクセルフォーマットは以下の図40に示す通りである。

    【0106】図40の(a),(b)に示す4ビット/
    ピクセル,8ビット/ピクセルの場合、ピクセル値は実際の輝度値ではなく、CLUTへのインデックスとなる。 これから、ピクセルはCLUTを用いて、図41のように16ビットのカラーフォーマットに変換される。
    なお、図中Rは赤色成分を、Gは緑色成分を、Bは青色成分を、STPは半透明フラグを示す。

    【0107】また、16ビット/ピクセルの場合はCL
    UTは用いられず、直接、輝度値として使用される。 このフォーマットは、図41と同様の図42の通りである。 なお、図中Rは赤色成分を、Gは緑色成分を、Bは青色成分を、図中STPは半透明フラグを示す。 STP
    に1が指定されたピクセルは半透明で描画され、半透明レートはポリゴン又はスプライト毎に独立に設定できる。

    【0108】さらに、4ビットモード、8ビットモードの場合は、テクスチャCLUTを用いてテクスチャの色(輝度)を決定することができるようになっている。 テクスチャCLUTはフレームバッファに幾つも持つことができるが、一回の描画コマンドで使用できるCLUT
    は1種類に限られる。 CLUTの選択はフレームバッファ上の先頭アドレスを指定することで選択できる。 先頭アドレスの指定はコマンド引数のCBAで行う。

    【0109】GPU62は内部にテクスチャCLUTキャッシュを持っており、ポリゴン描画に先立ち、キャッシュ内に必要なCLUTがなければ、新しくCLUTをロードする。 このため、同じCLUTを繰り返し使用する場合の描画はCLUTロードの分だけ高速になる。

    【0110】次に、上述したような本構成例のシステム及びフォーマットが適用される画像情報生成及び画像情報処理の流れを、図43にて説明する。

    【0111】この図43において、ステップS10では複数のポリゴンからなる3次元画像データをCD−RO
    Mのディスクから読み出してメインメモリ53に記憶し、ステップS11では各ポリゴン毎に指定される特性データとして色情報テーブル、テクスチャパターン情報、半透明率指定データをフレームバッファ63に記憶する。

    【0112】ステップS12では、前記グラフィックシステム60にて透視変換等の座標変換処理を行って上記3次元画像データから2次元画像情報を生成し、次のステップS13では当該2次元画像情報と各ポリゴンの特性を指定するための情報とを合成してポリゴン毎にパケット化された描画命令を生成する。

    【0113】ステップS14では、当該生成された描画命令により指定された特性データに基づき2次元画像をフレームバッファ63に描画する。

    【0114】次のステップS15では当該フレームバッファ63から2次元画像データをテレビジョン同期信号に同期して読み出し、ビデオ出力手段65を介してディスプレイ装置に供給する。

    【0115】上述したように、本発明構成例においては、テクスチャ座標にオフセットをもたせてテクスチャ座標の語長を短縮することで、描画命令が短くて済む。
    また、描画ポリゴンやスプライト毎にテクスチャのCL
    UTを指定できるので、疑似カラーテクスチャを使用していても色数の制限が少ない。 また、描画ポリゴンやスプライト毎に半透明率を指定するので画素毎の半透明率を指定する情報が必要でない。 さらに、テクスチャ座標と頂点座標が同時に指定できるのでテクスチャパターン自体を変更せずにテクスチャマップポリゴンの色合いを変化させることができる。 またさらに、半透明率として通常の0から1.0までの値ではなくて、マイナス(減算)の値が指定できるので、すでに描画されているピクセルの輝度値を減算することができる。 その他、連結頂点を用いて、描画する多角形の頂点座標を指定する場合において、連結頂点数を3及び4に限定することで、終端コードを不要にし、描画命令長を短縮させた頂点指定が可能となる。 また、描画の座標オフセットを描画命令の途中で変更できるため、オブジェクト(現実感のある物体すなわち描画対象の物体)単位の表示画面での平行移動を容易にすることができる。

    【0116】また、本発明構成例においては、画像をテクスチャパターンとして使用する際に、そのピクセルの最上位ビットで半透明のオン/オフを指定するので、半透明率の設定のための特定のαプレーンが必要にならない。 さらに、画像を背景画面として使用する最に、そのピクセルの最上位ビットで上書きの禁止・許可を指定できるので、近景から先に描画することができる。 また、
    画像をテクスチャパターンとして使用する場合には、カラーモードに応じて複数のモード(前記4ビットモード,8ビットモード,16ビットモード等)を選ぶことができ、したがって、その中にダイレクトカラー方式と疑似カラー方式を混在できる。 またさらに、フレームバッファとテクスチャ画像の品質に応じて様々なテクスチャタイプも選択できる。

    【0117】

    【発明の効果】以上の説明からも明らかなように、本発明においては、複数のポリゴンからなる3次元画像データを記憶し、各ポリゴン毎に指定される特性データを記憶し、3次元画像データに透視変換を施して表示画面に対応する2次元画像情報に変換し、ポリゴンの特性を指定するための情報と2次元画像情報とを合成してポリゴン毎にパケット化された描画命令を生成することにより、命令語長を短縮できると共に、ソースビデオメモリの消費量も減らすことができる画像情報を生成すること可能となる。

    【図面の簡単な説明】

    【図1】本発明が適用される画像処理システムの概略的な構成を示すブロック回路図である。

    【図2】ディスプレイ上への表示について説明するための図である。

    【図3】ディスプレイ上の表示の設定について説明するための図である。

    【図4】描画クリッピングの機能について説明するための図である。

    【図5】テクスチャページについて説明するための図である。

    【図6】CLUT構造について説明するための図である。

    【図7】ポリゴン又はスプライト描画の概念を説明するための図である。

    【図8】フレームダブルバッファリングについて説明するための図である。

    【図9】描画命令の命令形式(1)の構成を示す図である。

    【図10】命令形式(1)において座標オフセットを行う例を示す図である。

    【図11】描画命令の命令形式(2)の構成を示す図である。

    【図12】命令形式(2)において座標オフセットを行う例を示す図である。

    【図13】CBAの構成を示す図である。

    【図14】TSBの構成を示す図である。

    【図15】三角形描画コマンドのフォーマットを示す図である。

    【図16】三角形描画コマンドのデータ構成例を示す図である。

    【図17】直線描画コマンドのフォーマットを示す図である。

    【図18】連結直線を描画する際に必要な終端コードのフォーマットを示す図である。

    【図19】直線描画コマンドのデータ構成例を示す図である。

    【図20】スプライト描画コマンドのフォーマットを示す図である。

    【図21】スプライト描画コマンドのデータ構成例を示す図である。

    【図22】ローカルローカル転送コマンドのフォーマットを示す図である。

    【図23】ローカルローカル転送コマンドのデータ構成例を示す図である。

    【図24】ホストローカル転送コマンドのフォーマットを示す図である。

    【図25】ホストローカル転送コマンドのデータ構成例を示す図である。

    【図26】ローカルホスト転送コマンドのフォーマットを示す図である。

    【図27】ローカルホスト転送コマンドのデータ構成例を示す図である。

    【図28】設定コマンドのフォーマットを示す図である。

    【図29】モード設定コマンドのフォーマットを示す図である。

    【図30】テクスチャパターン繰り返し設定コマンドのフォーマットを示す図である。

    【図31】クリッピングスタート及びクリッピングエンド設定コマンドのフォーマットを示す図である。

    【図32】オフセット設定コマンドのフォーマットを示す図である。

    【図33】特殊コマンドのフォーマットを示す図である。

    【図34】IRQ発生コマンドのフォーマットを示す図である。

    【図35】NOPコマンドのフォーマットを示す図である。

    【図36】キャッシュフラッシュコマンドのフォーマットを示す図である。

    【図37】ブロックライトコマンドのフォーマットを示す図である。

    【図38】ブロックライトコマンドのデータ構成例を示す図である。

    【図39】ピクセルフォーマットを示す図である。

    【図40】テクスチャパターンフォーマットを示す図である。

    【図41】4ビット/ピクセル,8ビット/ピクセルがCLUTを用いて変換された16ビットカラーフォーマットを示す図である。

    【図42】16ビット/ピクセルのフォーマットを示す図である。

    【図43】本構成例のシステムにて適用される画像情報生成及び画像情報処理の処理の流れを示すフローチャートである。

    【図44】従来の画像作成装置(家庭用ゲーム機)の構成例を示すブロック回路図である。

    【図45】従来の画像作成装置による画像作成方法の説明に用いる図である。

    【符号の説明】

    51 CPU 52 周辺デバイスコントローラ 53 メインメモリ 54 ROM 60 グラフィックシステム 61 ジオメトリトランスファエンジン(GTE) 62 グラフィックスプロセッシングユニット 63 フレームバッファ 64 画像デコーダ(MDEC) 65 ビデオ出力手段(ディスプレイ装置) 70 サウンドシステム 71 サウンドプロセッシングユニット(SPU) 72 サウンドバッファ 73 スピーカ 80 光学ディスク制御部 81 ディスクドライブ装置 82 デコーダ 83 バッファ 90 通信制御部 91 通信制御機 92 コントローラ 93 メモリカード 101 パラレルI/Oポート 102 シリアルI/Oポート

    ───────────────────────────────────────────────────── フロントページの続き (72)発明者 田中 正善 東京都品川区北品川6丁目7番35号 ソニ ー株式会社内 (72)発明者 豊 禎治 東京都品川区北品川6丁目7番35号 ソニ ー株式会社内

    高效检索全球专利

    专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

    我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

    申请试用

    分析报告

    专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

    申请试用

    QQ群二维码
    意见反馈