JP3547236B2 - Image information generating apparatus and method, and image information processing apparatus and method - Google Patents

Image information generating apparatus and method, and image information processing apparatus and method Download PDF

Info

Publication number
JP3547236B2
JP3547236B2 JP31427095A JP31427095A JP3547236B2 JP 3547236 B2 JP3547236 B2 JP 3547236B2 JP 31427095 A JP31427095 A JP 31427095A JP 31427095 A JP31427095 A JP 31427095A JP 3547236 B2 JP3547236 B2 JP 3547236B2
Authority
JP
Japan
Prior art keywords
color information
image
data
information table
pixel data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP31427095A
Other languages
Japanese (ja)
Other versions
JPH08235366A (en
Inventor
正善 田中
雅一 鈴置
豊史 岡田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Interactive Entertainment Inc
Original Assignee
Sony Computer Entertainment Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Computer Entertainment Inc filed Critical Sony Computer Entertainment Inc
Priority to JP31427095A priority Critical patent/JP3547236B2/en
Publication of JPH08235366A publication Critical patent/JPH08235366A/en
Application granted granted Critical
Publication of JP3547236B2 publication Critical patent/JP3547236B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)
  • Controls And Circuits For Display Device (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、情報処理により画像情報を作成する画像情報生成装置及び方法と、画像情報処理装置及び方法に関する。
【0002】
【従来の技術】
例えば、家庭用ゲーム機やパーソナルコンピュータ装置或いはグラフィックコンピュータ装置等において、テレビジョン受像機やモニタ受像機或いはCRTディスプレイ装置等に出力されて表示される画像は2次元のものが殆どであり、基本的には2次元の平面的な背景に2次元のキャラクタ等を適宜に配置して移動させたり、変化させたりするような形態で画像表示が行われている。
【0003】
しかしながら、上述したような2次元的な画像表示や映像では、表現できる背景及びキャラクタやそれらの動きに制限があり、例えばゲームの臨場感を高めることが困難である。
【0004】
そこで、例えば次に示すような方法で疑似的な3次元の画像や映像を作成することが行われている。すなわち、上記キャラクタとしていくつかの方向から見た画像を用意しておき、表示画面中での視点の変化等に応じてこれらの複数画像の内から1つを選択して表示したり、2次元の画像を奥行き方向に重ねて疑似的な3次元画像を表現したりするような方法が挙げられる。また、画像データを生成或いは作成する際に、いわゆるテクスチャ(生地、地模様)の画像を多面体等の所望の面に貼り付けるようなテクスチャマッピング方法や、画像の色データをいわゆるカラールックアップテーブルを通して変換することにより表示色を変化させる手法が採られている。
【0005】
ここで、従来の家庭用ゲーム機の概略的な構成の一例を図17に示す。この図17において、マイクロプロセッサ等から成るCPU391は、入力パッドやジョイスティック等の入力デバイス394の操作情報をインターフェイス393を介し、メインバス399を通して取り出す。この操作情報の取り出しと同時に、メインメモリ392に記憶されている3次元画像のデータがビデオプロセッサ396によってソースビデオメモリ395に転送され、記憶される。
【0006】
また、上記CPU391は、上記ソースビデオメモリ395に記憶された画像を重ね合わせて表示するための画像データの読み出し順位を上記ビデオプロセッサ396に送る。上記ビデオプロセッサ396は上記画像データの読み出し順位に従って上記ソースビデオメモリ395から画像データを読み出し、画像を重ね合わせて表示する。
【0007】
上述のように画像を表示すると同時に、上記取り出された操作情報中の音声情報により、オーディオプロセッサ397はオーディオメモリ398内に記憶されている上記表示される画像に応じた音声データを出力する。
【0008】
図18は、図17に示す構成をもつ家庭用ゲーム機において、2次元画像のデータを用いて3次元画像を出力する手順を示す図である。この図18では、市松模様の背景画像上に円筒状の物体を3次元画像として表示する場合を説明する。
【0009】
この図18のソースビデオメモリ395には、市松模様の背景画像200と、この背景画像200上の円筒状の物体の深さ方向の断面を表す矩形の画像、いわゆるスプライト201、202、203、204のデータが記憶されている。なお、三角形以上の多角形をポリゴンと呼び、特に四角形のポリゴンをスプライトと呼んでいる。この矩形の画像であるスプライト201、202、203、204上の円筒の断面の画像以外の部分は透明色で描かれている。
【0010】
ビデオプロセッサ396内のシンクジェネレータ400は、表示する画像の同期信号に合わせた読み出しアドレス信号を発生する。また、このシンクジェネレータ400は、上記読み出しアドレス信号をメインバス399を介して図17のCPU391から与えられた読み出しアドレステーブル401に送る。さらに、このシンクジェネレータ400は上記読み出しアドレステーブル401からの情報に従って上記ソースビデオメモリ395内の画像データを読み出す。
【0011】
上記読み出された画像データは、上記CPU391により上記メインバス399を介して与えられたプライオリティテーブル402内の画像の重ね合わせ順位に基づいて、重ね合わせ処理部403で順次重ね合わせられる。この場合には、上記背景画像200が最も順位が低く、矩形の画像201、202、203、204と順に順位が高くなっているため、背景画像200から順次画像が重ね合わせられる。
【0012】
次に、透明色処理部404において、円筒以外の部分を背景画像で表示するために上記重ね合わせられた円筒の断面の画像201、202、203、204により表示される円筒以外の部分を透明にする処理を施す。
【0013】
上述した処理により、円筒状の物体の2次元画像のデータが図18に示す3次元画像VD0 の画像データとして出力される。
【0014】
【発明が解決しようとする課題】
ところで、上記ソースビデオメモリ395は、図19中の小矩形部分で示すような各ピクセルデータが2次元的に配列されるピクセルデータ格納領域と、図20中の各小矩形部分で示すような複数の色情報が1次元的に配列されるカラールックアップテーブルの領域とに分割して使用される。
【0015】
ところが、上記カラールックアップテーブルは、図20のように、ソースビデオメモリ395の例えば横方向に対応する1次元のテーブルとなっており、したがって、当該テーブルの大きさは上記ソースビデオメモリ395の横方向の大きさに依存することになり、このことからより多くの色を表現することが困難となっている。
【0016】
本発明は、より多くの色を表現することを可能とし、さらに処理の簡略化をも可能とする画像情報を生成する画像情報生成装置及び方法と、その画像情報を処理する画像情報処理装置及び方法を提供するものである。
【0017】
【課題を解決するための手段】
本発明の画像情報生成装置及び方法においては、複数のピクセルデータからなるイメージデータを記憶し、複数に分割された上記イメージデータの任意領域に対応する、上記ピクセルデータの色情報テーブルを記憶し、描画命令に応じて、上記イメージデータの任意領域に対応する色情報テーブルから色情報を読み出し、上記色情報テーブルからの色情報に応じてイメージデータを描画することにより、上述の課題を解決する。
【0018】
また、本発明の画像情報処理装置及び方法においては、記録媒体から読み出された複数のピクセルデータからなるイメージデータを記憶し、また、記録媒体から読み出された複数に分割された上記イメージデータの任意領域に対応する、上記ピクセルデータの色情報テーブルを記憶し、描画命令に応じて、上記イメージデータの任意領域に対応する色情報テーブルから色情報を読み出し、上記色情報テーブルからの色情報に応じてイメージデータを描画し、この描画されたイメージデータを読み出して表示手段に出力することにより、上述の課題を解決する。
【0019】
すなわち、本発明によれば、イメージデータを複数に分割して得た各任意領域に、色情報テーブルを対応付けることで、より多くの色を表現できるようにすると共に、処理も簡略化している。
【0020】
【発明の実施の形態】
以下、本発明の好ましい実施の形態について、図面を参照しながら説明する。
【0021】
先ず、本発明の画像情報生成方法及び画像情報処理方法を用い、画像データ(画像イメージデータ、以下TIMデータと呼ぶ)から3次元グラフィックスデータを生成して表示するような画像処理システムについて説明する。本構成例の画像処理システムは、例えば家庭用ゲーム機やパーソナルコンピュータ装置或いはグラフィックコンピュータ装置等に適用されるものであり、図1の例では家庭用ゲーム機に適用した例を示している。
【0022】
本構成例の画像処理システムは、記録媒体である例えば光学ディスク(例えばCD−ROM等のディスク状記録媒体)に記録されている、後述する本発明にかかる画像イメージデータフォーマット(以下TIMフォーマットと呼ぶ)のデータを含むデータ(例えばゲームプログラム)を読み出して実行することにより、使用者からの指示に応じてゲーム等が行えるようになっており、具体的には図1に示すような構成を有している。
【0023】
本構成例の画像処理システムは、CD−ROMディスクから読み出された3次元画像情報を2次元表示画面上に描画される2次元画像情報に変換する変換描画手段としてのジオメトリトランスファエンジン(GTE)61及びグラフィックスプロセッシングユニット(GPU62)と、画像情報を格納する画像情報格納領域、すなわち複数のピクセルデータからなるイメージデータが記憶される第1の記憶手段としてのイメージデータ領域(例えば後述するテクスチャ領域)と、画像を構成する各画素情報(ピクセルデータ)の後述するフォーマット構造と略同一のフォーマット構造を有する色情報を1次元的に並べた複数の色情報テーブル(カラールックアップテーブル、以下CLUTと呼ぶ)を2次元的に配置して格納する色情報テーブル格納領域(CLUT領域)とを少なくとも有するメモリ手段としてのフレームバッファ63とを備えているものである。また、ここでのフレームバッファ63の上記色情報テーブル格納領域には、上記イメージデータを複数に分割したときの任意領域に対応した色情報テーブルを記憶するようにもしている。なお、このように、本構成例では、複数の色情報からなる1次元的なCLUTの各色情報の構造を、画像を構成する各ピクセルデータの構造と略同一とすることで、画像情報の処理と色情報の処理を統一することが可能となり、したがって、処理の簡略化が図れる。また、本構成例によれば、1次元的な複数のCLUTを2次元的に配置することで、例えばメモリ手段上により多くの色情報を格納できるようになる。さらに、イメージデータを複数に分割したときの任意の領域に対応したCLUTを配置することで、より多くの色を表現することが可能となっている。
【0024】
すなわち、この画像処理システムは、中央演算処理装置(CPU51)及びその周辺装置(周辺デバイスコントローラ52等)からなる制御系50と、フレームバッファ63上に描画を行うグラフィックスプロセッシングユニット(GPU62)等からなるグラフィックシステム60と、楽音、効果音等を発生するサウンドプロセッシングユニット(SPU71)等からなるサウンドシステム70と、補助記憶装置である光学ディスク(CD−ROMディスク)ドライブ81の制御や再生情報のデコード等を行う光学ディスク制御部80と、使用者からの指示を入力するコントローラ92からの指示入力及びゲームの設定等を記憶する補助メモリ(メモリカード93)からの入出力を制御する通信制御部90と、上記制御系50から通信制御部90までが接続されているメインバスB等を備えている。
【0025】
上記制御系50は、CPU51と、割り込み制御、タイムコントロール、メモリコントロール、ダイレクトメモリアクセス(DMA)転送の制御等を行う周辺デバイスコントローラ52と、例えば2メガバイトのRAMからなる主記憶装置(メインメモリ)53と、このメインメモリ53や上記グラフィックシステム60,サウンドシステム70等の管理を行ういわゆるオペレーティングシステム等のプログラムが格納された例えば512キロバイトのROM54とを備えている。
【0026】
CPU51は、例えば32ビットのRISC(reduced instruction set computor)CPUであり、ROM54に記憶されているオペレーティングシステムを実行することにより装置全体の制御を行う。当該CPU51は命令キャッシュとスクラッチパッドメモリを搭載し、実メモリの管理も行う。
【0027】
上記グラフィックシステム60は、座標変換等の処理を行う座標計算用コプロセッサからなるジオメトリトランスファエンジン(GTE)61と、CPU51からの描画指示(描画命令)に従って描画を行うグラフィックスプロセッシングユニット(GPU)62と、該GPU62により描画された画像を記憶する例えば1メガバイトのフレームバッファ63と、いわゆる離散コサイン変換などの直行変換がなされさらに圧縮されて符号化された画像データを復号化する画像デコーダ(以下MDECと呼ぶ)64とを備えている。
【0028】
GTE61は、例えば複数の演算を並列に実行する並列演算機構を備え、CPU51のコプロセッサとして当該CPU51からの演算要求に応じて透視変換等の座標変換、法線ベクトルと光源ベクトルとの内積演算による光源計算、例えば固定小数点形式の行列やベクトルの演算を高速に行うことができるようになっている。
【0029】
具体的には、このGTE61は、1つの三角形状のポリゴンに同じ色で描画するフラットシェーディングを行う演算の場合では、1秒間に最大150万程度のポリゴンの座標演算を行うことができるようになっており、これによってこの画像処理システムでは、CPU51の負荷を低減すると共に、高速な座標演算を行うことができるようになっている。なお、ポリゴンとは、ディスプレイ上に表示される3次元の物体を構成するための図形の最小単位であり、三角形や四角形等の多角形からなるものである。
【0030】
GPU62は、CPU51からのポリゴン描画命令に従って動作し、フレームバッファ63に対して多角形(ポリゴン)等の描画を行う。このGPU62は、1秒間に最大36万程度のポリゴンの描画を行うことができるようになっている。また、このGPU62は、CPU51とは独立した2次元のアドレス空間を持ち、そこにフレームバッファ63がマッピングされるようになっている。
【0031】
フレームバッファ63は、いわゆるデュアルポートRAMからなり、GPU62からの描画あるいはメインメモリ53からの転送と、表示のための読み出しとを同時に行うことができるようになっている。
【0032】
このフレームバッファ63は、例えば1メガバイトの容量を有し、それぞれ16ビットの横1024で縦512の画素のマトリックスとして扱われる。
【0033】
このフレームバッファ63のうちの任意の表示領域を例えばディスプレイ装置等のビデオ出力手段65に出力することができるようになっている。
【0034】
また、このフレームバッファ63には、ビデオ出力として出力される表示領域の他に、GPU62がポリゴン等の描画を行う際に参照するカラールックアップテーブル(CLUT)が記憶されるCLUT領域と、描画時に座標変換されてGPU62によって描画されるポリゴン等の中に挿入(マッピング)される素材(テクスチャ)が記憶されるテクスチャ領域とが設けられている。また、CLUT領域はテクスチャを複数に分割したときの任意の領域に対応するようにもなされており、したがって、上記GPU62では、上記ポリゴン描画命令に応じて、前記フレームバッファ63の前記テクスチャデータの任意領域に対応するCLUTから色情報を読み出し、当該CLUTからの色情報に応じてポリゴン等の描画を行うことが可能となっている。これらのCLUT領域とテクスチャ領域は表示領域の変更等に従って動的に変更されるようになっている。すなわち、このフレームバッファ63は、表示中の領域に対して描画アクセスを実行することができ、また、メインメモリ53との間で高速DMA転送を行うことも可能となっている。
【0035】
なお、上記GPU62は、上述のフラットシェーディングの他にポリゴンの頂点の色から補間してポリゴン内の色を決めるグーローシェーディングと、上記テクスチャ領域に記憶されているテクスチャをポリゴンに張り付けるテクスチャマッピングを行うことができるようになっている。
【0036】
これらのグーローシェーディング又はテクスチャマッピングを行う場合には、上記GTE61は、1秒間に最大50万程度のポリゴンの座標演算を行うことができる。
【0037】
MDEC64は、上記CPU51からの制御により、CD−ROMディスクから読み出されてメインメモリ53に記憶されている静止画あるいは動画の画像データを復号化して再びメインメモリ53に記憶する。具体的には、MDEC64は逆離散コサイン変換(逆DCT)演算を高速に実行でき、CD−ROMディスクから読み出されたカラー静止画圧縮標準(いわゆるJPEG)や蓄積メディア系動画像符号化標準(いわゆるMPEG、但し本構成例ではフレーム内圧縮のみ)の圧縮データの伸張を行うことができるようになっている。
【0038】
また、この再生された画像データは、GPU62を介してフレームバッファ63に記憶することにより、上述のGPU62によって描画される画像の背景として使用することができるようにもなっている。
【0039】
上記サウンドシステム70は、CPU51からの指示に基づいて、楽音、効果音等を発生するサウンド再生処理プロセッサ(SPU)71と、CD−ROMから読み出された音声,楽音等のデータや音源データ等が記憶される例えば512キロバイトのサウンドバッファ72と、SPU71によって発生される楽音、効果音等を出力するサウンド出力手段としてのスピーカ73とを備えている。
【0040】
上記SPU71は、16ビットの音声データを4ビットの差分信号として適応差分符号化(ADPCM)された音声データを再生するADPCM復号機能と、サウンドバッファ72に記憶されている音源データを再生することにより、効果音等を発生する再生機能と、サウンドバッファ72に記憶されている音声データ等を変調させて再生する変調機能等を備えている。すなわち、当該SPU71は、ルーピングや時間を系数とした動作パラメータの自動変更などの機能を持つADPCM音源24ボイスを内蔵し、CPU51からの操作により動作する。また、SPU71は、サウンドバッファ72がマッピングされた独自のアドレス空間を管理し、CPU51からサウンドバッファ72にADPCMデータを転送し、キーオン/キーオフやモジュレーション情報を直接渡すことによりデータを再生する。
【0041】
このような機能を備えることによってこのサウンドシステム70は、CPU51からの指示によってサウンドバッファ72に記録された音声データ等に基づいて楽音、効果音等を発生するいわゆるサンプリング音源として使用することができるようになっている。
【0042】
上記光学ディスク制御部80は、CD−ROMディスクである光学ディスクに記録されたプログラム、データ等を再生するディスクドライブ装置81と、例えばエラー訂正(ECC)符号が付加されて記録されているプログラム、データ等を復号するデコーダ82と、ディスクドライブ装置81からの再生データを一時的に記憶する例えば32キロバイトのバッファ83とを備えている。すなわち、当該光学ディスク制御部80は、上記ドライブ装置81やデコーダ82等のディスクの読み出しを行うために必要な部品類から構成されている。なお、ここでは、ディスクフォーマットとして例えばCD−DA、CD−ROM XA等のデータをサポートできるようになっている。なお、デコーダ82はサウンドシステム70の一部も構成している。
【0043】
また、ディスクドライブ装置81で再生されるディスクに記録されている音声データとしては、上述のADPCMデータ(CD−ROM XAのADPCMデータ等)の他に音声信号をアナログ/デジタル変換したいわゆるPCMデータがある。
【0044】
ADPCMデータとして、例えば16ビットのデジタルデータの差分を4ビットで表わして記録されている音声データは、デコーダ82で誤り訂正と復号化がなされた後、上述のSPU71に供給され、SPU71でデジタル/アナログ変換等の処理が施された後、スピーカ73を駆動するために使用される。
【0045】
また、PCMデータとして、例えば16ビットのデジタルデータとして記録されている音声データは、デコーダ82で復号化された後、スピーカ73を駆動するために使用される。なお、当該デコーダ82のオーディオ出力は、一旦SPU71に入り、当該SPU出力とミックスされ、リバーブユニットを経由して最終のオーディオ出力となる。
【0046】
また、通信制御部90は、メインバスBを介してCPU51との通信の制御を行う通信制御デバイス91と、使用者からの指示を入力するコントローラ92と、ゲームの設定等を記憶するメモリカード93とを備えている。
【0047】
コントローラ92は、使用者の意図をアプリケーションに伝達するインタフェースであり、使用者からの指示を入力するために、例えば16個の指示キーを有し、通信制御デバイス91からの指示に従って、この指示キーの状態を、同期式通信により、通信制御デバイス91に毎秒60回程度送信する。そして、通信制御デバイス91は、コントローラ92の指示キーの状態をCPU51に送信する。なお、コントローラ92は、本体に2個のコネクタを有し、その他にマルチタップを使用して多数のコントローラを接続することも可能となっている。
【0048】
これにより、使用者からの指示がCPU51に入力され、CPU51は、実行しているゲームプログラム等に基づいて使用者からの指示に従った処理を行う。
【0049】
また、CPU51は、実行しているゲームの設定やゲーム終了時或いは途中の得点等を記憶する必要があるときに、該記憶するデータを通信制御デバイス91に送信し、通信制御デバイス91は当該CPU51からのデータをメモリカード93に記憶する。
【0050】
このメモリカード93は、メインバスBから分離されているため、電源を入れた状態で、着脱することができるようになっている。これにより、ゲームの設定等を複数のメモリカード93に記憶することができるようになっている。
【0051】
また、本構成例システムは、メインバスBに接続された16ビットパラレル入出力(I/O)ポート101と、非同期式のシリアル入出力(I/O)ポート102とを備えている。
【0052】
そして、パラレルI/Oポート101を介して周辺機器との接続を行うことができるようになっており、また、シリアルI/Oポート102を介して他のビデオゲーム装置等との通信を行うことができるようになっている。
【0053】
ところで、上記メインメモリ53、GPU62、MDEC64及びデコーダ82等の間では、プログラムの読み出し、画像の表示あるいは描画等を行う際に、大量の画像データを高速に転送する必要がある。
【0054】
このため、この画像処理システムでは、上述のようにCPU51を介さずに周辺デバイスコントローラ52からの制御により上記メインメモリ53、GPU62、MDEC64及びデコーダ82等の間で直接データの転送を行ういわゆるDMA転送を行うことができるようになっている。
【0055】
これにより、データ転送によるCPU51の負荷を低減させることができ、高速なデータの転送を行うことができようになっている。
【0056】
このビデオゲーム装置では、電源が投入されると、CPU51が、ROM54に記憶されているオペレーティングシステムを実行する。
【0057】
このオペレーティングシステムの実行により、CPU51は、上記グラフィックシステム60、サウンドシステム70等の制御を行う。
【0058】
また、オペレーティングシステムが実行されると、CPU51は、動作確認等の装置全体の初期化を行った後、光学ディスク制御部80を制御して、光学ディスクに記録されているゲーム等のプログラムを実行する。
【0059】
このゲーム等のプログラムの実行により、CPU51は、使用者からの入力に応じて上記グラフィックシステム60、サウンドシステム70等を制御して、画像の表示、効果音、楽音の発生を制御するようになっている。
【0060】
次に、本構成例の画像処理システムにおけるディスプレイ上への表示について説明する。
【0061】
上記GPU62は、フレームバッファ634内の任意の矩形領域の内容を、そのまま上記ビデオ出力手段65の例えばCRT等のディスプレイ上に表示する。この領域を以下表示エリアと呼ぶ。上記矩形領域とディスプレイ画面表示の関係は、図2に示すようになっている。
【0062】
また、上記GPU62は、次の10個の画面モードをサポートしている。
【0063】

Figure 0003547236
画面サイズすなわちディスプレイ画面上のピクセル数は可変で、図3のように、水平方向、垂直方向それぞれ独立に表示開始位置(座標(DTX,DTY))、表示終了位置(座標(DBX,DBY))を指定することができる。
【0064】
また、各座標に指定可能な値と画面モードとの関係は、以下のようになっている。なお、座標値のDTX,DBXは4の倍数になるように設定する必要がある。したがって、最小画面サイズは、横4ピクセル、縦2ピクセル(ノンインターレス時)又は4ピクセル(インターレス時)になる。
【0065】
〔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ビットダイレクトモード(以下16ビットモードと呼ぶ)は32768色表示モードである。この16ビットモードでは、24ビットダイレクトモード(以下24ビットモードと呼ぶ)に較べ表示色数に限りはあるが、描画時のGPU62内部での色計算は24ビットで行われ、また、いわゆるディザ機能も搭載しているので、疑似フルカラー(24ビットカラー)表示が可能となっている。また、上記24ビットモードは、16777216色(フルカラー)表示のモードである。但し、フレームバッファ63内に転送されたイメージデータの表示(ビットマップ表示)のみが可能で、GPU62の描画機能を実行することはできない。ここで、1ピクセルのビット長は24ビットとなるが、フレームバッファ63上での座標や表示位置の値は16ビットを基準として指定する必要がある。すなわち、640×480の24ビット画像データは、フレームバッファ63中では960×480として扱われる。また、前記座標値DBXは8の倍数になるように設定する必要があり、したがって、この24ビットモードでの最小画面サイズは横8×縦2ピクセルになる。
【0066】
また、GPU63には次のような描画機能が搭載されている。
【0067】
先ず、1×1ドット〜256×256ドットのポリゴン又はスプライトに対して、4ビットCLUT(4ビットモード、16色/ポリゴン又はスプライト)や8ビットCLUT(8ビットモード、256色/ポリゴン又はスプライト),16ビットCLUT(16ビットモード、32768色/ポリゴン又はスプライト)等が可能なポリゴン又はスプライト描画機能と、
ポリゴンやスプライト(三角形や四角形等の多角形)の各頂点の画面上の座標を指定して描画を行うと共に、ポリゴンやスプライト内部を同一色で塗りつぶすフラットシェーディング、各頂点に異なる色を指定して内部をグラデーションするグーローシェーディング、ポリゴンやスプライト表面に2次元のイメージデータ(テクスチャパターン、特にスプライトに対するものをスプライトパターンと呼ぶ)を用意して張り付けるテクスチャマッピング等を行うポリゴン描画機能と、
グラデーションが可能な直線描画機能と、
CPU51からフレームバッファ63への転送、フレームバッファ63からCPU51への転送、フレームバッファ63からフレームバッファ63への転送等のイメージ転送機能と、
その他の機能として、各ピクセルの平均をとって半透明化する機能(各ピクセルのピクセルデータを所定比率αで混合することからαブレンディング機能と呼ばれる)、色の境界にノイズを乗せてぼかすディザ機能、描画エリアを越えた部分を表示しない描画クリッピング機能、描画エリアに応じて描画原点を動かすオフセット指定機能等がある。
【0068】
また、描画を行う座標系は符号付きの11ビットを単位としており、X,Yそれぞれに−1024〜+1023の値をとる。また、図4に示すように、本構成例でのフレームバッファ63のサイズは1024×512となっているので、はみ出した部分は折り返すようになっている。描画座標の原点は、座標値のオフセット値を任意に設定する機能により、フレームバッファ63内で自由に変更することができる。また、描画は、描画クリッピング機能により、フレームバッファ63内の任意の矩形領域に対してのみ行われる。
【0069】
さらに、GPU62は、最大256×256ドットのテクスチャをサポートしており、縦,横それぞれの値を自由に設定することができる。
【0070】
上記ポリゴン又はスプライトに張りつけるイメージデータ(テクスチャパターン又はスプライトパターン)は、図5に示すように、フレームバッファ63の非表示領域に配置する。テクスチャパターン又はスプライトパターンは、描画コマンド実行に先立ってフレームバッファ63に転送される。テクスチャパターン又はスプライトパターンは、256×256ピクセルを1ページとして、フレームバッファ63上にメモリの許す限り何枚でも置くことができ、この256×256の領域をテクスチャページと呼んでいる。1枚のテクスチャページの場所は、描画コマンドのTSBと呼ぶテクスチャページの位置(アドレス)指定のためのパラメータに、ページ番号を指定することで決定される。
【0071】
テクスチャパターン又はスプライトパターンには、4ビットCLUT(4ビットモード)、8ビットCLUT(8ビットモード)、16ビットCLUT(16ビットモード)の3種類の色モードがある。4ビットCLUT及び8ビットCLUTの色モードでは、CLUTを使用する。
【0072】
1つのCLUTは、図6に示すように、最終的に表示される色を表す3原色のR,G,B値が1次元的に16乃至256個、フレームバッファ63上に並んだものである。各R,G,B値はフレームバッファ63上の左から順に番号付けされており、テクスチャパターン又はスプライトパターンはこの番号により各ピクセルの色を表す。また、CLUTはポリゴン又はスプライト単位で選択でき、全てのポリゴン又はスプライトに対して独立したCLUTを持つことも可能である。また、図6において、後述するように1個のエントリは16ビットモードの1ピクセルと同じ構造となっており、したがって、1セットのCLUTは1×16(4ビットモード時)、1×255(8ビットモード時)のイメージデータと等しくなる。フレームバッファ63内でのCLUTの格納位置は、描画コマンド内のCBAと呼ぶCLUTの位置(アドレス)指定のためのパラメータに、使用するCLUTの左端の座標を指定することで決定する。本構成例では、フレームバッファ63上にこのような1次元的なCLUTの複数個を2次元的に配置するようにしている。
【0073】
さらに、ポリゴン又はスプライト描画の概念を模式的に示すと図7のように表すことができる。なお、図7の例ではスプライトを例に挙げている。また図7中の描画コマンドのU,Vはテクスチャページのどの位置かを横(U),縦(V)で指定するパラメータであり、X,Yは描画エリアの位置を指定するためのパラメータである。
【0074】
また、GPU62は、動画表示の方式として、フレームダブルバッファリングという手法を用いるようにしている。このフレームダブルバッファリングとは、図8に示すように、フレームバッファ63上に2つの矩形領域を用意し、一方のエリアに描画をしている間はもう片側を表示し、描画が終了したら2つのエリアをお互いに交換するものである。これにより、書き換えの様子が表示されるのを回避することができることになる。なお、バッファの切り換え操作は、垂直帰線期間内に行う。また、GPU62では、描画の対象となる矩形領域と座標系の原点を自由に設定できるので、この2つを移動させることにより、複数のバッファを実現することも可能である。
【0075】
次に、本構成例の画像処理システムが扱う本発明の画像イメージデータのフォーマット(TIMフォーマット)について説明する。
【0076】
このTIMフォーマットのデータ(以下TIMデータと呼ぶ)は本構成例画像処理システムのフレームバッファ63へ直接転送することができ、また、スプライトパターンやテクスチャパターンとして3次元テクスチャマッピングの素材としても使用できるものである。
【0077】
先ず、本構成例システムで扱うことのできるイメージデータには、次の4種類のモード(イメージデータのモード)がある。すなわち、4ビットCLUT(16色)のモード(4ビットモード)と、8ビットCLUT(256色)のモード(8ビットモード)と、16ビットダイレクトカラー(32768色)のモード(16ビットモード)と、24ビットダイレクトカラー(フルカラー)のモード(24ビットモード)である。ここで、本構成例システムのフレームバッファ63は、16ビット構成となっているので、フレームバッファ63に直接転送して表示できるデータは、16ビットモード、24ビットモードの2つのみとなる。但し、スプライトパターン或いはポリゴンのテクスチャマッピングデータとして使用する場合には、4ビットモード、8ビットモード、16ビットモードの各モードから選択することができる。
【0078】
上記TIMフォーマットのファイル(以下TIMファイルと呼ぶ)は、図9に示すように、先頭にファイルヘッダ(ID)を持ち、幾つかのブロックから構成されている。各データの形式は、32ビットバイナリのデータ列となっており、リトルエンディアン(Little Endian )であるため、多バイトデータのバイト順は、図10に示すように下位バイトが先(若い番号を持つ)になる。
【0079】
以下TIMファイルについて順に説明する。
【0080】
図9のID部は、ファイルIDを表し、このファイルIDは1ワードのデータで、ビット構成は図11のようになっている。なお、この図11において、ビット0〜7はIDであり、その値は例えば0x10となっている。また、ビット8〜15はバージョンナンバであり、その値は0x00となっている。
【0081】
図9のFLAGは、データ構造に関する情報を持った32ビット長のデータであり、ビット構成は図12のようになっている。なお、複数のスプライトパターンやテクスチャマッピングデータをパックして1つのTIMデータファイルとすることができる。これにより複数のTIMデータから1つのテクスチャページを構成することができる。この場合、異なるモードのデータが混在するため、図12中のPMODEの値は4(混在)となる。また、図12中のビット0〜3(PMODE) はピクセルのモード(ビット長)を表し、0のとき4ビットCLUT(4ビットモード)、1のとき8ビットCLUT(8ビットモード)、2のとき16ビットダイレクト(16ビットモード)、3のとき24ビットダイレクト(24ビットモード)、4のとき混在となる。さらに図12中のビット4(CF)はCLUTが存在するかどうかを示し、0のときCLUT部なし、1のときCLUT部ありを示す。その他のビットは全て0の値が入りリザーブされている。
【0082】
図9のCLUT部は、図13のように先頭にCLUT部のバイト数(bnum)があり、その後にフレームバッファ63内の位置情報、イメージサイズ、データ本体が続く構成となっている。このCLUTとはカラーパレットに相当し、色モードが4ビットモード,8ビットモードのイメージデータがこれを使用する。TIMファイルがCLUT部を持つかどうかは、ヘッダ部(ID部)のFLAG中のCFフラグで指定し、CFフラグが1の場合はTIMファイルはCLUTを持つ。なお、図13中のbnumはCLUT部のデータ長を表し(bnumの4バイトを含む)、単位はバイトである。また、同図中DXはフレームバッファ中でのx座標を、DYはフレームバッファ中でのy座標を示す。さらに同図中Hはデータの縦方向の大きさを、Wはデータの横方向の大きさを示し、CLUT1〜CLUTnはCLUTエントリ(16ビット/エントリ)である。
【0083】
ここで、4ビットモードの場合は16個、8ビットモードの場合は256個のCLUTエントリで1セットのCLUTを構成する。本構成例システムでは、CLUTはフレームバッファ63上に配置されるので、TIMファイルのCLUT部は矩形のフレームバッファイメージとして扱われる。すなわち、1つのCLUTエントリは、フレームバッファ中では1ピクセルと等価となる。このため、1セットのCLUTは、4ビットモードの場合は高さ1で幅16、8ビットモードの場合は高さ1で幅256の矩形イメージデータとして扱われる。
【0084】
また、本構成例のように1つのTIMファイルの中に複数セットのCLUTを持つことも可能であり、この場合、上記の1セットのCLUTが複数組み合わさった領域を、1個のイメージデータとしてCLUT部中に配置する。1個のCLUTエントリすなわち1つの色を表す構成は図14のようになっている。なお、図14中のSTPは透明制御ビットで、Rは赤色成分(5ビット)、Gは緑色成分(5ビット)、Bは青色成分(5ビット)である。
【0085】
透明制御ビット(STP) は、スプライトデータやテクスチャデータとして用いる場合に有効であり、これは描画を行うスプライト、ポリゴンの該当ピクセルが透明であるかどうかを制御するものである。当該透明制御ビット(STP) の値が1の場合は半透明色、それ以外の場合は不透明色になる。R,G,Bの各ビットは、色の成分を制御するもので、これらの値が全て0で、かつ透明制御ビット(STP) の値が0の場合は透明色となる。それ以外の場合は通常色(不透明)となる。これらの関係を表すと以下のようになる。
【0086】
Figure 0003547236
次に図9のPixel(ピクセル)データ部は、イメージデータの本体である。本構成例システムのフレームバッファ63は16ビット構成なので、イメージデータは16ビット単位で区切られている。当該ピクセルデータの構成は、図15のようになっている。なお、この図15中bnumはピクセルデータ部のデータ長を表し、単位はバイト単位であり、bnumの4バイトを含んでいる。また、同図中DXはフレームバッファ中でのx座標を、DYはフレームバッファ中でのy座標を示す。さらに同図中Hはデータの縦方向の大きさを、Wはデータの横方向の大きさを示し、DATA1〜DATAnはフレームバッファデータ(16ビット)である。テクスチャページは、256×256で構成されるため、H及びWはそれぞれ256以下の値をとる。そして、複数のピクセルデータにより、1枚のテクスチャページのフレームバッファデータを構成できるようになっている。
【0087】
また、1個のフレームバッファデータ(16ビット)の構成は、イメージデータのモードによって異なる。
【0088】
各モードの構成は、図16に示すようになっている。この図16の(a)は4ビットモードの場合を示し、図中pix0〜3はピクセル値(CLUTナンバ)であり、画面上での並び順は左からpix0,1,2,3の順である。図16の(b)は8ビットモードの場合を示し、図中pix0〜1はピクセル値(CLUTナンバ)であり、画面上での並び順は左からpix0,1の順である。図16の(c)は16ビットモードの場合を示し、図中STPは透明制御ビット(CLUT部と同様)で、Rは赤色成分(5ビット)、Gは緑色成分(5ビット)、Bは青色成分(5ビット)である。図16の(c)は24ビットモードの場合を示し、図中Rnは赤色成分(8ビット)、Gnは緑色成分(8ビット)Bnは青色成分(8ビット)を示す。24ビットモードの場合は、16ビットのデータ3個で2ピクセル分のデータに相当する。(R0,G0,B0)が左側のピクセル、(R1,R2,B1)が右側のピクセルを表す。
【0089】
なお、TIMデータ内のピクセルデータの大きさには注意が必要であり、上記W値(横幅)は16ビットピクセル単位であるため4ビット/8ビットモードの場合は実際のイメージサイズの1/4,1/2になる。したがって、4ビットモードの場合はイメージサイズの横幅は4の倍数、8ビットモードの場合にはイメージサイズは偶数でなければならない。
【0090】
【発明の効果】
以上の説明からも明らかなように、本発明においては、イメージデータを複数に分割したときの任意領域に対応して色情報テーブルを記憶し、描画命令に応じて、このイメージデータの任意領域に対応する色情報テーブルから色情報を読み出し、この色情報に応じてイメージデータを描画するようにしたことにより、より多くの色を表現することが可能となり、さらに処理の簡略化をも可能となっている。
【図面の簡単な説明】
【図1】本発明構成例の画像情報システムの概略的な構成を示すブロック回路図である。
【図2】ディスプレイ上への表示について説明するための図である。
【図3】ディスプレイ上の表示の設定について説明するための図である。
【図4】描画クリッピングの機能について説明するための図である。
【図5】テクスチャページについて説明するための図である。
【図6】CLUT構造について説明するための図である。
【図7】ポリゴン又はスプライト描画の概念を説明するための図である。
【図8】フレームダブルバッファリングについて説明するための図である。
【図9】TIMファイルフォーマットを示す図である。
【図10】ファイル内でのバイト順について説明するための図である。
【図11】TIMファイルフォーマット内のID部の構成を示す図である。
【図12】TIMファイルフォーマット内のFLAG部の構成を示す図である。
【図13】TIMファイルフォーマット内のCLUT部の構成を示す図である。
【図14】CLUTエントリの構成を示す図である。
【図15】TIMファイルフォーマット内のピクセルデータ部の構成を示す図である。
【図16】イメージデータの各モードの構成を示す図である。
【図17】従来の画像作成装置(家庭用ゲーム機)の構成例を示すブロック回路図である。
【図18】従来の画像作成装置による画像作成方法の説明に用いる図である。
【図19】従来のピクセルデータの配置を説明するための図である。
【図20】従来のカラールックアップテーブルの配置を説明するための図である。
【符号の説明】
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ポート[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to an image information generating apparatus and method for creating image information by information processing, and an image information processing apparatus and method.
[0002]
[Prior art]
For example, in a home game machine, a personal computer device, a graphic computer device, or the like, most of the images output and displayed on a television receiver, a monitor receiver, a CRT display device, or the like are two-dimensional. , An image is displayed in such a form that a two-dimensional character or the like is appropriately arranged on a two-dimensional background and moved or changed.
[0003]
However, in the above-described two-dimensional image display or video, there are limitations on expressible backgrounds and characters and their movements, and for example, it is difficult to enhance the sense of reality of the game.
[0004]
Therefore, for example, a pseudo three-dimensional image or video is created by the following method. That is, images viewed from several directions are prepared as the character, and one of these images is selected and displayed according to a change in the viewpoint on the display screen or the like. To represent a pseudo three-dimensional image by superimposing the images in the depth direction. When generating or creating image data, a texture mapping method such as attaching a so-called texture (fabric, ground pattern) image to a desired surface such as a polyhedron or the like, and color data of the image through a so-called color lookup table. A method of changing a display color by conversion is employed.
[0005]
Here, an example of a schematic configuration of a conventional home game machine is shown in FIG. In FIG. 17, a CPU 391 including a microprocessor or the like extracts operation information of an input device 394 such as an input pad or a joystick through a main bus 399 via an interface 393. Simultaneously with the extraction of the operation information, the data of the three-dimensional image stored in the main memory 392 is transferred to the source video memory 395 by the video processor 396 and stored.
[0006]
Further, the CPU 391 sends to the video processor 396 a reading order of image data for superimposing and displaying images stored in the source video memory 395. The video processor 396 reads the image data from the source video memory 395 in accordance with the reading order of the image data, and superimposes and displays the images.
[0007]
At the same time as displaying the image as described above, the audio processor 397 outputs audio data corresponding to the displayed image stored in the audio memory 398 based on the audio information in the extracted operation information.
[0008]
FIG. 18 is a diagram showing a procedure for outputting a three-dimensional image using data of a two-dimensional image in a consumer game machine having the configuration shown in FIG. FIG. 18 illustrates a case where a cylindrical object is displayed as a three-dimensional image on a checkered background image.
[0009]
The source video memory 395 in FIG. 18 stores a checkered background image 200 and a rectangular image representing a cross section in the depth direction of a cylindrical object on the background image 200, so-called sprites 201, 202, 203, and 204. Is stored. It should be noted that a polygon having more than a triangle is called a polygon, and a quadrilateral polygon is particularly called a sprite. Portions other than the image of the cross section of the cylinder on the sprites 201, 202, 203, and 204, which are rectangular images, are drawn in a transparent color.
[0010]
The sync generator 400 in the video processor 396 generates a read address signal according to the synchronization signal of the image to be displayed. The sync generator 400 sends the read address signal to the read address table 401 provided from the CPU 391 in FIG. 17 via the main bus 399. Further, the sync generator 400 reads the image data in the source video memory 395 according to the information from the read address table 401.
[0011]
The read image data is sequentially superimposed by the superimposition processing unit 403 based on the superimposition order of the images in the priority table 402 provided via the main bus 399 by the CPU 391. In this case, the background image 200 has the lowest rank and the rectangular images 201, 202, 203, and 204 have higher ranks in this order.
[0012]
Next, in the transparent color processing unit 404, in order to display a portion other than the cylinder as a background image, a portion other than the cylinder displayed by the images 201, 202, 203, and 204 of the cross section of the overlapped cylinder is made transparent. Is performed.
[0013]
By the above-described processing, the data of the two-dimensional image of the cylindrical object is output as the image data of the three-dimensional image VD0 shown in FIG.
[0014]
[Problems to be solved by the invention]
Incidentally, the source video memory 395 includes a pixel data storage area in which each pixel data is two-dimensionally arranged as shown by a small rectangular portion in FIG. Are divided and used for a color lookup table area arranged one-dimensionally.
[0015]
However, the color look-up table is a one-dimensional table corresponding to the horizontal direction of the source video memory 395 as shown in FIG. 20, for example. It depends on the size of the direction, which makes it difficult to represent more colors.
[0016]
The present invention provides an image information generating apparatus and method for generating image information capable of expressing more colors and further simplifying processing, an image information processing apparatus for processing the image information, and It provides a method.
[0017]
[Means for Solving the Problems]
In the image information generating apparatus and method of the present invention, image data composed of a plurality of pixel data is stored, and a color information table of the pixel data corresponding to an arbitrary area of the image data divided into a plurality is stored. In order to solve the above-described problem, color information is read from a color information table corresponding to an arbitrary area of the image data according to a drawing command, and image data is drawn according to the color information from the color information table.
[0018]
Also, in the image information processing apparatus and method of the present invention, the image data composed of a plurality of pixel data read from a recording medium is stored, and the image data divided into a plurality of image data read from the recording medium is stored. The color information table of the pixel data corresponding to the arbitrary area is stored, and the color information is read from the color information table corresponding to the arbitrary area of the image data according to the drawing command, and the color information from the color information table is read. The above-mentioned problem is solved by drawing image data in accordance with (1), reading out the drawn image data and outputting it to the display means.
[0019]
That is, according to the present invention, by associating the color information table with each arbitrary area obtained by dividing the image data into a plurality of parts, more colors can be expressed and the processing is simplified.
[0020]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, preferred embodiments of the present invention will be described with reference to the drawings.
[0021]
First, an image processing system that generates and displays three-dimensional graphics data from image data (image data, hereinafter referred to as TIM data) using the image information generation method and the image information processing method of the present invention will be described. . The image processing system of this configuration example is applied to, for example, a home game machine, a personal computer device, a graphic computer device, or the like, and the example of FIG. 1 shows an example in which the image processing system is applied to a home game machine.
[0022]
The image processing system according to this configuration example is an image data format (hereinafter referred to as a TIM format) according to the present invention described below, which is recorded on a recording medium, for example, an optical disk (for example, a disk-shaped recording medium such as a CD-ROM). ) By reading and executing data (for example, a game program) including the data of (i), a game or the like can be performed in response to an instruction from a user. Specifically, the configuration shown in FIG. are doing.
[0023]
The image processing system of this configuration example is a geometry transfer engine (GTE) as conversion drawing means for converting three-dimensional image information read from a CD-ROM disk into two-dimensional image information drawn on a two-dimensional display screen. 61 and a graphics processing unit (GPU 62), and an image information storage area for storing image information, that is, an image data area (eg, a texture area to be described later) as first storage means for storing image data including a plurality of pixel data. ) And a plurality of color information tables (color look-up tables, hereinafter referred to as CLUTs) in which color information having substantially the same format structure as that of pixel information (pixel data) constituting an image, which has substantially the same format structure as described later, are arranged in one dimension. Color information table that stores two-dimensionally In which and a frame buffer 63 as a memory means having at least a storage area (CLUT area). In the color information table storage area of the frame buffer 63, a color information table corresponding to an arbitrary area when the image data is divided into a plurality of pieces is stored. As described above, in the present configuration example, the structure of each color information of a one-dimensional CLUT including a plurality of pieces of color information is made substantially the same as the structure of each pixel data forming an image, thereby processing image information. And the processing of the color information can be unified, so that the processing can be simplified. Further, according to this configuration example, by arranging a plurality of one-dimensional CLUTs two-dimensionally, for example, more color information can be stored on the memory means. Further, by arranging a CLUT corresponding to an arbitrary area when the image data is divided into a plurality of parts, it is possible to express more colors.
[0024]
That is, the image processing system includes a control system 50 including a central processing unit (CPU 51) and its peripheral devices (peripheral device controller 52 and the like), a graphics processing unit (GPU 62) for drawing on the frame buffer 63, and the like. A graphic system 60, a sound system 70 including a sound processing unit (SPU 71) for generating musical tones, sound effects, and the like, and control of an optical disk (CD-ROM disk) drive 81 as an auxiliary storage device and decoding of reproduction information And a communication control unit 90 that controls input and output from an auxiliary memory (memory card 93) that stores an instruction input from a controller 92 for inputting an instruction from a user and game settings, and the like. And communication control from the control system 50 And a main bus B, etc. until 90 are connected.
[0025]
The control system 50 includes a CPU 51, a peripheral device controller 52 that performs interrupt control, time control, memory control, direct memory access (DMA) transfer control, and the like, and a main storage device (main memory) including, for example, 2 megabytes of RAM. And a ROM 54 of, for example, 512 kilobytes in which a program such as a so-called operating system for managing the main memory 53, the graphic system 60, the sound system 70, and the like is stored.
[0026]
The CPU 51 is, for example, a 32-bit reduced instruction set computer (RISC) CPU, and controls the entire apparatus by executing an operating system stored in the ROM 54. The CPU 51 has an instruction cache and a scratch pad memory, and also manages a real memory.
[0027]
The graphic system 60 includes a geometry transfer engine (GTE) 61 including a coprocessor for coordinate calculation for performing processing such as coordinate conversion, and a graphics processing unit (GPU) 62 for performing drawing in accordance with a drawing instruction (drawing command) from the CPU 51. And a frame buffer 63 of, for example, 1 megabyte for storing an image drawn by the GPU 62, and an image decoder (hereinafter referred to as MDEC) for decoding image data which has been subjected to orthogonal transform such as so-called discrete cosine transform and further compressed and encoded. 64).
[0028]
The GTE 61 includes, for example, a parallel operation mechanism that executes a plurality of operations in parallel. As a coprocessor of the CPU 51, the GTE 61 performs coordinate transformation such as perspective transformation and an inner product operation of a normal vector and a light source vector in response to an operation request from the CPU 51. Light source calculations, for example, calculations on fixed-point matrices and vectors, can be performed at high speed.
[0029]
More specifically, the GTE 61 can perform a coordinate calculation of a maximum of about 1.5 million polygons per second in the case of performing the flat shading for drawing the same color on one triangular polygon. Accordingly, in this image processing system, the load on the CPU 51 can be reduced, and high-speed coordinate calculation can be performed. The polygon is a minimum unit of a figure for forming a three-dimensional object displayed on the display, and is a polygon such as a triangle or a quadrangle.
[0030]
The GPU 62 operates according to a polygon drawing command from the CPU 51 and draws a polygon (polygon) or the like on the frame buffer 63. The GPU 62 is capable of rendering a maximum of about 360,000 polygons per second. The GPU 62 has a two-dimensional address space independent of the CPU 51, and the frame buffer 63 is mapped in the two-dimensional address space.
[0031]
The frame buffer 63 is formed of a so-called dual-port RAM, and can simultaneously perform drawing from the GPU 62 or transfer from the main memory 53 and reading for display.
[0032]
The frame buffer 63 has a capacity of, for example, 1 megabyte, and is handled as a matrix of 1024 horizontal pixels and 512 vertical pixels each having 16 bits.
[0033]
An arbitrary display area of the frame buffer 63 can be output to video output means 65 such as a display device.
[0034]
In addition to the display area output as a video output, the frame buffer 63 stores a color lookup table (CLUT) that is referred to when the GPU 62 draws a polygon or the like. A texture area is provided for storing a material (texture) to be inserted (mapped) into a polygon or the like which is subjected to coordinate conversion and drawn by the GPU 62. The CLUT area is also adapted to correspond to an arbitrary area when the texture is divided into a plurality of pieces. Therefore, in the GPU 62, an arbitrary part of the texture data in the frame buffer 63 in accordance with the polygon drawing command. It is possible to read color information from a CLUT corresponding to an area and draw a polygon or the like according to the color information from the CLUT. The CLUT area and the texture area are dynamically changed according to a change in the display area. That is, the frame buffer 63 can perform drawing access to the area being displayed, and can also perform high-speed DMA transfer with the main memory 53.
[0035]
In addition to the flat shading described above, the GPU 62 performs Gouraud shading, which determines the color in the polygon by interpolating from the colors of the vertices of the polygon, and texture mapping, which pastes the texture stored in the texture area on the polygon. Can be done.
[0036]
When performing such Gouraud shading or texture mapping, the GTE 61 can perform a coordinate calculation of a maximum of about 500,000 polygons per second.
[0037]
The MDEC 64 decodes the still or moving image data read from the CD-ROM disk and stored in the main memory 53 under the control of the CPU 51 and stores the decoded data in the main memory 53 again. Specifically, the MDEC 64 can execute an inverse discrete cosine transform (inverse DCT) operation at a high speed, and can compress a color still image read from a CD-ROM disc (so-called JPEG) or a moving image encoding standard (accumulated media system). It is possible to decompress compressed data of so-called MPEG (only compression within a frame in this configuration example).
[0038]
The reproduced image data is stored in the frame buffer 63 via the GPU 62, so that the reproduced image data can be used as a background of the image drawn by the GPU 62.
[0039]
The sound system 70 includes a sound reproduction processing processor (SPU) 71 for generating musical tones and sound effects based on instructions from the CPU 51, data of sound and musical sounds read from a CD-ROM, sound source data, and the like. Are stored, for example, a 512-Kbyte sound buffer 72, and a speaker 73 as sound output means for outputting musical tones, sound effects, and the like generated by the SPU 71.
[0040]
The SPU 71 performs an ADPCM decoding function of reproducing audio data that has been subjected to adaptive differential coding (ADPCM) using 16-bit audio data as a 4-bit differential signal, and reproduces sound source data stored in the sound buffer 72. , A reproduction function of generating sound effects and the like, and a modulation function of modulating and reproducing audio data and the like stored in the sound buffer 72. That is, the SPU 71 has a built-in ADPCM sound source 24 voice having functions such as looping and automatic change of operation parameters using time as a system factor, and operates by operation from the CPU 51. The SPU 71 manages a unique address space to which the sound buffer 72 is mapped, transfers ADPCM data from the CPU 51 to the sound buffer 72, and reproduces data by directly passing key-on / key-off and modulation information.
[0041]
By providing such a function, the sound system 70 can be used as a so-called sampling sound source that generates musical tones, sound effects, and the like based on audio data and the like recorded in the sound buffer 72 in accordance with an instruction from the CPU 51. It has become.
[0042]
The optical disk control unit 80 includes a disk drive device 81 that reproduces programs, data, and the like recorded on an optical disk that is a CD-ROM disk, a program that is recorded with an error correction (ECC) code added thereto, A decoder 82 for decoding data and the like and a buffer 83 of, for example, 32 kilobytes for temporarily storing reproduction data from the disk drive device 81 are provided. That is, the optical disk control unit 80 includes components necessary for reading a disk, such as the drive device 81 and the decoder 82. Here, data such as CD-DA and CD-ROM XA can be supported as a disk format. The decoder 82 also constitutes a part of the sound system 70.
[0043]
The audio data recorded on the disk reproduced by the disk drive device 81 includes, in addition to the above-described ADPCM data (such as the CD-ROM XA ADPCM data), so-called PCM data obtained by converting an audio signal from analog to digital. is there.
[0044]
As ADPCM data, for example, audio data in which a difference between 16-bit digital data is represented by 4 bits and recorded is subjected to error correction and decoding by a decoder 82, and then supplied to the above-described SPU 71, where the SPU 71 converts the digital / digital data. After being subjected to processing such as analog conversion, it is used to drive the speaker 73.
[0045]
Further, audio data recorded as PCM data, for example, as 16-bit digital data, is decoded by the decoder 82 and then used to drive the speaker 73. The audio output of the decoder 82 enters the SPU 71 once, is mixed with the SPU output, and becomes the final audio output via the reverb unit.
[0046]
The communication control unit 90 includes a communication control device 91 that controls communication with the CPU 51 via the main bus B, a controller 92 that inputs instructions from a user, and a memory card 93 that stores game settings and the like. And
[0047]
The controller 92 is an interface for transmitting the user's intention to the application, and has, for example, 16 instruction keys for inputting an instruction from the user. Is transmitted to the communication control device 91 about 60 times per second by synchronous communication. Then, the communication control device 91 transmits the state of the instruction key of the controller 92 to the CPU 51. Note that the controller 92 has two connectors on the main body, and it is also possible to connect many controllers using a multi-tap.
[0048]
As a result, an instruction from the user is input to the CPU 51, and the CPU 51 performs processing according to the instruction from the user based on the game program or the like being executed.
[0049]
Further, the CPU 51 transmits the stored data to the communication control device 91 when it is necessary to store the settings of the game being executed, the end of the game, or the score during the game, or the like, and the communication control device 91 Is stored in the memory card 93.
[0050]
Since this memory card 93 is separated from the main bus B, it can be inserted and removed with the power on. As a result, game settings and the like can be stored in the plurality of memory cards 93.
[0051]
The configuration example system includes a 16-bit parallel input / output (I / O) port 101 connected to the main bus B and an asynchronous serial input / output (I / O) port 102.
[0052]
In addition, connection with peripheral devices can be performed via the parallel I / O port 101, and communication with other video game devices and the like can be performed via the serial I / O port 102. Is available.
[0053]
By the way, between the main memory 53, the GPU 62, the MDEC 64, the decoder 82, and the like, it is necessary to transfer a large amount of image data at high speed when reading a program, displaying an image, or drawing.
[0054]
Therefore, in this image processing system, as described above, the peripheral device Under the control of the controller 52, so-called DMA transfer for directly transferring data between the main memory 53, the GPU 62, the MDEC 64, the decoder 82, and the like can be performed.
[0055]
As a result, the load on the CPU 51 due to data transfer can be reduced, and high-speed data transfer can be performed.
[0056]
In this video game device, when the power is turned on, the CPU 51 executes the operating system stored in the ROM 54.
[0057]
By executing the operating system, the CPU 51 controls the graphic system 60, the sound system 70, and the like.
[0058]
When the operating system is executed, the CPU 51 initializes the entire apparatus such as operation check, and then controls the optical disk control unit 80 to execute a program such as a game recorded on the optical disk. I do.
[0059]
By executing a program such as a game, the CPU 51 controls the graphic system 60, the sound system 70, and the like in accordance with an input from a user to control display of an image, generation of sound effects, and generation of musical sounds. ing.
[0060]
Next, display on the display in the image processing system of this configuration example will be described.
[0061]
The GPU 62 displays the contents of an arbitrary rectangular area in the frame buffer 634 on a display such as a CRT of the video output unit 65 as it is. This area is hereinafter referred to as a display area. The relationship between the rectangular area and the display on the display screen is as shown in FIG.
[0062]
The GPU 62 supports the following ten screen modes.
[0063]
Figure 0003547236
The screen size, that is, the number of pixels on the display screen is variable. As shown in FIG. 3, the display start position (coordinates (DTX, DTY)) and the display end position (coordinates (DBX, DBY)) are independent of each other in the horizontal and vertical directions. Can be specified.
[0064]
The relationship between the value that can be specified for each coordinate and the screen mode is as follows. The coordinate values DTX and DBX need to be set to be a multiple of four. Therefore, the minimum screen size is 4 pixels horizontally, 2 pixels vertically (non-interlace) or 4 pixels (interlace).
[0065]
[Specifiable range of X coordinate]
[Mode] [DTX] [DBX]
0,40 0-276 4-280
1,5 0-348 4-352
2,60-556 4-560
3,7 0-700 4-704
8,90-396 4-400
[Specifiable range of Y coordinate]
[Mode] [DTY] [DBY]
0-3,80-241 2-243
4-7,90-480 4-484
Next, the GPU 62 supports two modes relating to the number of display colors: a 16-bit direct mode (32768 colors) and a 24-bit direct mode (full color). The 16-bit direct mode (hereinafter referred to as 16-bit mode) is a 32768-color display mode. In the 16-bit mode, the number of display colors is limited as compared with the 24-bit direct mode (hereinafter referred to as the 24-bit mode), but the color calculation inside the GPU 62 at the time of drawing is performed in 24 bits. , So that pseudo full color (24-bit color) display is possible. The 24-bit mode is a mode for displaying 16777216 colors (full color). However, only the display (bitmap display) of the image data transferred in the frame buffer 63 is possible, and the drawing function of the GPU 62 cannot be executed. Here, the bit length of one pixel is 24 bits, but the values of the coordinates and the display position on the frame buffer 63 need to be specified on the basis of 16 bits. That is, 640 × 480 24-bit image data is treated as 960 × 480 in the frame buffer 63. Further, the coordinate value DBX needs to be set to be a multiple of 8, so that the minimum screen size in this 24-bit mode is 8 × 2 pixels.
[0066]
The GPU 63 has the following drawing function.
[0067]
First, a 4-bit CLUT (4-bit mode, 16 colors / polygon or sprite) or an 8-bit CLUT (8-bit mode, 256 colors / polygon or sprite) for a polygon or sprite of 1 × 1 dot to 256 × 256 dots , 16-bit CLUT (16-bit mode, 32768 colors / polygon or sprite), etc.
Specifying the coordinates of each vertex of a polygon or sprite (a polygon such as a triangle or a quadrangle) on the screen and drawing it, flat shading that fills the inside of the polygon or sprite with the same color, and specifying a different color for each vertex A polygon drawing function that performs Gouraud shading for gradation inside, texture mapping that prepares and attaches two-dimensional image data (texture patterns, especially those for sprites are called sprite patterns) on the surfaces of polygons and sprites,
Straight line drawing function with gradation,
Image transfer functions such as transfer from the CPU 51 to the frame buffer 63, transfer from the frame buffer 63 to the CPU 51, transfer from the frame buffer 63 to the frame buffer 63,
Other functions include the function of translucent by taking the average of each pixel (referred to as the α blending function because pixel data of each pixel is mixed at a predetermined ratio α), and the dither function that blurs by adding noise to color boundaries And a drawing clipping function that does not display a portion beyond the drawing area, an offset designation function that moves the drawing origin according to the drawing area, and the like.
[0068]
Further, the coordinate system for drawing is in units of 11 bits with a sign, and each of X and Y takes a value of -1024 to +1023. Further, as shown in FIG. 4, the size of the frame buffer 63 in this configuration example is 1024 × 512, so that the protruding portion is folded back. The origin of the drawing coordinates can be freely changed in the frame buffer 63 by the function of arbitrarily setting the offset value of the coordinate values. The drawing is performed only on an arbitrary rectangular area in the frame buffer 63 by the drawing clipping function.
[0069]
Further, the GPU 62 supports a texture of a maximum of 256 × 256 dots, and the values of the vertical and horizontal can be freely set.
[0070]
The image data (texture pattern or sprite pattern) to be attached to the polygon or sprite is arranged in a non-display area of the frame buffer 63 as shown in FIG. The texture pattern or sprite pattern is transferred to the frame buffer 63 before executing the drawing command. The texture pattern or sprite pattern can be placed on the frame buffer 63 as many as the memory allows, with 256 × 256 pixels as one page, and this 256 × 256 area is called a texture page. The location of one texture page is determined by specifying the page number in a parameter for specifying the position (address) of the texture page called TSB of the drawing command.
[0071]
The texture pattern or the sprite pattern has three types of color modes: a 4-bit CLUT (4-bit mode), an 8-bit CLUT (8-bit mode), and a 16-bit CLUT (16-bit mode). In the 4-bit CLUT and 8-bit CLUT color modes, the CLUT is used.
[0072]
As shown in FIG. 6, one CLUT is one in which 16 to 256 R, G, and B values of three primary colors representing a color to be finally displayed are arranged on the frame buffer 63 in a one-dimensional manner. . The R, G, and B values are numbered sequentially from the left on the frame buffer 63, and the texture pattern or sprite pattern represents the color of each pixel by this number. The CLUT can be selected in units of polygons or sprites, and it is possible to have an independent CLUT for all polygons or sprites. In FIG. 6, one entry has the same structure as one pixel in the 16-bit mode, as described later. Therefore, one set of CLUTs is 1 × 16 (in the 4-bit mode) and 1 × 255 ( (In 8-bit mode). The storage position of the CLUT in the frame buffer 63 is determined by specifying the left end coordinate of the CLUT to be used as a parameter for specifying the position (address) of the CLUT called CBA in the drawing command. In this configuration example, a plurality of such one-dimensional CLUTs are arranged two-dimensionally on the frame buffer 63.
[0073]
Furthermore, the concept of polygon or sprite drawing can be schematically shown in FIG. In the example of FIG. 7, a sprite is taken as an example. In addition, U and V of the drawing command in FIG. 7 are parameters for specifying the position of the texture page in horizontal (U) and vertical (V), and X and Y are parameters for specifying the position of the drawing area. is there.
[0074]
The GPU 62 uses a method called frame double buffering as a moving image display method. This frame double buffering means, as shown in FIG. 8, that two rectangular areas are prepared on a frame buffer 63, the other side is displayed while one area is being drawn, and 2 The two areas are exchanged for each other. This makes it possible to avoid displaying the state of rewriting. Note that the buffer switching operation is performed during the vertical blanking period. In the GPU 62, since the rectangular area to be drawn and the origin of the coordinate system can be freely set, a plurality of buffers can be realized by moving the two.
[0075]
Next, the format (TIM format) of the image data of the present invention handled by the image processing system of this configuration example will be described.
[0076]
This TIM format data (hereinafter referred to as TIM data) can be directly transferred to the frame buffer 63 of the image processing system of the present configuration example, and can also be used as a material for three-dimensional texture mapping as a sprite pattern or a texture pattern. It is.
[0077]
First, image data that can be handled by the system of this configuration example has the following four modes (image data modes). That is, a 4-bit CLUT (16 colors) mode (4-bit mode), an 8-bit CLUT (256 colors) mode (8-bit mode), and a 16-bit direct color (32768 colors) mode (16-bit mode) , 24 bit direct color (full color) mode (24 bit mode). Here, since the frame buffer 63 of the system of the present configuration example has a 16-bit configuration, only two data of the 16-bit mode and the 24-bit mode can be directly transferred to the frame buffer 63 and displayed. However, when used as texture mapping data of a sprite pattern or polygon, the mode can be selected from 4-bit mode, 8-bit mode, and 16-bit mode.
[0078]
As shown in FIG. 9, a file in the TIM format (hereinafter referred to as a TIM file) has a file header (ID) at the beginning and is composed of several blocks. The format of each data is a 32-bit binary data string, which is little endian (Little Endian). Therefore, as shown in FIG. )become.
[0079]
Hereinafter, the TIM file will be described in order.
[0080]
The ID part in FIG. 9 represents a file ID. The file ID is one-word data, and the bit configuration is as shown in FIG. In FIG. 11, bits 0 to 7 are IDs, and the value is, for example, 0x10. Bits 8 to 15 are a version number, and the value is 0x00.
[0081]
FLAG in FIG. 9 is 32-bit data having information on the data structure, and has a bit configuration as shown in FIG. A plurality of sprite patterns and texture mapping data can be packed into one TIM data file. As a result, one texture page can be configured from a plurality of TIM data. In this case, since data of different modes are mixed, the value of PMODE in FIG. 12 is 4 (mixed). Also, bits 0 to 3 (PMODE) in FIG. 12 represent the mode (bit length) of the pixel, and when 0, 4-bit CLUT (4-bit mode), when 1, 8-bit CLUT (8-bit mode), 2 When 16-bit direct (16-bit mode), 3 is 24-bit direct (24-bit mode), and 4 is mixed. Further, bit 4 (CF) in FIG. 12 indicates whether or not a CLUT exists, and when 0, indicates that there is no CLUT section, and when 1, it indicates that there is a CLUT section. All other bits are reserved with 0 values.
[0082]
The CLUT unit in FIG. 9 has a configuration in which the number of bytes (bnum) of the CLUT unit is at the head as shown in FIG. 13, followed by the position information in the frame buffer 63, the image size, and the data body. The CLUT corresponds to a color pallet, and the image data in the color mode of 4-bit mode or 8-bit mode uses this. Whether the TIM file has a CLUT part is specified by a CF flag in the FLAG of the header part (ID part). When the CF flag is 1, the TIM file has a CLUT. Note that bnum in FIG. 13 represents the data length of the CLUT unit (including 4 bytes of bnum), and the unit is byte. In the same figure, DX indicates the x coordinate in the frame buffer, and DY indicates the y coordinate in the frame buffer. Further, in the figure, H indicates the size of data in the vertical direction, W indicates the size of data in the horizontal direction, and CLUT1 to CLUTn indicate CLUT entries (16 bits / entry).
[0083]
Here, a set of CLUTs is composed of 16 CLUT entries in the case of the 4-bit mode and 256 CLUT entries in the case of the 8-bit mode. In the system of this configuration example, since the CLUT is arranged on the frame buffer 63, the CLUT section of the TIM file is treated as a rectangular frame buffer image. That is, one CLUT entry is equivalent to one pixel in the frame buffer. Therefore, one set of CLUTs is treated as rectangular image data having a height of 1 and a width of 16 in the 4-bit mode, and a height of 1 and a width of 256 in the 8-bit mode.
[0084]
It is also possible to have a plurality of sets of CLUTs in one TIM file as in the present configuration example. In this case, an area in which a plurality of sets of the CLUTs are combined is defined as one piece of image data. It is arranged in the CLUT section. FIG. 14 shows a configuration representing one CLUT entry, that is, one color. In FIG. 14, STP is a transparency control bit, R is a red component (5 bits), G is a green component (5 bits), and B is a blue component (5 bits).
[0085]
The transparency control bit (STP) is effective when used as sprite data or texture data, and controls whether a sprite to be drawn or a corresponding pixel of a polygon is transparent. When the value of the transparency control bit (STP) is 1, the color is translucent, and otherwise, the color is opaque. The R, G, and B bits control color components. When all of these values are 0 and the value of the transparent control bit (STP) is 0, the color is transparent. Otherwise, the color is normal (opaque). The relationship is as follows.
[0086]
Figure 0003547236
Next, the Pixel (pixel) data part of FIG. 9 is the main body of the image data. Since the frame buffer 63 of the system of this configuration example has a 16-bit configuration, the image data is divided in units of 16 bits. The configuration of the pixel data is as shown in FIG. Note that bnum in FIG. 15 represents the data length of the pixel data portion, and the unit is byte unit, and includes 4 bytes of bnum. In the same figure, DX indicates the x coordinate in the frame buffer, and DY indicates the y coordinate in the frame buffer. Further, in the figure, H indicates the size of data in the vertical direction, W indicates the size of data in the horizontal direction, and DATA1 to DATAn indicate frame buffer data (16 bits). Since the texture page is composed of 256 × 256, H and W each take a value of 256 or less. Then, frame buffer data of one texture page can be constituted by a plurality of pixel data.
[0087]
The configuration of one frame buffer data (16 bits) differs depending on the mode of the image data.
[0088]
The configuration of each mode is as shown in FIG. FIG. 16A shows the case of the 4-bit mode, where pix0 to pix3 are pixel values (CLUT numbers), and the arrangement order on the screen is pix0, 1, 2, 3 from the left. is there. FIG. 16B shows the case of the 8-bit mode, where pix0 to pix1 are pixel values (CLUT numbers), and the arrangement order on the screen is pix0, 1 from the left. FIG. 16C shows the case of the 16-bit mode, in which STP is a transparent control bit (similar to the CLUT unit), R is a red component (5 bits), G is a green component (5 bits), and B is Blue component (5 bits). FIG. 16C shows the case of the 24-bit mode, in which Rn represents a red component (8 bits), Gn represents a green component (8 bits), and Bn represents a blue component (8 bits). In the case of the 24-bit mode, three 16-bit data correspond to data for two pixels. (R0, G0, B0) represents the left pixel, and (R1, R2, B1) represents the right pixel.
[0089]
It is necessary to pay attention to the size of the pixel data in the TIM data. Since the W value (width) is in units of 16-bit pixels, in the case of the 4-bit / 8-bit mode, it is 1/4 of the actual image size. , 1/2. Therefore, in the case of the 4-bit mode, the width of the image size must be a multiple of 4, and in the case of the 8-bit mode, the image size must be an even number.
[0090]
【The invention's effect】
As is clear from the above description, in the present invention, the color information table is stored in correspondence with an arbitrary area when the image data is divided into a plurality of pieces, and is stored in an arbitrary area of the image data in accordance with the drawing command. By reading the color information from the corresponding color information table and rendering the image data in accordance with the color information, more colors can be expressed, and the processing can be further simplified. ing.
[Brief description of the drawings]
FIG. 1 is a block circuit diagram illustrating a schematic configuration of an image information system according to a configuration example of the present invention.
FIG. 2 is a diagram for describing display on a display.
FIG. 3 is a diagram for describing display settings on a display.
FIG. 4 is a diagram for explaining a drawing clipping function;
FIG. 5 is a diagram illustrating a texture page.
FIG. 6 is a diagram for explaining a CLUT structure.
FIG. 7 is a diagram for explaining the concept of polygon or sprite drawing.
FIG. 8 is a diagram for explaining frame double buffering.
FIG. 9 is a diagram showing a TIM file format.
FIG. 10 is a diagram for describing a byte order in a file.
FIG. 11 is a diagram showing a configuration of an ID part in a TIM file format.
FIG. 12 is a diagram showing a configuration of a FLAG unit in a TIM file format.
FIG. 13 is a diagram showing a configuration of a CLUT unit in a TIM file format.
FIG. 14 is a diagram showing a configuration of a CLUT entry.
FIG. 15 is a diagram showing a configuration of a pixel data section in a TIM file format.
FIG. 16 is a diagram illustrating a configuration of each mode of image data.
FIG. 17 is a block circuit diagram illustrating a configuration example of a conventional image creating apparatus (home game machine).
FIG. 18 is a diagram used to describe an image creation method by a conventional image creation device.
FIG. 19 is a diagram for explaining a conventional arrangement of pixel data.
FIG. 20 is a diagram for explaining an arrangement of a conventional color lookup table.
[Explanation of symbols]
51 CPU
52 Peripheral device controller
53 Main memory
54 ROM
60 Graphic System
61 Geometry Transfer Engine (GTE)
62 Graphics Processing Unit
63 frame buffer
64 image decoder (MDEC)
65 Video output means (display device)
70 sound system
71 Sound Processing Unit (SPU)
72 sound buffer
73 speaker
80 Optical disk controller
81 Disk Drive Unit
82 decoder
83 buffers
90 Communication control unit
91 Communication controller
92 Controller
93 Memory card
101 Parallel I / O port
102 Serial I / O port

