JPH07282273A - 画像生成方法及び装置 - Google Patents

画像生成方法及び装置

Info

Publication number
JPH07282273A
JPH07282273A JP6093739A JP9373994A JPH07282273A JP H07282273 A JPH07282273 A JP H07282273A JP 6093739 A JP6093739 A JP 6093739A JP 9373994 A JP9373994 A JP 9373994A JP H07282273 A JPH07282273 A JP H07282273A
Authority
JP
Japan
Prior art keywords
command
data
control
cpu
image
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.)
Granted
Application number
JP6093739A
Other languages
English (en)
Other versions
JP3492761B2 (ja
Inventor
Teiji Yutaka
禎治 豊
Masakazu Suzuoki
雅一 鈴置
Makoto Furuhashi
真 古橋
Masayoshi Tanaka
正善 田中
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 Corp
Original Assignee
Sony Corp
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 Corp filed Critical Sony Corp
Priority to JP09373994A priority Critical patent/JP3492761B2/ja
Priority to CA002146309A priority patent/CA2146309A1/en
Priority to US08/417,126 priority patent/US5664163A/en
Priority to EP95302302A priority patent/EP0676722A3/en
Priority to AU16311/95A priority patent/AU689542B2/en
Priority to KR1019950008022A priority patent/KR100346536B1/ko
Priority to CNB951045687A priority patent/CN1138234C/zh
Publication of JPH07282273A publication Critical patent/JPH07282273A/ja
Application granted granted Critical
Publication of JP3492761B2 publication Critical patent/JP3492761B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/005General purpose rendering architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Image Generation (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Bus Control (AREA)
  • Processing Or Creating Images (AREA)

Abstract

(57)【要約】 【目的】 描画命令のみでなく制御命令も、DMA転送
できるようにすることと、命令のデータ長が固定でなく
てもDMA転送することができる。 【構成】 CPU42で生成した描画命令及び制御命令
を描画装置部61に転送し、この描画装置部61で、描
画命令及び制御命令にしたがって描画を順次実行して画
像を生成する方法である。描画命令及び制御命令を、ヘ
ッダ部と命令データ部とからなり、ヘッダ部にどのよう
な命令であるかを識別するための命令識別コードを備え
るデータ構造により構成する。描画及び制御の手順にし
たがって描画命令及び制御命令が順次に並ぶ描画命令列
を形成する。この描画命令列を、転送手段45により描
画装置部61にDMA転送する。描画装置部61は、描
画命令列の順序で、描画及び制御を実行する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、圧縮されて伝送され
た画像データやコンピュータグラフィックスでの描画デ
ータにより、画像を生成する画像生成方法及び装置に関
する。特に、ビデオゲーム機やグラフィックコンピュー
タなど、コンピュータグラフィックスを応用した機器
で、限られたハードウエア資源の中で、高い可視化(ビ
ジュアライゼーション)性能が要求される場合に好適な
ものである。
【0002】
【従来の技術】コンピュータグラフィックスにおいて、
通常、3D(3ディメンション=3次元)グラフィック
スシステムと呼ばれるものは、現実感のある物体(描画
対象の物体をオブジェクトと称する)を描画するに際し
て、まず、オブジェクトの表面を複数のポリゴン(描画
装置が扱う図形の最小単位(三角形や四角形)をポリゴ
ンという)に分解し、各ポリゴンを、モニター表示画面
に対応したフレームメモリ(ビデオRAM)に、順に、
描画することで、立体的に見える画像を再構成する。
【0003】通常のこの種の画像生成装置では、処理を
高速に行わせるために、CPUとフレームメモリの間に
専用の描画装置を設ける。CPUは、画像を生成する際
に、直接フレームメモリをアクセスするのではなく、三
角形や四角形の基本的な図形(ポリゴン)を描画する命
令(以下、描画命令と略称する)を生成して描画装置に
送る。描画装置は、送られた描画命令を解釈して、フレ
ームメモリに図形を描画する。
【0004】図19に描画方法の具体例を示す。すなわ
ち、図19Aに示すような頂点A〜Gの直方体のオブジ
ェクトを表示する場合、まず、図19Bに示すようにオ
ブジェクトを3つの四角形のポリゴンPa、Pb、Pc
に分解する。
【0005】そして、CPUは、図20に示すように、
各ポリゴンPa、Pb、Pcに対応する描画命令IP
a、IPb、IPcを作成する。描画命令IPa、IP
b、IPcのそれぞれは、各ポリゴンPa、Pb、Pc
の表示画面上の表示位置を決めるための、各ポリゴンP
a、Pb、Pcの頂点座標(Ax,Ay)〜(Dx,D
y)、(Cx,Cy)〜(Fx,Fy)、(Bx,B
y)〜(Gx,Gy)と、このポリゴンPa、Pb、P
cの中の色などの情報ODからなる。
【0006】描画装置は、この描画命令に基づいてフレ
ームメモリにオブジェクトを描画する。フレームメモリ
の描画データをアナログ信号に変換してモニター表示装
置に供給すれば、オブジェクトが描画命令で指定された
表示位置に表示される。
【0007】
【発明が解決しようとする課題】ところで、描画装置に
描画命令を転送する一般的な方法としては、高速に転送
するためにDMA(ダイレクトメモリアクセス)が用い
られる。
【0008】しかしながら、従来のこの種の画像生成装
置においては、DMA転送されていたのは描画命令やイ
メージデータなどのフレームメモリに蓄えられるタイプ
のデータのみであり、例えば描画前に必要となる画面ク
リアや解像度の変更などの制御命令は、DMAでは転送
できず、描画命令とは独立に転送していた。このため、
描画装置は、描画命令と、制御命令とで別個独立の受信
部を備える必要があった。
【0009】また、描画命令と制御命令とが、別々に転
送されることから、処理が複雑化してしまっていた。例
えば、あるオブジェクトを描画後に、解像度を変更する
場合には、従来の方式では、オブジェクトの描画を常に
監視して、描画の終了を待ち、前のオブジェクトの描画
が終了したことを検知すると、描画命令のDMA転送を
停止させ、解像度を変更し、その後、DMA転送を開始
させて、描画命令を転送させるようにするという複雑な
処理をしなければならなかった。
【0010】また、この種のDMA転送を行う場合に
は、転送装置であるDMAコントローラと、描画装置の
構造を簡単にするためは、DMA転送する描画命令など
のデータは、固定長のパケット(転送単位)とすること
が考えられる。その場合に、パケット長は、描画命令な
どのDMA転送されるデータの最大長以上の長さとしな
ければならないが、パケット長よりも短い描画命令の頻
度が高い場合には、無駄な転送が多くなってしまう。
【0011】例えばDMA転送される命令データが、図
21A,B,Cの命令1、命令2、命令3のように、斜
線を付して示したような種々のデータ長を有する場合に
は、同図に示すように、パケット長は、そのデータ長の
最大長に合わせられる。そして、データ長がパケット長
よりも短い場合には、空いた部分を無効コードNOPな
どで埋めることになる。この場合の転送及び描画処理時
間は、図22のようになり、無効コードNOPの分の転
送時間分だけ、無駄時間となる。
【0012】この発明は、以上の点にかんがみ、描画命
令のみでなく制御命令も、一緒に転送できるようにする
ことを第1の目的とする。また、この発明は、データの
データ長が固定でなくてもDMA転送することができる
ようにすることを第2の目的とする。
【0013】
【課題を解決するための手段】上記課題を解決するた
め、請求項1の発明の画像生成方法は、CPUで生成し
た描画命令及び制御命令を描画装置部に転送し、この描
画装置部で、前記描画命令及び前記制御命令にしたがっ
て描画を順次実行して画像を生成する方法において、前
記描画命令及び前記制御命令を、ヘッダ部と命令データ
部とからなり、ヘッダ部にどのような命令であるかを識
別するための命令識別コードを備えるデータ構造により
構成すると共に、描画及び制御の手順にしたがって前記
描画命令及び制御命令が順次に並ぶ描画命令列を形成
し、この描画命令列を、前記CPUの介在なしに、前記
描画装置部に転送するようにしたことを特徴とする。
【0014】請求項1の発明の方法を適用した、請求項
2の発明による画像生成装置は、後述の実施例の参照符
号を対応させると、描画命令及び制御命令が格納される
メモリ43と、前記描画命令及び前記制御命令を、ヘッ
ダ部と命令データ部とからなり、ヘッダ部にどのような
命令であるかを識別するための命令識別コードを備える
データ構造により生成すると共に、描画及び制御の手順
にしたがって前記描画命令及び前記制御命令が順次に並
ぶ描画命令列を前記メモリ上において生成するCPU4
2と、前記描画命令及び前記制御命令にしたがってフレ
ームメモリ63上において描画を実行する描画装置部6
1と、前記メモリ43から前記描画命令列を読み出し
て、前記CPUの介在なしに、前記描画装置部に転送す
る転送手段45とを備えることを特徴とする。
【0015】請求項3の発明においては、請求項2の画
像生成装置において、CPU42、メインメモリ43及
び描画装置部61はシステムバス41に対して接続し、
前記転送手段は、CPU42及び他の装置がシステムバ
ス41を開放している間隙をぬって、CPU42の介在
なしに、メインメモリ43から描画命令列を描画装置部
61に転送するようにする手段45である。
【0016】前記のこの発明の画像生成装置に、操作入
力手段を設け、この操作入力手段での操作入力に応じて
CPUが前記描画命令列を生成するようにして、ゲーム
機の構成とすることができる。
【0017】描画命令及び制御命令のヘッダ部の一部に
次に実行すべき描画命令の、メモリ43上のアドレスを
設定して、このアドレスをCPUが描画命令列の並びに
応じて設定する構成とするとよい。
【0018】また、請求項8の発明においては、描画命
令を、ヘッダ部と命令データ部とからなり、ヘッダ部に
どのような命令であるかを識別するための命令識別コー
ドを備えると共に、前記描画命令全体のデータ長が任意
長としたデータ構造により構成し、前記命令識別コード
によりデータ長を判別し、前記描画装置部に対して前記
描画命令を、前記データ長に応じた転送量で転送する。
【0019】描画命令のみでなく、制御命令も同様のデ
ータ構造として描画命令と混在して描画装置部に転送し
てもよい。
【0020】
【作用】上記の構成の請求項1及び請求項2の発明にお
いては、描画命令と制御命令とは同じデータ構造の命令
とされて、描画装置部に転送される。そして、描画及び
制御順序にしたがって、描画命令と制御命令とが並べら
れた描画命令列として描画装置部に転送される。描画装
置部では、この描画命令列の描画命令と制御命令とをそ
の並び順に、順次、実行することにより、描画及び制御
が行われる。この場合、従来のように、制御命令を描画
命令とは別個に受け取る場合のように、描画状態を監視
しながら制御や転送を行う必要はなく、命令を単に、受
け付けた順次に実行するのみでよくなる。
【0021】請求項3の発明においては、メインメモリ
43の描画命令列が、CPU42の介在なしに、描画装
置部61に転送される。したがって、CPU42が、描
画命令の生成を、例えばコントロールパッド71などの
操作入力手段の入力操作に応じて行いながら、システム
バス41の空きを利用して、転送手段45が描画命令列
を描画装置部61に高速転送することができ、リアルタ
イム性の高い画像生成を行うことができる。
【0022】請求項8の発明においては、命令識別コー
ドにより描画命令がどのような命令であって、全体のデ
ータ長がどれくらいかが判別される。そして、描画命令
の転送時には、判別されたデータ長の描画命令データの
みが転送される。制御命令についても同様にして、任意
のデータ長であっても、その長さの命令データのみが描
画装置部に転送される。描画装置部は、例えば転送手段
からの指示により転送終了を知り、任意のデータ長の命
令を、順次に取り込んで、実行する。
【0023】
【実施例】以下、この発明の一実施例について図面を参
照しながら説明する。図1は、この発明の一実施例の画
像生成装置の構成例を示すもので、この例は3Dグラフ
ィック機能と、動画再生機能とを備えるゲーム機の実施
例である。
【0024】図1において、41はシステムバス(メイ
ンバス)である。このシステムバス41には、CPU4
2、メインメモリ43、ソーティングコントローラ45
が接続されている。
【0025】システムバス41には、また、画像伸長装
置部51が、入力用のFIFO(First In F
irst Out)バッファメモリ(以下、FIFOバ
ッファメモリをFIFOバッファと略称する)54及び
出力用のFIFOバッファ55を介して接続されてい
る。また、CD−ROMデコーダ52がFIFOバッフ
ァ56を介して、描画装置部61がFIFOバッファ6
2を介して、それぞれシステムバス41に接続されてい
る。
【0026】また、71は操作入力手段としてのコント
ロールパッドで、インターフェース72を介してシステ
ムバス41に接続されている。さらに、システムバス4
1には、ゲーム機としての立ち上げを行うためのプログ
ラムが格納されているブートROM73が接続されてい
る。
【0027】CD−ROMデコーダ52は、CD−RO
Mドライバ53に接続されており、CD−ROMドライ
バ53に装着されたCD−ROMディスクに記録されて
いるアプリケーションプログラム(例えばゲームのプロ
グラム)やデータをデコードする。CD−ROMディス
クには、例えば離散コサイン変換(DCT)により画像
圧縮された動画や静止画の画像データや、ポリゴンを修
飾するためのテクスチャー画像の画像データが記録され
ている。CD−ROMディスクのアプリケーションプロ
グラムには、ポリゴン描画命令が含まれている。FIF
Oバッファ56は、CD−ROMディスクの記録データ
の1セクタ分の容量を有する。
【0028】CPU42は、システム全体の管理を行な
う。また、このCPU42は、物体を多数のポリゴンの
集まりとして描画する場合の処理の一部を行う。すなわ
ち、CPU42は、後述もするように、描画命令を生成
すると共に、制御命令をメインメモリ43上に生成す
る。そして、後述するようにして、これら描画命令と制
御命令との混在したものである描画命令例をメインメモ
リ43上において作成する。
【0029】また、このCPU42は、キャッシュメモ
リ46を有し、CPUインストラクションの一部は、シ
ステムバス41からフェッチすることなく実行できる。
さらに、CPU42には、描画命令や制御命令を作成す
る際にポリゴンについての座標変換演算や制御のための
座標値の演算を行なうための座標演算装置部44が、C
PU内部コプロセッサとして設けられている。座標演算
装置部44は、3次元座標変換及び3次元から表示画面
上の2次元への変換の演算を行なう。
【0030】このように、CPU42は、内部に命令キ
ャッシュ46と座標演算装置部44を有しているため、
その処理をシステムバス41を使用しなくても、ある程
度行うことができるため、システムバス41を開放しや
すい。
【0031】画像伸長装置部51は、CD−ROMディ
スクから再生された圧縮画像データの伸長処理を行なう
もので、ハフマン符号のデコーダと、逆量子化回路と、
逆離散コサイン変換回路のハードウエアを備える。ハフ
マン符号のデコーダの部分は、CPU42がソフトウエ
アとしてその処理を行うようにしてもよい。
【0032】この例の場合、画像伸長装置部51は、1
枚(1フレーム)の画像を、後述の図16に示すよう
に、例えば16×16ピクセル(画素)程度の小領域
(これを以下マクロブロックと称する)に分割して、こ
のマクロブロック単位で画像伸長デコードを行う。そし
て、このマクロブロック単位でメインメモリ43との間
でデータ転送が行われる。したがって、FIFOバッフ
ァ54及び55は、マクロブロック分の容量を備えるも
のとされている。
【0033】描画装置部61には、ローカルバス11を
介してフレームメモリ63が接続されている。描画装置
部61は、FIFOバッファ62を介してメインメモリ
43から転送されてくる描画命令列に含まれる描画命令
及び制御命令を実行して、その結果をフレームメモリ6
3に書き込む。FIFOバッファ62は、1命令分のメ
モリ容量を有する。
【0034】描画装置部61は、また、コントロールポ
ート66を介してCPU42からの直接的な制御命令を
受け取る。このコントロールポート66からの制御命令
は、FIFOバッファ62からの命令の受信に関わりな
く、優先的に受け付けられる。したがって、描画装置部
61での制御動作は、このコントロールポート66から
の制御命令によるものが優先されて、割り込んで処理が
行われることになる。この場合の制御動作の例として
は、リアルタイム処理のときに、表示が間にあわなくな
ったとき、描画動作の途中でもCPU42から描画のリ
セットの制御命令を発生させ、描画が途中であっても、
その途中の描画画像を強制的に表示する場合等がある。
【0035】フレームメモリ63は、描画画像を記憶す
る画像メモリ領域と、テクスチャー画像を記憶するテク
スチャーメモリ領域と、カラールックアップテーブル
(色変換テーブルCLUT)が格納されるテーブルメモ
リ領域とを備える。
【0036】図2は、フレームメモリ63のメモリ空間
を示すものである。フレームメモリ63は、カラムとロ
ウの2次元アドレスでアドレシングされる。この2次元
アドレス空間のうち、領域ATがテクスチャーメモリ領
域とされる。このテクスチャー領域ATには、複数種類
のテクスチャーパターンを配置することができる。AC
は色変換テーブルCLUTのテーブルメモリ領域であ
る。
【0037】後述するように、色変換テーブルCLUT
のデータは、CD−ROMディスクからCD−ROMデ
コーダ52を通じて、ソーティングコントローラ45に
より、フレームメモリ63に転送される。CD−ROM
のテクスチャー画像のデータは、画像伸長装置部51に
よりデータ伸長され、メインメモリ43を介してフレー
ムメモリ63に転送される。
【0038】また、図2において、ADは画像メモリ領
域であり、描画するエリアと、表示するエリアの2面分
のフレームバッファ領域を備えている。この例では、現
在表示用として用いているフレームバッファ領域を表示
バッファ、描画を行っているフレームバッファ領域を描
画バッファと呼ぶこととする。この場合、一方を描画バ
ッファとして描画を行っている間は、他方は表示バッフ
ァとして用い、描画が終了したら、両バッファを互いに
切り換える。この描画バッファと表示バッファの切り換
えは、描画終了時に、垂直同期に合わせて行う。
【0039】フレームメモリ63の表示バッファから読
み出された画像データは、D/Aコンバータ64を介し
て画像モニター装置65に出力され、その画面に表示さ
れる。
【0040】ソーティングコントローラ45は、いわゆ
るDMAコントローラと同様の機能を備え、メインメモ
リ43と画像伸長装置部51との間での画像データの転
送を行ったり、メインメモリ43から描画装置部61に
描画命令列を転送したりするもので、転送手段を構成し
ている。このソーティングコントローラ45は、CPU
42やコントロールパッド71などの他の装置がシステ
ムバス41を開放している間隙をぬって、CPU42の
介在なしに前記の転送処理を行う。この場合、CPU4
2がシステムバス41の開放をソーティングコントロー
ラ45に知らせるようにすることもできるし、ソーティ
ングコントローラ45が強制的にCPU42にバスの開
放を要求するようにすることもできる。
【0041】メインメモリ43は、動画や静止画の画像
データに対しては、圧縮された画像データのメモリ領域
と、伸長デコード処理された伸長画像データのメモリ領
域とを備えている。また、メインメモリ43は、描画命
令列などのグラフィックスデータのメモリ領域(これを
以下パケットバッファという)を備える。
【0042】このパケットバッファは、CPU42によ
る描画命令列の設定と、描画命令列の描画装置部への転
送とに使用され、CPU42と、描画装置部61とが共
有することになる。CPU42と、描画装置部61とで
処理を並列に動作するようにするため、この例では、描
画命令列の設定用のパケットバッファ(以下、これを設
定パケットバッファという)と、転送用のパケットバッ
ファ(以下、これを実行パケットバッファという)との
2つのパケットバッファが用意されており、一方を設定
パケットバッファとしているときには、他方は実行パケ
ットバッファとして使用し、実行パケットバッファで実
行が終了したら、2つのパケットバッファの機能を交換
するようにしている。
【0043】この装置の処理の詳細について以下に項を
分けてさらに説明する。
【0044】[CD−ROMディスクからのデータの取
り込み]図1の例の装置(ゲーム機)に電源が投入さ
れ、CD−ROMディスクが装填されると、ブートRO
M73のゲームを実行するためのいわゆる初期化処理を
するためのプログラムがCPU42により実行される。
そして、CD−ROMディスクの記録データが取り込ま
れる。このとき、CD−ROMディスクの各セクタのユ
ーザーデータ中の識別用情報IDに基づいて各ユーザー
データのデコード処理がなされ、データのチェックが行
われる。このチェック結果により、CPU42は、各I
Dで示される内容の再生データに応じた処理を実行す
る。
【0045】すなわち、CD−ROMディスクから、圧
縮画像データ、描画命令及びCPU42が実行するプロ
グラムが、CD−ROMドライバ53、CD−ROMデ
コーダ52を介して読み出され、ソーティングコントロ
ーラ45によってメインメモリ43にロードされる。そ
して、ロードされたデータのうち、色変換テーブルの情
報は、フレームメモリ63の領域CLUTに転送され
る。
【0046】[圧縮画像データの伸長及び転送]メイン
メモリ43の入力データのうち、圧縮画像データは、C
PU42がハフマン符号のデコード処理を行った後、再
びCPU42によりメインメモリ43に書き込まれる。
そして、ソーティングコントローラ45は、このハフマ
ン符号のデコード処理後の画像データをメインメモリ4
3からFIFOバッファ54を介して画像伸長装置部5
1に転送する。画像伸長装置部51は、逆量子化の処理
と、逆DCTの処理を行って画像データの伸長デコード
処理を行う。
【0047】伸長された画像データは、ソーティングコ
ントローラ45が、FIFOバッファ55を介してメイ
ンメモリ43に転送する。この場合、画像伸長装置部5
1は、前述したように、マクロブロック単位で画像デー
タの伸長処理を行う。このため、メインメモリ43から
は前記マクロブロック単位の圧縮データが入力用FIF
Oバッファ54に、ソーティングコントローラ45によ
り転送される。そして、画像伸長装置部51は、1マク
ロブロックの伸長デコード処理が終了すると、その結果
の伸長画像データを出力用FIFOバッファ55に入れ
ると共に、入力用FIFOバッファ54から次のマクロ
ブロックの圧縮データを取り出して、伸長デコード処理
を行う。
【0048】ソーティングコントローラ45は、システ
ムバス41が開放されていて、かつ、画像伸長装置部5
1の出力用FIFOバッファ55が空でなければ、1マ
クロブロックの伸長画像データをメインメモリ43に転
送し、次の1マクロブロックの圧縮画像データをメイン
メモリ43から画像伸長装置部51の入力用FIFOバ
ッファ54に転送する。
【0049】CPU42は、伸長された画像データのマ
クロブロックが一定量、メインメモリ43に蓄積された
時点で、当該伸長データを描画装置部61を介してフレ
ームメモリ63に転送する。この際に、伸長画像データ
がフレームメモリ63の画像メモリ領域ADに転送され
れば、そのまま背景動画像として画像モニター装置65
で表示されることになる。また、フレームメモリ63の
テクスチャーメモリ領域ATに転送される場合もある。
このテクスチャーメモリ領域ATの画像データは、テク
スチャー画像として、ポリゴンの修飾に使用される。
【0050】[描画命令列についての処理と転送]物体
の面を構成するポリゴンは、3次元的な奥行きの情報で
あるZデータに従って奥行き方向の深い位置にあるポリ
ゴンから順に描画することにより、2次元画像表示面に
立体的に画像を表示することができる。CPU42は、
このように奥行き方向の深い位置にあるポリゴンから順
に、描画装置部61で描画が行われるようにするための
描画命令の列をメインメモリ43上に作成する。
【0051】ところで、コンピュータグラフィックスで
は、Zデータを各ピクセル(画素)毎にメモリに記憶し
ておいてポリゴンの表示優先順位を決定するようにす
る、いわゆるZバッファ法を用いている。しかし、この
Zバッファ法では、Zデータを記憶するために大容量メ
モリを使用しなければならない。
【0052】そこで、この例では、奥行きの深い方から
順次に描画を実行して、順次、上書きするようにするこ
とにより、2次元画像表示面に立体的に画像を表示する
ようにする。このためには、メインメモリ43から、描
画順序にしたがった描画命令を、順次に描画装置部61
に転送する必要がある。
【0053】従来のDMAコントローラによりメインメ
モリ43から描画装置部61にDMA転送する場合に
は、描画命令を実行順にメインメモリ43上で並べ変え
る処理、つまり、描画命令の格納アドレス位置を変更す
る処理を行わなければならない。しかし、それでは、並
べ換えの処理のために時間がかかり、リアルタイム処理
が困難になる。
【0054】そこで、この例では、描画命令を次のよう
なデータ構造にして、描画命令のメインメモリ43上で
のアドレス位置を変更することなく、ポリゴン描画の表
示優先順位を決定する処理をCPU42ができるように
している。
【0055】また、描画に際しては、通常、所定の制御
命令が描画命令の実行に先立ち実行される。例えば、描
画に先立ち、フレームメモリ63の画像データを消去す
るためのクリア命令や、水平方向及び垂直方向の画素数
による解像度変更命令や、描画画像をどの位置から始め
るかを原点位置からのオフセットとして制御するオフセ
ット変更命令などの制御命令がある。
【0056】この例では、この制御命令も、描画命令と
同じデータ構造として、所定の描画の前に制御命令を挿
入して、描画命令列として描画命令と一緒に転送するよ
うにしている。描画装置部61は、この描画命令列の順
にしたがって制御及び描画を行うことにより、所期の描
画を行うことができる。
【0057】図3は、この例の命令のデータ構造の一例
の概略を示すものである。すなわち、このデータ構造
は、ヘッダ部と、命令データ部とからなる。
【0058】ヘッダ部は、タグTGとコマンド識別コー
ドCODEとからなる。タグTGには、次の描画命令あ
るいは制御命令が格納されているメインメモリ43上の
アドレスが書き込まれる。コマンド識別コードCODE
は、その命令がどのような命令であるかを示す識別デー
タIDPを備えると共に、必要に応じてその命令にとっ
て必要な他の情報を含む。
【0059】命令データ部には、座標値やその他のパラ
メータが書き込まれる。この命令データ部のパラメータ
は、命令ごとに定まっている。この命令データ部は、命
令ごとにデータ長が異なるが、命令ごとパラメータは定
まっているので、データ長は、命令ごとには定まったも
のとなっている。
【0060】図4Aにポリゴン描画命令の例を示す。こ
のポリゴン描画命令の場合、コマンド識別コードCOD
Eの識別データIDPは、それを示す内容となってお
り、また、そのポリゴンの中を1色でマッピングする場
合には、コードCODEに、必要な他の情報として、マ
ッピングする3原色の色データ(R,G,B)を含んで
いる。そして、図4Aは、四角形ポリゴンの描画命令の
場合で、命令データとして、4点の座標(X0,Y
0),(X1,Y1),(X2,Y2),(X3,Y
3)が記述されている。
【0061】図4Bは、クリア制御命令の例を示す。こ
のクリア制御命令の場合、コマンド識別コードCODE
の識別データIDPは、それを示す内容となっており、
また、制御命令データとしてクリアする矩形領域の左上
の座標(Xs,Ys)と、右下の座標(Xe,Ye)と
が記述される。
【0062】図4Cは、オフセット制御命令の例であ
り、コマンド識別コードCODEの識別データIDP
は、それを示す内容となっている。このオフセット制御
命令は、例えば矩形画像Va描画して画面上に表示する
に際し、図5に示すように、画面の原点座標(xo,y
o)に対する矩形画像Vaの左上隅の座標(Xr,Y
r)をオフセット値として与えることにより、前記矩形
画像Vaの表示位置を制御する制御命令である。このオ
フセット制御命令によれば、矩形画像Vaの4隅の位置
座標を指定しなくても表示位置を制御することができ
る。これは、例えば図5に示すように、矩形画像Vaを
画面位置PS1から画面位置PS2に変更する場合など
に使用すると、便利である。
【0063】図4Dは、解像度制御命令の例であり、コ
マンド識別コードCODEの識別データIDPは、それ
を示す内容となっている。そして、命令データとして、
水平方向の画素数と垂直方向の画素数が指定される。図
示の例では、水平方向の画素数は320、垂直方向の画
素数(ライン数)は240を指定している。
【0064】以上のことからも分かるように、制御命令
及び描画命令は、命令データの長さが異なり、場合によ
っては、命令識別コードCODEの部分のデータ長も変
わり、全体としての命令のデータ長は固定でない。しか
し、各個々の命令は、定まったデータ長を有している。
このため、命令識別データCODEの識別データIDP
から、命令が何であるかを判別すれば、その命令の全体
のデータ長は、判別できる。そこで、この例では、転送
単位であるパケットのパケット長は、一定ではなく、命
令ごとのデータ長に応じた任意長として転送を行うよう
にする。
【0065】CPU42は、コントロールパッド71か
らのユーザーの操作入力に基づいて、物体や視点の動き
を計算し、メインメモリ43上に描画命令や制御命令を
作成する。ついで、Zデータによって、描画命令及び制
御命令のタグTGを、描画順序及び制御順序の通りに書
き換えて、メインメモリ43上において、描画命令列を
生成するようにする。つまり、制御命令を、制御対象と
なる描画のための描画命令の列の前の位置に挿入するよ
うにタグTGのアドレス値を設定し、また、描画命令
は、描画順序にしたがったものとなるようにタグTGの
アドレス値を書き換える。このとき、メインメモリ43
上の各命令のアドレスは、変更されずに、タグのみが書
き換わる。
【0066】例えば、フレームメモリの描画バッファの
クリアをした後、オブジェクトAの描画を行い、その
後、解像度を変更して別のオブジェクトBを描画するよ
うな描画命令列の場合、図6に示すように、クリア制御
命令が最初になるように、スタートのアドレスが設定さ
れ、次に、クリア制御命令のタグTGは、オブジェクト
Aの最初の描画命令のメインメモリ43のアドレスを指
定するように、そのタグTGが設定される。そして、オ
ブジェクトAの描画命令がその描画順序に従うようにオ
ブジェクトAの描画命令のそれぞれのタグTGが設定さ
れる。
【0067】そして、オブジェクトAの最後の描画命令
の次には、解像度変更の制御命令のメインメモリ43の
アドレスが指定されるようにそのタグTGが設定され、
続いて、解像度変更制御命令のタグTGは、オブジェク
トBの最初の描画命令のメインメモリ43のアドレスを
指定するように設定される。
【0068】この描画命令列が完成すると、ソーティン
グコントローラ45は、図7に示すように、各制御命令
及び描画命令IP1,IP2,IP3,…,IPnを、
そのタグTG1,TG2,TG3,…,TGnに従って
順番にたどって、1命令毎に、メインメモリ43から描
画装置部61に転送する。このため、FIFOバッファ
62は、1命令分の容量を備えていればよい。
【0069】描画装置部61では、送られてきたデータ
が、既にソーティングされた状態にあるので、Zバッフ
ァ法のように並べ変える必要はなく、命令IP1,IP
2,IP3,…,IPnを、順次実行してフレームメモ
リ63の描画領域ADに結果を格納する。
【0070】図8は、描画命令列をメインメモリ43か
ら描画装置部61へ転送する制御を説明するためのブロ
ック図、図9は、図8の主要なタイミング信号を示す図
である。
【0071】図8に示すように、描画装置部61から
は、FIFOバッファ62が空になると転送リクエスト
DREQ(図9A)が発生する。ソーティングコントロ
ーラ45は、この転送リクエストDREQを受けて、C
PU42がシステムバス41を開放しているタイミング
において、描画命令列の次の命令を転送する。
【0072】ソーティングコントローラ45は、この転
送に先立ち、メインメモリ43からの転送すべき命令に
ついて、識別データIDPから当該命令のデータ長を判
別する。そして、その判別結果から描画装置部61に対
して転送データ長に応じた時間の間、例えばハイレベル
になる信号DACK(図9B)を形成して、これを描画
装置部61に送る。同時に、転送クロックWR(図9
C)を描画装置部61に送り、この転送クロックWRに
同期して、転送データDATA(図9D)を描画装置部
61のFIFOバッファ62に転送する。
【0073】描画装置部61は、信号DACKがハイレ
ベルになっている間は、ソーティングコントローラ45
から転送データ、つまり1つの描画命令あるいは制御命
令が転送中であると認識する。したがって、転送される
描画命令あるいは制御命令が任意のデータ長を有してい
ても、信号DACKからその命令のデータ長を認識し
て、命令の転送が終了した後に、即座に描画あるいは制
御の実行に移行することができる。
【0074】すなわち、描画装置部61は、信号DAC
Kがローレベルに下がると、FIFOバッファ62への
命令の転送が完了したことを認識して、前の描画や制御
が終了した時点で、FIFOバッファ62の命令を取り
込み、描画あるいは制御を実行する。
【0075】以上のようにして、図1の装置において
は、図10に示すように、1つの命令の転送は、そのデ
ータ長に応じたものとなり、その転送が終了した直後に
描画や制御の実行ができ、図21、図22に示した従来
例のように転送パケットに無効データNOPを挿入する
必要がない分だけ、処理時間が短くなるものである。
【0076】以上の描画命令列の転送と、その命令の実
行の際のCPU42の処理を図11のフローチャートを
参照しながら説明する。
【0077】まず、CPU42は、フレームメモリ63
の画像メモリ領域ADの一方のフレームバッファ領域A
(表示バッファとなっている)の画像データを画像モニ
ター装置65に出力するように描画装置部61に対して
命令を出す(ステップ101)。次に、コントロールパ
ッド71の操作入力を読み込み(ステップ102)、こ
の操作入力に応じて、メインメモリ43の一方のパケッ
トバッファ(設定パケットバッファとなっている)の描
画命令列Aの描画命令や制御命令の座標値などを更新す
ると共に、描画命令列Aの各命令のタグを、描画順序及
び制御順序に応じたものとなるように書き換える(ステ
ップ103)。
【0078】このステップ101からステップ103の
間では、メインメモリ43の他方のパケットバッファ
(実行パケットバッファとなっている)の描画命令列B
がソーティングコントローラ45によって、描画装置部
61に転送され、フレームメモリ63の画像メモリ領域
ADの他方のフレームバッファ領域B(描画バッファと
なっている)において、描画装置部61によりリアルタ
イムに、当該描画命令列Bによる描画や制御の実行が行
われている。
【0079】次に、描画命令列Bによる描画や制御の実
行が終了するまで待つ(ステップ104)。つまり、メ
インメモリ43からの描画命令列Bの転送がすべて終了
し、描画や制御が終了したか否か判別される。
【0080】描画命令列Bの実行が終了したときには、
フレームメモリ63のフレームバッファ領域Bを表示バ
ッファとして、これより描画画像データを読み出して、
画像モニター装置65に出力するように、描画装置部6
1に対して命令を出す(ステップ105)。このとき、
同時に、フレームメモリ63のフレームバッファ領域A
は描画バッファに切り換えられる。
【0081】次に、コントロールパッド71の操作入力
を読み込み(ステップ106)、この操作入力に応じ
て、メインメモリ43の他方のパケットバッファ(設定
パケットバッファとなっている)の描画命令列Bの座標
値や制御命令データなどを更新すると共に、描画命令列
Bの各命令のタグを、描画順序及び制御順序に応じたも
のとなるように書き換える(ステップ107)。
【0082】そして、ステップ105からステップ10
7の間では、メインメモリ43の一方のパケットバッフ
ァ(実行パケットバッファとなっている)の描画命令列
Aがソーティングコントローラ45によって、描画装置
部61に転送され、フレームメモリ63の一方のフレー
ムバッファ領域A(描画バッファとなっている)におい
て、描画装置部61により、リアルタイムに、当該描画
命令列Aによる描画や制御の実行が行われている。
【0083】次に、描画命令列Aによる実行が終了する
まで待つ(ステップ108)。つまり、メインメモリ4
3からの描画命令列Aの転送がすべて終了し、描画や制
御が終了したか否か判別される。
【0084】描画命令列Aの実行が終了したときには、
フレームメモリ63のフレームバッファ領域Aを表示バ
ッファとして、これより描画画像データを読み出して、
画像モニター装置65に出力するように、描画装置部6
1に対して命令を出す(ステップ109)。このとき、
同時に、フレームバッファ領域Bは描画バッファに切り
換えられる。その後、ステップ102に戻って、以上の
処理を繰り返し行う。以上の操作を30回〜60回/秒
で繰り返すことにより動きのある画像が表示できる。
【0085】このとき、上述したことから明らかなよう
に、CPU42と、描画装置部61とは、並列に動作し
ている。すなわち、CPU42は、メインメモリ43の
設定パケットバッファの描画命令列の各命令のタグのア
ドレス値を、図12Aの矢印で示す次の命令が格納され
ているメインメモリ43のアドレス値に、順次書き換え
る。これと、同時に、ソーティングコントローラ45
は、メインメモリ43の描画パケットバッファから、図
12Bの矢印で示すように各命令のタグをたどって描画
命令列を読み出して、描画装置部61に転送し、描画装
置部61はその描画命令列にしたがって描画を実行す
る。
【0086】この場合、図13に示すように、CPU4
2で描画命令列の作成中は、その前に作成された描画命
令列による描画の実行が描画装置部61で行われる状態
となり、描画の実行が終了した後、現在作成された描画
命令列による描画が実行されるようになる。
【0087】なお、ポリゴン描画の際、データは、描画
装置部61の勾配計算ユニットに送られ、勾配計算が行
なわれる。勾配計算は、ポリゴン描画で多角形の内側を
マッピングデータで埋めていく際、マッピングデータの
平面の傾きを求める計算である。テクスチャーの場合は
テクスチャー画像データでポリゴンが埋められ、また、
グーローシェーディングの場合は輝度値でポリゴンが埋
められる。
【0088】物体の表面を構成するポリゴンにテクスチ
ャーを貼り付ける場合には、テクスチャー領域ATのテ
クスチャーデータが2次元写像変換される。例えば、図
14Aに示すようなテクスチャーパターンT1,T2,
T3は、図14Bに示すような物体の各面のポリゴンに
適合するように、2次元スクリーン上の座標に変換され
る。このように写像変換されたテクスチャーパターンT
1,T2,T3が図14Cに示すように、物体OB1の
表面に貼り付けられる。そして、これが、画像メモリ領
域ADに配置され、画像表示モニター65の表示画面上
に表示される。
【0089】静止画テクスチャーの場合には、メインメ
モリ43上のテクスチャーパターンが、描画装置部61
を介して、フレームメモリ63上のテクスチャー領域A
Tに転送される。描画装置部61は、これをポリゴンに
貼り付ける。これにより、物体に静止画のテクスチャー
が実現される。この静止画のテクスチャーパターンのデ
ータは、CD−ROMディスクに記録しておくことがで
きる。
【0090】更に、動画のテクスチャーが可能である。
つまり、動画テクスチャーの場合には、前述したよう
に、CD−ROMディスクからの圧縮された動画データ
は、一旦、メインメモリ43に読み込まれる。そして、
この圧縮画像データは、画像伸長装置部51に送られ
る。画像伸長装置部51で、画像データが伸長される。
【0091】そして、伸長された動画データはフレーム
メモリ63上のテクスチャー領域ATに送られる。テク
スチャー領域ATは、フレームメモリ63内に設けられ
ているので、テクスチャーパターン自身も、フレーム毎
に書き換えることが可能である。このように、テクスチ
ャー領域ATに動画を送ると、テクスチャーが1フレー
ム毎に動的に書き換えられて変化する。このテクスチャ
ー領域の動画により、ポリゴンへのテクスチャーマッピ
ングを行えば、動画のテクスチャーが実現される。
【0092】前述したように、画像伸長装置部51で伸
長した画像データを、フレームメモリ63上の画像メモ
リ領域ADに送れば、背景画の動画を画像モニター装置
65のスクリーン上に表示することができるし、CPU
42により作成した描画命令により生成される描画画像
のみで画像メモリ領域ADを埋めて、画像表示モニター
65のスクリーンに描画することもできる。また、画像
メモリ領域AD上で、CD−ROMディスクからの画像
データを伸長して得た静止画の上に、CPU42による
ポリゴン描画により物体を描画することも可能である。
【0093】以上のように、ソーティングコントローラ
45は、CPU42の介在なしに、システムバス41が
開放されている間隙をぬって描画命令や画像データの転
送を行うようにしている。
【0094】なお、画像伸長装置部51で伸長デコード
された画像データを、メインメモリ43からフレームメ
モリ63に転送する場合には、この例においては、以下
に示すような伸長データ転送命令を使用する。このよう
に、伸長画像データを転送命令形式に変換するのは、C
PU42で行う。
【0095】すなわち、図15は、この伸長データ転送
命令の構造を示す図である。この伸長データ転送命令
は、描画命令や制御命令とほぼ同様のデータ構造を有す
るもので、ヘッダ部と画像データ部とからなる。ヘッダ
部には、先頭にタグTGを備え、その次に識別データI
DPを備える。タグTGは、他の命令と同様に、次の描
画命令、制御命令あるいは転送命令が格納されているメ
インメモリ43のアドレス値からなる。識別データID
Pには、これが伸長画像データの転送命令であること示
すデータが記述される。
【0096】このヘッダに続いて画像データ部に伸長画
像データPIX0、PIX1、PIX2、…、PIXn
が含められる。そして、この転送命令の単位で、ソーテ
ィングコントローラ45により、メインメモリ43から
描画装置部61に伸長画像データが転送される。
【0097】そして、図15において、ヘッダ部のデー
タ「H」と「W」は、転送する伸長データ領域の高さ及
び幅を示すものである。この転送領域の高さ「H」及び
幅「W」は、1フレーム分の画面における領域に対応し
ている。また、データ「X」と「Y」は、転送先の座標
を示している。この座標は、転送領域が矩形であるの
で、その矩形領域の左上の座標を示している。そして、
この座標は、転送先がフレームメモリ63の画像メモリ
領域AD内であれば、その領域AD内の座標であり、テ
クスチャー領域AT内であれば、その領域AT内の座標
である。
【0098】この伸長画像データの転送命令の場合、以
上の、タグTGから座標「X」、「Y」までが、転送命
令のヘッダであり、識別データIDPからヘッダの大き
さが識別される。また、高さ「H」及び幅「W」から画
像データ部のデータ長が識別される。そして、両者の合
計として、伸長データ転送命令の全体のデータ長が認識
される。なお、識別データIDPから座標「X」、
「Y」までは、図3の描画命令のコマンド識別コードC
ODEに対応する。
【0099】ところで、上述したように、画像伸長装置
部51は、1フレームの画像を横×縦=16×16画素
からなるマクロブロックに分割してマクロブロック単位
で伸長デコードを行っている。今、例えば、1フレーム
が横×縦=320×240の画素からなる画像を想定し
た場合、図16に示すように、1フレームは、300個
のマクロブロックに分けられる。
【0100】この300個のマクロブロックを描画装置
部61に転送するに当たって、マクロブロック単位で転
送命令を作成した場合には、ヘッダ部分のオーバーヘッ
ドが大き過ぎるものとなる。そこで、この例では、図1
7に示すように、縦方向の1列の複数個(図17では1
5個)のマクロブロックを繋げて、これを伸長データ転
送命令で送る単位とするようにしている。
【0101】1フレームの最初の伸長データ転送命令の
例を図18に示す。すなわち、図18では、座標「X」
「Y」が「0」「0」となっている。次の伸長データ転
送命令では、その座標「X」「Y」が「16」「0」と
なる。
【0102】このように、伸長画像データも、描画命令
や制御命令と同様のデータ構造形式の命令形式に変換し
たので、タグTGを利用することにより、ポリゴンの描
画命令や制御命令と、この伸長データ転送命令とを混在
させてソーティングコントローラ45による転送ならび
に、描画装置部61によるフレームメモリ63での画像
の描画、生成を実行することができる。
【0103】以上の実施例の装置によれば、次のような
効果が得られる。すなわち、メインメモリ43上の描画
命令列や、圧縮画像データ及び伸長画像データは、CP
U42がシステムバス41を開放している間隙をぬっ
て、CPU42の介在なしに転送されるため、システム
バス41を効率よく、時分割で使用できる。
【0104】また、すべての描画命令列がメインメモリ
43上に保持されているので、CPU42が、いつでも
直接制御でき、このため、コントロールパッド71など
の外部入力に応じた即時制御が可能である。したがっ
て、画面表示の反応速度を向上することができる。
【0105】同様に、すべての動画像データは、一旦、
メインメモリ43に保持されるので、CPU42がこの
動画像データに対していつでも直接制御することができ
る。このため、コントロールパッドなどの外部入力に応
じた即時制御が可能であり、画面表示の反応速度を向上
することができる。
【0106】また、制御命令を描画命令と一緒に転送
し、描画を実行することができるので、描画装置部61
は描画命令と制御命令とを別に受け取るハードウエアは
必要がなく、構成が簡単になると共に、転送及び描画処
理が簡単になる。
【0107】しかも、描画装置部61は、CPU42か
らの制御命令を直接的かつ優先的に受け付けるコントロ
ールポート66を別に有しているので、描画処理や表示
処理に割り込んで、CPU42が描画装置部61に対し
て制御をかけることもできる。
【0108】また、命令ごとのデータ長は、命令識別デ
ータから判別することができるので、命令の転送のパケ
ット長は固定ではなく、命令ごとのデータ長に応じた任
意長とすることができ、無駄な時間を省いて処理時間を
短縮化することができる。
【0109】また、描画装置部61に付随するFIFO
バッファの段数は、1描画命令分で足りるので、描画装
置部の回路規模を小さくすることができる。
【0110】また、画像伸長装置部51は、メインメモ
リをバッファとして使用するので、ローカルメモリを持
つ必要がない。しかも、画像伸長装置部に付随するFI
FOバッファの段数は、1マクロブロック分でよいの
で、画像伸長装置部の回路規模を小さくすることができ
る。
【0111】また、描画命令内に、次に実行すべき描画
命令のメインメモリ上のアドレス値を内蔵するようにし
たので、描画の順序が変化した場合には、描画命令内の
アドレス値のみを変化させるだけで、描画命令自体をメ
インメモリ内で、変更したアドレス位置に書き換える並
べ変えを行う必要がない。このため、システムバス41
の負荷をその分、軽減することができる。
【0112】さらに、連続的に動く画像を生成する場
合、隣接するフレーム間では、メインメモリ上に展開さ
れた描画命令列の内容が大きく変化することは、一般に
少ない。したがって、アドレス値の変更をすることも少
なく、実際的には、前のフレームの描画命令列に座標値
の変更を加えるだけで済むことが多く、制御が容易であ
る。
【0113】なお、以上の例では、CD−ROMディス
クに画像データやアプリケーションプログラムを記録し
たが、記録媒体としては、例えば磁気ディスク、メモリ
カードのような半導体メモリなどの他の記録媒体を使用
することもできる。
【0114】また、画像のデータ圧縮方法としては、D
CTを使用したが、その他、種々の画像データ圧縮方法
を使用することができる。
【0115】
【発明の効果】以上説明したように、この発明によれ
ば、描画命令と制御命令とは同じデータ構造の命令とさ
れ、描画及び制御順序にしたがって描画命令と制御命令
とが並べられた描画命令列として描画装置部に転送さ
れ、描画装置部では、この描画命令列の描画命令と制御
命令とをその並び順に、順次、実行される。
【0116】したがって、描画の制御命令も、描画命令
と同様に扱って描画装置部に転送できるので、描画装置
部の構成が簡単になると共に、転送及び実行処理が簡単
になる。このため、処理速度が高速になり、リアルタイ
ム性を向上させることができる。
【0117】また、制御を含めて順序のある描画シーケ
ンスを、一元的に管理することができるので、描画装置
部での実行処理の際に制御処理のタイミング制御が容易
であり、処理効率が向上する。しかも、描画命令列をD
MA転送と同様にして、CPUがシステムバスを開放し
ている間隙をぬって高速に行うようにすることが容易に
できる。
【0118】また、すべての描画命令列がメインメモリ
上に保持されているので、CPUが、いつでも直接制御
でき、このため、コントロールパッドなどの外部入力に
応じた即時制御が可能である。したがって、画面表示の
反応速度を向上することができ、リアルタイム性が高い
ゲーム機を容易に実現することができる。
【0119】また、描画命令や制御命令内に、次に実行
すべき命令のメインメモリ上のアドレス値を内蔵するよ
うにした場合には、描画の順序が変化した場合には、描
画命令内のアドレス値のみを変化させるだけで、描画命
令自体をメインメモリ内で、変更したアドレス位置に書
き換える並べ変えを行う必要がない。このため、システ
ムバスの負荷を軽減することができる。
【0120】また、描画装置部は、CPUからの制御命
令を直接的かつ優先的に受け付けるコントロールポート
を別に有しているので、描画処理や表示処理に割り込ん
で、CPUが描画装置部に対して制御をかけることもで
きる。
【0121】また、命令ごとのデータ長は、命令識別デ
ータから判別することができるので、命令の転送のパケ
ット長は固定ではなく、命令ごとのデータ長に応じた任
意長とすることができ、無駄な時間を省いて処理時間を
短縮化することができる。
【図面の簡単な説明】
【図1】この発明による画像処理装置の一実施例のブロ
ック図である。
【図2】この発明の一実施例におけるメモリ領域の説明
のための図である。
【図3】この発明の一実施例における命令のデータ構造
例を示す図である。
【図4】この発明の一実施例における描画命令、制御命
令の例を示す図である。
【図5】制御命令の一例であるオフセット制御処理を説
明するための図である。
【図6】描画命令列の例を説明するための図である。
【図7】この発明の一実施例におけるポリゴンの描画表
示順序を説明するための図である。
【図8】この発明の一実施例の描画命令列の転送のため
の要部のブロック図である。
【図9】図8の説明のためのタイムチャートである。
【図10】この発明の一実施例の処理時間を説明するた
めの図である。
【図11】この発明の一実施例における描画処理の際の
CPUの処理を説明するためのフローチャートである。
【図12】この発明の一実施例におけるメインメモリ上
でのCPUの描画命令処理と、描画装置部での描画の実
行処理とを説明するための図である。
【図13】この発明の一実施例におけるメインメモリ上
でのCPUの描画命令処理と、描画装置部での描画の実
行処理の並列処理を説明するための図である。
【図14】テクスチャーマッピングの説明のための図で
ある。
【図15】この発明の一実施例における画像データの転
送時のデータ構造の例を説明するための図である。
【図16】1フレームの画像の例を示す図である。
【図17】この発明の一実施例における画像データの転
送単位を説明するための図である。
【図18】この発明の一実施例における画像データの転
送時のデータ構造の例を示す図である。
【図19】描画方法の例を説明するための図である。
【図20】従来の描画命令の一例を示す図である。
【図21】従来の描画命令の転送時のデータ構造例を示
す図である。
【図22】従来の処理時間例を説明するためのを示す図
である。
【符号の説明】
41 システムバス 42 CPU 43 メインメモリ 44 座標演算装置部 45 ソーティングコントローラ 46 キャッシュメモリ 51 画像伸長装置部 52 CD−ROMデコーダ 53 CD−ROMドライバ 54、55 FIFOバッファ 61 描画装置部 62 FIFOバッファ 63 フレームメモリ 65 画像表示モニター装置 71 コントロールパッド AD 画像メモリ領域 AT テクスチャー領域
───────────────────────────────────────────────────── フロントページの続き (72)発明者 古橋 真 東京都港区赤坂8丁目1番22号 株式会社 ソニー・コンピュータエンタテインメント 内 (72)発明者 田中 正善 東京都港区赤坂8丁目1番22号 株式会社 ソニー・コンピュータエンタテインメント 内

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】CPUで生成した描画命令及び制御命令を
    描画装置部に転送し、この描画装置部で、前記描画命令
    及び前記制御命令にしたがって描画を順次実行して画像
    を生成する方法において、 前記描画命令及び前記制御命令を、ヘッダ部と命令デー
    タ部とからなり、ヘッダ部にどのような命令であるかを
    識別するための命令識別コードを備えるデータ構造によ
    り構成すると共に、 描画及び制御の手順にしたがって前記描画命令及び制御
    命令が順次に並ぶ描画命令列を形成し、この描画命令列
    を、前記描画装置部に転送するようにしたことを特徴と
    する画像生成方法。
  2. 【請求項2】描画命令及び制御命令が格納されるメイン
    メモリと、 前記描画命令及び前記制御命令を、ヘッダ部と命令デー
    タ部とからなり、ヘッダ部にどのような命令であるかを
    識別するための命令識別コードを備えるデータ構造によ
    り生成すると共に、描画及び制御の手順にしたがって前
    記描画命令及び前記制御命令が順次に並ぶ描画命令列を
    前記メインメモリ上において生成するCPUと、 前記描画命令及び前記制御命令にしたがってフレームメ
    モリ上において描画を実行する描画装置部と、 前記メモリから前記描画命令列を読み出して、前記描画
    装置部に転送する転送手段とを備える画像生成装置。
  3. 【請求項3】前記CPU、前記メインメモリ及び前記描
    画装置部はシステムバスに対して接続されており、 前記転送手段は、前記CPU及び他の装置が前記システ
    ムバスを開放している間隙をぬって、前記CPUの介在
    なしに、前記メインメモリから前記描画命令列を前記描
    画装置部に転送するようにする手段である請求項2に記
    載の画像生成装置。
  4. 【請求項4】前記描画命令及び前記制御命令の前記ヘッ
    ダ部は、次に実行すべき命令の、前記メモリ上のアドレ
    スを含み、 前記CPUは、前記描画命令及び前記制御命令の前記ヘ
    ッダ部のアドレスを前記メモリ上において、前記描画命
    令列の並びの順序にしたがって設定することにより、前
    記描画命令列をメモリ上において生成し、 前記転送手段は、前記ヘッダ部のアドレスにしたがって
    前記描画命令及び前記制御命令を前記メモリから読み出
    して描画命令列として描画装置部に転送するようにした
    請求項2または請求項3に記載の画像生成装置。
  5. 【請求項5】操作入力手段が設けられ、この操作入力手
    段での操作入力に応じて、前記CPUは、前記描画命令
    及び前記制御命令を生成すると共に、前記描画命令列の
    順序の設定を行うようにしたゲーム機の構成とされてな
    る請求項2、請求項3または請求項4に記載の画像生成
    装置。
  6. 【請求項6】前記描画命令及び前記制御命令は、それぞ
    れ全体のデータ長が任意長であり、前記転送手段は、前
    記命令識別コードによりデータ長を判別し、前記描画装
    置部に対して前記描画命令及び前記制御命令を、前記デ
    ータ長に応じた転送量で転送するようにしたことを特徴
    とする請求項2、請求項3、請求項4または請求項5に
    記載の画像生成装置。
  7. 【請求項7】前記描画装置部は、前記転送手段により転
    送されてくる描画命令列に含まれる制御命令のほかに、
    前記CPUから転送されてくる制御命令を独自に受け取
    る手段を備えることを特徴とする請求項2、請求項3、
    請求項4、請求項5または請求項6に記載の画像生成装
    置。
  8. 【請求項8】CPUで生成した描画命令を描画装置部に
    転送し、この描画装置部で、前記描画命令にしたがって
    描画を順次実行して画像を生成する方法において、 前記描画命令を、ヘッダ部と命令データ部とからなり、
    ヘッダ部にどのような命令であるかを識別するための命
    令識別コードを備えると共に、前記描画命令全体のデー
    タ長が任意長としたデータ構造により構成し、 前記命令識別コードにより、データ長を判別し、前記描
    画装置部に対して前記描画命令を、前記データ長に応じ
    た転送量で転送するようにしたことを特徴とする画像生
    成方法。
  9. 【請求項9】CPUで生成する制御命令も、前記描画命
    令と同一のデータ構造により構成して、描画命令と制御
    命令とを混在させて描画装置部に転送するようにしたこ
    とを特徴とする請求項8に記載の画像生成方法。
JP09373994A 1994-04-07 1994-04-07 画像生成方法及び装置 Expired - Lifetime JP3492761B2 (ja)

Priority Applications (7)

Application Number Priority Date Filing Date Title
JP09373994A JP3492761B2 (ja) 1994-04-07 1994-04-07 画像生成方法及び装置
CA002146309A CA2146309A1 (en) 1994-04-07 1995-04-04 Image generating method and apparatus
US08/417,126 US5664163A (en) 1994-04-07 1995-04-05 Image generating method and apparatus
AU16311/95A AU689542B2 (en) 1994-04-07 1995-04-06 Image generating method and apparatus
EP95302302A EP0676722A3 (en) 1994-04-07 1995-04-06 Image generation method and apparatus.
KR1019950008022A KR100346536B1 (ko) 1994-04-07 1995-04-07 영상발생장치및방법
CNB951045687A CN1138234C (zh) 1994-04-07 1995-04-07 图象生成的方法与设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP09373994A JP3492761B2 (ja) 1994-04-07 1994-04-07 画像生成方法及び装置

Publications (2)

Publication Number Publication Date
JPH07282273A true JPH07282273A (ja) 1995-10-27
JP3492761B2 JP3492761B2 (ja) 2004-02-03

Family

ID=14090787

Family Applications (1)

Application Number Title Priority Date Filing Date
JP09373994A Expired - Lifetime JP3492761B2 (ja) 1994-04-07 1994-04-07 画像生成方法及び装置

Country Status (7)

Country Link
US (1) US5664163A (ja)
EP (1) EP0676722A3 (ja)
JP (1) JP3492761B2 (ja)
KR (1) KR100346536B1 (ja)
CN (1) CN1138234C (ja)
AU (1) AU689542B2 (ja)
CA (1) CA2146309A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005352592A (ja) * 2004-06-08 2005-12-22 Canon Inc データ転送制御装置及びその制御方法、データ処理装置、プログラム
JP2008269346A (ja) * 2007-04-20 2008-11-06 Nuflare Technology Inc データ転送システム
WO2010087132A1 (ja) * 2009-01-27 2010-08-05 三菱電機株式会社 状態表示装置及び状態表示装置の表示方法
JP2020081506A (ja) * 2018-11-28 2020-06-04 株式会社藤商事 遊技機

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07281652A (ja) * 1994-04-07 1995-10-27 Sony Corp 画像処理装置
JPH07282270A (ja) * 1994-04-08 1995-10-27 Sony Corp 画像生成方法および装置
JPH0863140A (ja) * 1994-08-25 1996-03-08 Sony Corp 画像処理装置
US5646752A (en) * 1995-09-15 1997-07-08 Canon Information Systems, Inc. Color image processing apparatus which uses private tags to alter a predefined color transformation sequence of a device profile
US6075546A (en) * 1997-11-10 2000-06-13 Silicon Grahphics, Inc. Packetized command interface to graphics processor
US6331854B1 (en) * 1998-10-05 2001-12-18 Azi International Srl Method and apparatus for accelerating animation in a video graphics system
JP2001111651A (ja) * 1999-10-07 2001-04-20 Internatl Business Mach Corp <Ibm> データ伝送装置およびその方法
IL134623A0 (en) * 2000-02-20 2001-04-30 Anysoft Ltd Method for constructing and storing a set of operations from commands intended for drawing pictures on the screen
US7159066B2 (en) * 2002-08-27 2007-01-02 Intel Corporation Precharge suggestion
JP4050605B2 (ja) * 2002-12-13 2008-02-20 株式会社ルネサステクノロジ 表示制御装置およびナビゲーションシステム
US20060164425A1 (en) * 2005-01-24 2006-07-27 Ati Technologies, Inc. Methods and apparatus for updating a memory address remapping table
US7602395B1 (en) * 2005-04-22 2009-10-13 Nvidia Corporation Programming multiple chips from a command buffer for stereo image generation
KR100716142B1 (ko) * 2006-09-04 2007-05-11 주식회사 이시티 스테레오스코픽 영상 데이터의 전송 방법
JP4994994B2 (ja) * 2007-08-06 2012-08-08 キヤノン株式会社 画像処理装置、画像処理方法、及びコンピュータプログラム
US8067784B2 (en) * 2008-03-25 2011-11-29 Bridge Semiconductor Corporation Semiconductor chip assembly with post/base heat spreader and substrate
US9251621B2 (en) * 2008-08-14 2016-02-02 Reald Inc. Point reposition depth mapping
EP2319016A4 (en) * 2008-08-14 2012-02-01 Reald Inc STEREOSCOPIC DEPTH MAPPING
WO2010040146A1 (en) * 2008-10-03 2010-04-08 Real D Optimal depth mapping
US8416248B2 (en) * 2009-03-26 2013-04-09 Stmicroelectronics Ltd. Methods and device for display device in-system programming through displayable signals
JP6132772B2 (ja) * 2011-12-07 2017-05-24 三菱電機株式会社 制御装置及びリモコン装置
CN113610937B (zh) * 2021-07-13 2023-09-08 河北省地矿局第二地质大队 万能路径绘图数据特征编码和解码方法、终端及介质

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4703505A (en) * 1983-08-24 1987-10-27 Harris Corporation Speech data encoding scheme
JPS6064386A (ja) * 1983-09-20 1985-04-12 株式会社東芝 画像表示装置
JPS644828A (en) * 1987-06-26 1989-01-10 Sharp Kk Image display control system
US5155822A (en) * 1987-08-13 1992-10-13 Digital Equipment Corporation High performance graphics workstation
KR920006328B1 (ko) * 1988-03-25 1992-08-03 미쯔비시덴끼 가부시끼가이샤 표시 및 묘화 제어 시스템
JPH0292155A (ja) 1988-09-29 1990-03-30 Sony Corp 画像読み取り装置
EP0410778A3 (en) * 1989-07-28 1992-12-02 Texas Instruments Incorporated Graphics processor having a floating point coprocessor
US5315698A (en) * 1991-08-21 1994-05-24 Digital Equipment Corporation Method and apparatus for varying command length in a computer graphics system
JPH05190764A (ja) 1992-01-17 1993-07-30 Hitachi Ltd 半導体装置
CA2074388C (en) * 1992-01-30 2003-01-14 Jeremy E. San Programmable graphics processor having pixel to character conversion hardware for use in a video game system or the like
JPH05258625A (ja) 1992-03-13 1993-10-08 Sumitomo Metal Ind Ltd 超伝導線材の製造方法
JP3078655B2 (ja) 1992-07-09 2000-08-21 富士通株式会社 光ビーム走査装置
US5537224A (en) * 1992-11-24 1996-07-16 Sony Corporation Texture mapping image processing method and apparatus
CA2127053C (en) * 1993-07-02 2005-01-04 Makoto Furuhashi Method and apparatus for time-sharing cpu system bus in image generation system
JP3349787B2 (ja) * 1993-10-15 2002-11-25 株式会社ソニー・コンピュータエンタテインメント 描画データ作成装置及び描画データ作成方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005352592A (ja) * 2004-06-08 2005-12-22 Canon Inc データ転送制御装置及びその制御方法、データ処理装置、プログラム
JP2008269346A (ja) * 2007-04-20 2008-11-06 Nuflare Technology Inc データ転送システム
WO2010087132A1 (ja) * 2009-01-27 2010-08-05 三菱電機株式会社 状態表示装置及び状態表示装置の表示方法
US8970604B2 (en) 2009-01-27 2015-03-03 Mitsubishi Electric Corporation State display device and display method of state display device
JP2020081506A (ja) * 2018-11-28 2020-06-04 株式会社藤商事 遊技機

Also Published As

Publication number Publication date
JP3492761B2 (ja) 2004-02-03
CN1117627A (zh) 1996-02-28
EP0676722A3 (en) 1996-11-20
KR950033962A (ko) 1995-12-26
KR100346536B1 (ko) 2002-11-13
EP0676722A2 (en) 1995-10-11
AU689542B2 (en) 1998-04-02
CN1138234C (zh) 2004-02-11
US5664163A (en) 1997-09-02
CA2146309A1 (en) 1995-10-08
AU1631195A (en) 1995-10-19

Similar Documents

Publication Publication Date Title
JP3492761B2 (ja) 画像生成方法及び装置
KR100380705B1 (ko) 화상생성방법및장치와,게임재생장치
KR100411534B1 (ko) 영상데이터생성방법,생성장치및생성회로,및게임재생장치
CA2164269C (en) Image processing in which the image is divided into image areas with specific color lookup tables for enhanced color resolution
KR100363504B1 (ko) 영상처리장치
US5659672A (en) Method and apparatus for generating images
EP0676720B1 (en) Image generation apparatus
JP3735325B2 (ja) 画像生成装置
JP3238567B2 (ja) 画像生成方法及び装置
JP4174026B2 (ja) 画像処理装置
CA2350844C (en) Method and apparatus for producing a polygonal image representation through operation of plotting commands on image data

Legal Events

Date Code Title Description
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: 20081114

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20091114

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20091114

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20101114

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20111114

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20121114

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20121114

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20131114

Year of fee payment: 10

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term