Claims (10)

描画命令に応じて描画を行う描画手段と記憶手段とを備えた画像情報生成装置であって、
上記描画手段は、画像イメージフォーマットのデータを読み出してイメージデータの描画を行うものであり、
上記画像イメージフォーマットのデータは、イメージデータを構成する複数のピクセルデータを含んだピクセルデータ部と、上記記憶手段上に色情報テーブルを書き込むための色情報テーブル部とを有し、
上記色情報テーブル部と上記ピクセルデータ部とにそれぞれフォーマットが予め定められており、上記色情報テーブルに対して定められたフォーマット構造と、前記ピクセルデータ部に定められたフォーマット構造とは略同一とされたものであることを特徴とする、画像情報生成装置。
An image information generating apparatus comprising: a drawing unit that performs drawing in accordance with a drawing command; and a storage unit,
The drawing means is for reading image data in an image format and drawing the image data.
The image data has a pixel data section including a plurality of pixel data constituting the image data, and a color information table section for writing a color information table on the storage means,
The format is predetermined in each of the color information table section and the pixel data section, and the format structure defined in the color information table is substantially the same as the format structure defined in the pixel data section. An image information generating apparatus, characterized in that the image information generating apparatus has been processed.
上記描画手段は、上記描画命令によって上記色情報テーブルを読み出して当該色情報テーブルからの色情報に応じてイメージデータを描画する動作モードと、上記パラメータ及び上記色情報テーブルを用いずに描画を行う動作モードと、を実行することが可能であり、
上記ピクセルデータを含んだ所定の画像イメージフォーマットのデータには、上記動作モードのうちいずれの動作モードで描画を行うかを表すモード情報が含まれ、
更に、上記描画手段は、上記モード情報に応じた動作モードで描画を行うものである、請求項記載の画像情報生成装置。
The drawing means reads out the color information table according to the drawing command and draws image data according to the color information from the color information table, and draws without using the parameters and the color information table. Operating mode and can be executed,
The data of the predetermined image format including the pixel data includes mode information indicating in which of the operation modes the drawing is performed,
Furthermore, the rendering means performs a drawing in operation mode corresponding to the mode information, the image information generating apparatus according to claim 1.
上記所定の画像イメージフォーマットのデータには、当該データ内に上記色情報テーブルが含まれるか否かを示す情報が含まれている、請求項記載の画像情報生成装置。 3. The image information generating apparatus according to claim 2 , wherein the data of the predetermined image format includes information indicating whether the color information table is included in the data. 上記色情報テーブルを記憶するとともに縦横に画素が配列されたマトリクスとして扱われる記憶手段を有し、
上記画像イメージフォーマットのデータの上記色情報テーブル部には、上記記憶手段の上記マトリクスにおける上記色情報テーブルの位置を指定するパラメータと、上記記憶手段の上記マトリクスにおける上記色情報テーブルの縦方向の大きさ及び横方向の大きさを示す情報と、が含まれる、請求項記載の画像情報生成装置。
A storage unit that stores the color information table and is treated as a matrix in which pixels are arranged vertically and horizontally,
The color information table portion of the data of the image format includes a parameter for specifying a position of the color information table in the matrix of the storage means, and a vertical size of the color information table in the matrix of the storage means. The image information generating apparatus according to claim 1 , wherein the image information generating apparatus includes information indicating the size and the size in the horizontal direction.
上記ピクセルデータ部には、上記記憶手段の上記マトリクスにおける上記ピクセルデータの位置を指定するパラメータと、上記記憶手段の上記マトリクスにおける上記ピクセルデータの縦方向の大きさ及び横方向の大きさを示す情報と、が含まれる、請求項記載の画像情報生成装置。The pixel data section includes a parameter for specifying a position of the pixel data in the matrix of the storage means, and information indicating a vertical size and a horizontal size of the pixel data in the matrix of the storage means. The image information generation device according to claim 4, further comprising: 画像イメージフォーマットのデータに含まれるピクセルデータ及び色情報テーブルを記憶するための記憶手段及び描画手段を備えたコンピュータにおいて実行される画像情報生成方法であって、
上記画像イメージフォーマットのデータは、イメージデータを構成する複数のピクセルデータを含んだピクセルデータ部と、上記記憶手段上に色情報テーブルを書き込むための色情報テーブル部とを有し、かつ、上記色情報テーブル部と上記ピクセルデータ部とにそれぞれフォーマットが予め定められており、上記色情報テーブルに対して定められたフォーマット構造と、前記ピクセルデータ部に定められたフォーマット構造とは略同一とされたものであり、
上記画像イメージフォーマットのデータから、色情報テーブルを上記記憶手段に記憶させる記憶工程を有し、
上記記憶手段に記憶された色情報テーブルから色情報を読み出し、当該色情報に応じてイメージデータを描画する処理を前記描画手段によって行う描画工程と、
を有することを特徴とする、画像情報生成方法。
An image information generation method executed by a computer including a storage unit and a drawing unit for storing pixel data and a color information table included in data in an image format,
The data of the image format has a pixel data section including a plurality of pixel data constituting the image data, and a color information table section for writing a color information table on the storage means. The formats are predetermined in the information table section and the pixel data section, respectively, and the format structure defined in the color information table is substantially the same as the format structure defined in the pixel data section. Things,
A storage step of storing a color information table in the storage unit from the data in the image format;
A drawing step of reading color information from a color information table stored in the storage means and performing processing of drawing image data in accordance with the color information by the drawing means;
An image information generating method, comprising:
イメージデータを構成する複数のピクセルデータを含んだピクセルデータ部と記憶手段上に色情報テーブルを書き込むための色情報テーブル部とをそれぞれ有した画像イメージフォーマットのデータを少なくとも記録してなる記録媒体を有し、上記色情報テーブル部と上記ピクセルデータ部とにそれぞれフォーマットが予め定められており、上記色情報テーブルに対して定められたフォーマット構造と、前記ピクセルデータ部に定められたフォーマット構造とは略同一とされたものであり、
記憶手段と、
上記記録媒体から上記複数のピクセルデータと上記色情報テーブルとを読み出し、上記記憶手段に書き込む書き込み手段と、
画像イメージフォーマットのデータに含まれる色情報テーブルから色情報を読み出して当該色情報に応じてイメージデータの描画を行う描画手段と、
上記描画されたイメージデータを読み出して表示手段に出力する出力手段と
を備えてなることを特徴とする画像情報処理装置。
A recording medium that records at least image-image format data having a pixel data unit including a plurality of pixel data constituting image data and a color information table unit for writing a color information table on a storage unit. The color information table section and the pixel data section each have a predetermined format, and the format structure defined for the color information table and the format structure defined for the pixel data section Are almost identical,
Storage means;
Writing means for reading the plurality of pixel data and the color information table from the recording medium, and writing the data in the storage means;
Drawing means for reading color information from a color information table included in the image image format data and drawing image data according to the color information;
Output means for reading the drawn image data and outputting it to a display means.
画像イメージフォーマットのデータに含まれるピクセルデータ及び色情報テーブルを記憶するための記憶手段及び描画手段を備えたコンピュータにおいて実行される画像情報処理方法であって、
上記画像イメージフォーマットのデータは、イメージデータを構成する複数のピクセルデータを含んだピクセルデータ部と、上記記憶手段上に色情報テーブルを書き込むための色情報テーブル部とを有し、かつ、上記色情報テーブル部と上記ピクセルデータ部とにそれぞれフォーマットが予め定められており、上記色情報テーブルに対して定められたフォーマット構造と、前記ピクセルデータ部に定められたフォーマット構造とは略同一とされたものであり、
上記画像イメージフォーマットのデータを少なくとも記録した記録媒体から、上記イメージデータと色情報テーブルとを読み出す記録媒体読み出し工程と、
上記イメージデータとピクセルデータの色情報テーブルとを前記記憶手段に記憶する記憶工程と、
上記記憶手段に記憶された色情報テーブルから色情報を読み出し、当該色情報に応じてイメージデータを描画する処理を上記描画手段によって行う描画工程と、
上記描画されたイメージデータを読み出して表示手段に出力する出力工程と
を実行することを特徴とする画像情報処理方法。
An image information processing method executed by a computer having a storage unit and a drawing unit for storing pixel data and a color information table included in data of an image format,
The data of the image format has a pixel data section including a plurality of pixel data constituting the image data, and a color information table section for writing a color information table on the storage means. The formats are predetermined in the information table section and the pixel data section, respectively, and the format structure defined in the color information table is substantially the same as the format structure defined in the pixel data section. Things,
A recording medium reading step of reading out the image data and the color information table from a recording medium on which at least the image image format data is recorded,
A storage step of storing the image data and the color information table of the pixel data in the storage unit;
A drawing step of reading the color information from the color information table stored in the storage means and performing processing of drawing image data according to the color information by the drawing means;
Outputting the drawn image data and outputting the read image data to a display means.
複数のピクセルデータからなるイメージデータと上記イメージデータにおける上記ピクセルデータの色情報テーブルとを記憶する記憶手段と、
上記色情報テーブルから色情報を読み出して当該色情報に応じてイメージデータの描画を行う動作モードと、上記色情報テーブルを用いずにイメージデータを描画する動作モードと、を実行することが可能である描画手段と、を備え、
更に、上記描画手段は、上記の動作モードのうちいずれの動作モードで描画を行うかを表すモード情報に応じた動作モードでイメージデータの描画を行うものであり、
前記記憶手段は、上記色情報テーブルを含んだ色情報テーブル部と上記複数のピクセルデータを含んだピクセルデータ部とを含む画像イメージフォーマットのデータから読み出された上記色情報テーブルを記憶するものであり、
上記色情報テーブル部のフォーマット構造は、上記ピクセルデータ部のフォーマット構造と略同一とされている、画像情報生成装置。
Storage means for storing image data composed of a plurality of pixel data and a color information table of the pixel data in the image data;
An operation mode of reading color information from the color information table and drawing image data according to the color information, and an operation mode of drawing image data without using the color information table can be executed. A certain drawing means,
Furthermore, the rendering means state, and are not for drawing image data in the operation mode corresponding to the mode information indicating whether to perform drawing in all operating modes of the above modes of operation,
The storage means stores the color information table read from data in an image format including a color information table section including the color information table and a pixel data section including the plurality of pixel data. Yes,
An image information generating device, wherein a format structure of the color information table section is substantially the same as a format structure of the pixel data section.
複数のピクセルデータからなるイメージデータと上記イメージデータにおける上記ピクセルデータの色情報テーブルとを記憶する記憶手段と、
上記色情報テーブルから色情報を読み出して当該色情報に応じてイメージデータの描画を行う動作モードと、上記色情報テーブルを用いずにイメージデータを描画する動作モードと、を実行することが可能である描画手段と、を備え、
更に、上記描画手段は、上記の動作モードのうちいずれの動作モードで描画を行うかを表すモード情報に応じた動作モードでイメージデータの描画を行うものであり、
上記記憶手段は、上記色情報テーブルを含んだ色情報テーブル部と上記複数のピクセルデータを含んだピクセルデータ部とを含む画像イメージフォーマットのデータから読み出された上記色情報テーブルを記憶するもので、かつ、当該記憶手段は、縦横に画素が配列されたマトリクスとして扱われるものであり、
上記画像イメージフォーマットのデータには、上記記憶手段における上記色情報テーブルの上記マトリクスにおける縦方向の大きさ及び横方向の大きさを示す情報が含まれている、画像情報生成装置。
Storage means for storing image data composed of a plurality of pixel data and a color information table of the pixel data in the image data;
An operation mode of reading color information from the color information table and drawing image data according to the color information, and an operation mode of drawing image data without using the color information table can be executed. A certain drawing means,
Further, the drawing means draws image data in an operation mode corresponding to mode information indicating which of the operation modes is to be used for drawing ,
The storage means stores the color information table read from data in an image format including a color information table section including the color information table and a pixel data section including the plurality of pixel data. And the storage means is treated as a matrix in which pixels are arranged vertically and horizontally,
The image information generation device, wherein the data in the image format includes information indicating a vertical size and a horizontal size in the matrix of the color information table in the storage unit.
JP31427095A 1994-12-02 1995-12-01 Image information generating apparatus and method, and image information processing apparatus and method Expired - Fee Related JP3547236B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP31427095A JP3547236B2 (en) 1994-12-02 1995-12-01 Image information generating apparatus and method, and image information processing apparatus and method

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP30002994 1994-12-02
JP6-300029 1994-12-02
JP31427095A JP3547236B2 (en) 1994-12-02 1995-12-01 Image information generating apparatus and method, and image information processing apparatus and method

Publications (2)

Publication Number Publication Date
JPH08235366A JPH08235366A (en) 1996-09-13
JP3547236B2 true JP3547236B2 (en) 2004-07-28

Family

ID=26562184

Family Applications (1)

Application Number Title Priority Date Filing Date
JP31427095A Expired - Fee Related JP3547236B2 (en) 1994-12-02 1995-12-01 Image information generating apparatus and method, and image information processing apparatus and method

Country Status (1)

Country Link
JP (1) JP3547236B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000107447A (en) 1998-10-08 2000-04-18 Konami Co Ltd Video game device, game image display method, and recording medium
US7027062B2 (en) * 2004-02-27 2006-04-11 Nvidia Corporation Register based queuing for texture requests

Also Published As

Publication number Publication date
JPH08235366A (en) 1996-09-13

Similar Documents

Publication Publication Date Title
CA2164269C (en) Image processing in which the image is divided into image areas with specific color lookup tables for enhanced color resolution
JP3578498B2 (en) Image information processing device
JP3647487B2 (en) Texture mapping device
JP3886184B2 (en) Image data processing method and image processing apparatus
TW425300B (en) Instruction input method and recording medium
US5757376A (en) Method of producing image data and associated recording medium
JP2000132706A (en) Recording medium, image processor and image processing method
JPH07281652A (en) Image processor
JP3454914B2 (en) Image generation method and image generation device
EP1312047A2 (en) Apparatus and method for rendering antialiased image
JP3548642B2 (en) Image information generating apparatus and method, image information processing apparatus and method, and recording medium
JP3547236B2 (en) Image information generating apparatus and method, and image information processing apparatus and method
JP2000070549A (en) Game system, method for preserving image and recording medium recording game program
JP3348152B2 (en) Game system
JP3698747B2 (en) Image data generation method and image processing system
JP2000182075A (en) Simple fluid picture display method, picture display device and recording medium
JPH08163560A (en) Picture information generation method, picture information processing method and recording medium
JP3910259B2 (en) Image processing apparatus and method, and rendering apparatus and method
JP3556777B2 (en) Image processing device
JP3326128B2 (en) Game device, image display method, and machine-readable information recording medium recording program
JPH08161465A (en) Method for generating image data file, recording medium and method for preparing image
JPH08161511A (en) Image generating device
MXPA95004904A (en) Method for producing image data, image data processing device and regis medium
JPH10334249A (en) Image information generating method, image information generator and recording medium

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040113

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040315

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040413

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040413

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090423

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090423

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090423

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090423

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100423

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110423

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120423

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130423

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130423

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140423

Year of fee payment: 10

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees