JP3903557B2 - データ変換装置および画像生成装置 - Google Patents
データ変換装置および画像生成装置 Download PDFInfo
- Publication number
- JP3903557B2 JP3903557B2 JP33710397A JP33710397A JP3903557B2 JP 3903557 B2 JP3903557 B2 JP 3903557B2 JP 33710397 A JP33710397 A JP 33710397A JP 33710397 A JP33710397 A JP 33710397A JP 3903557 B2 JP3903557 B2 JP 3903557B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- memory
- bit
- texture
- index
- 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 - Lifetime
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/02—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the way in which colour is displayed
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/02—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the way in which colour is displayed
- G09G5/06—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the way in which colour is displayed using colour palettes, e.g. look-up tables
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Human Computer Interaction (AREA)
- General Engineering & Computer Science (AREA)
- Image Generation (AREA)
- Image Processing (AREA)
- Processing Or Creating Images (AREA)
- Image Input (AREA)
Description
【発明の属する技術分野】
本発明は、インデックスデータを実データに変換するデータ変換装置、および、そのデータ変換によりたとえばインデックステクスチャデータを実テクスチャデータに変換し、適切にテクスチャマッピングを行えるようにした画像生成装置に関する。
【0002】
【従来の技術】
たとえば画像データのような大量のデータをコンピュータなどの処理装置に記憶する際には、その装置の限られた記憶領域を有効に活用するために、データ量を削減して記憶するのが好ましい。そのような、データ量を削減する一般的な方法として、インデックスデータを使用する方法がある。
この方法は、実際のデータ(以後、これを実データまたはリアルデータと言う場合もある)にそのデータビット幅より小さいビット幅で示される番号を付与し、この番号によりデータを記憶することにより、実際のデータを直接記憶するよりも少ないデータ量でそのデータを記憶できるようにするものである。この、実際のデータに付与した番号をインデックスと言い、インデックスで参照する形式に変換されたデータをインデックスデータと言う。
【0003】
インデックスデータを用いる際には、処理装置内部に、インデックスデータと実データとを対応付けるリストであるインデックステーブルと、インデックスデータで表されたデータの両方を記憶する必要がある。しかし通常は、インデックステーブルを記憶することによって生じるデータ量の増加分より、インデックスデータを用いることによって生じるデータ量の減少分の方が圧倒的に大きいため、全体としてデータ量を大幅に削減できる。
【0004】
画像データに対して、このインデックスデータによる記憶方法を適用した場合には、処理装置の内部では画像データをインデックスデータで記憶しておき、ディスプレイにその画像データを表示する場合など、外部にその画像データを出力する時に、インデックスデータを実データに変換して出力することになる。そしてこのインデックスデータの実データへの変換は、たとえばディスプレイの表示速度などに応じて高速に行う必要がある。そこで通常このデータ変換処理は、ハードウェアにより構成されたデータ変換装置により行われる場合が多い。
【0005】
具体的には、データ変換装置はたとえばメモリを用いて構成され、インデックスをアドレスとして入力すると、出力データとして変換された実データが出力されるようになっている。
そのような、メモリにより構成されたデータ変換装置の一例を図6に示す。
図6(A)は、3ビットのインデックスデータを32ビットの実データに変換するメモリにより構成されたデータ変換装置を示す図である。また、このメモリに記憶されているインデックスデータの内容を図6(B)に示す。
【0006】
ところで、コンピュータグラフィックスの分野においては、データ量が非常に多いカラー画像データを処理対象としているために、カラーデータをインデックスを用いて表現するインデックスカラーによる処理がよく利用されている。
インデックスカラーによる処理とは、たとえばR,G,B各8ビットで構成される24ビットのリアルカラーデータに対し、必要とする特定のカラーの数により、たとえば4ビット、8ビット、16ビットなどのインデックスカラーデータを規定し、そのインデックスカラーデータに対応したインデックステーブルを保持して、インデックスカラーデータをリアルカラーデータに変換する処理である。
【0007】
コンピュータグラフィックスを用いる処理には、カラー数を限定して使用しても実用上問題が生じないようなアプリケーションも多く、そのような場合により一層、このインデックスカラーによる処理が利用されている。
このインデックスカラーデータをリアルカラーデータに高速変換するデータ変換装置は、カラーデータを変換することから、カラールックアップテーブルと呼ばれる。
【0008】
このようなインデックスデータを用いる場合、使用できるデータの種類は、インデックステーブルのエントリ数により制限される。しかし、アプリケーションによっては、インデックステーブルのエントリ数より多くのデータを使用したい場合もある。そこでこのような場合には、通常、インデックステーブルを書き換えて使用したり、インデックステーブルを複数具え、状況に応じて切り替えて使用するという方法が用いられている。ただし、インデックステーブルの書き換えを行う方法は、書き換え時間に相当する時間分、処理スピードが遅くなるため、一般的には、データ変換装置のメモリの記憶領域が許す範囲で、インデックステーブルを多くもつ方法がとられている。
【0009】
このような方法により、インデックステーブルを複数具えたとしても、各時点で使用できるデータの種類は、選択されたインデックステーブルのエントリ数で制限されることには変わりはないが、インデックステーブルを多く持ち、一連の連続した処理の中でこれを適宜切り替えて使用することにより、アプリケーションから見ると、実質的に多くのデータを使用していることになる。
このように、インデックスデータによる処理においては、実用上、インデックステーブルを多く持つことが1つの非常に重要な事項となっている。
【0010】
また、このようなインデックスデータを用いる場合には、インデックステーブルから出力されるデータのビット幅、つまり、インデックステーブルの精度も重要な事項である。
このインデックステーブルのデータ精度は、アプリケーションによりその要求が異なり、データ精度を必要とするものもあれがしないものあり、様々である。コンピュータグラフィックスの分野を例にとると、意匠デザイン用のCADなどでは、微妙な色合いの違いを表示することがデザイナーにとって非常に重要であり、インデックステーブルのデータに高い精度が要求される。しかし、機構設計用のCADなどの場合は、色によって部品を識別できればよい程度であり、部品個々の微妙な色の違いなどはあまり重要ではない。
【0011】
このように、インデックスデータを用いた処理においては、エントリの数、および、インデックステーブルの精度が非常に重要な事項である。
【0012】
【発明が解決しようとする課題】
しかしながら、これまでのデータ変換装置においては、エントリはメモリのアドレスと1対1に対応しており、インデックステーブルの精度はメモリのデータビット幅に対応しており、実質的に固定化されたもので、アプリケーションなどに対応して、調整できるようなものではない。
【0013】
そのために、インデックステーブルの精度については、比較的高い精度が要求されるアプリケーションにも適用可能な精度となるように予め設定されている場合が多い。すなわち、各データがある程度長めのビット幅を有するようにしてある場合が多い。その結果、あまり精度が必要のないようなアプリケーションに用いる場合においても、必要以上の精度をもったインデックステーブルをもって処理を行うようになっている。
また、エントリ数については、なるべく多くしておくのが好ましいが、エントリ数を増やすことは結局使用するメモリ容量を増やすことになるので、通常は、十分に増やすことができない場合が多い。
【0014】
すなわち、これまでのデータ変換装置においては、精度は不必要に高い割にはエントリ数が十分ではないなどの問題が生じ易く、メモリを有効に使用し、アプリケーションにあった適切なインデックスを用いた処理を行うことが難しいという問題があった。
その結果、このようなデータ変換装置を適用した種々の処理装置において、適切な処理が行えないという問題があった。
たとえば、画像を生成する処理などにこのデータ変換装置を適用した場合には、使用できる色の数が十分ではなく色による識別が適切に行えなかったり、微妙な色合いの表示が行えず所望の画像を表示することができないという問題が生じていた。
【0015】
したがって、本発明の目的は、1つのエントリに対するインデックステーブルの精度、および、エントリの数を、必要に応じて適宜変更することができ、アプリケーションに適合した所望の形態で、適切にインデックスデータからリアルデータの変換が行えるようなデータ変換装置を提供することにある。
また、本発明の他の目的は、処理する画像データの種類などに応じて、1つのエントリに対するインデックステーブルの精度およびエントリの数を適宜変更することができ、これにより、アプリケーションに適合した所望の形態で、適切にインデックスカラーからリアルカラーへの変換が行え、所望の画像を適切に生成することができる画像生成装置を提供することにある。
【0016】
【課題を解決するための手段】
したがって、本発明のデータ変換装置は、各々nビットのデータ幅のデータを記憶するメモリであって、任意のデータが記憶されている第1のメモリおよび第2のメモリと、入力されたデータに基づいて、前記第1のメモリおよび前記第2のメモリの当該データに対応するデータが記憶されているアドレスを求めるアドレス検出手段と、前記第1のメモリおよび前記第2のメモリに、前記求められたアドレスを印加し、当該アドレスに記憶されているデータを各々読み出すデータ読み出し手段と、前記入力されたデータに基づいて、前記第1のメモリより読み出されたデータまたは前記第2のメモリより読み出されたデータのいずれか一方を選択する第1のデータ選択手段と、前記選択されたデータを、2×nビット幅のデータに拡張するデータ拡張手段と、入力される選択信号に基づいて、前記第1のメモリより出力されたデータと前記第2のメモリより出力されたデータとを連結して形成される第1のデータ、または、前記拡張されたデータのいずれかを選択する第2のデータ選択手段とを有し、前記データの入力に対して前記第2のデータ選択手段で選択されたデータを出力する。
【0017】
また、本発明の画像生成装置は、任意の3次元立体モデルが、少なくとも3次元位置情報を有する頂点によって示される基本多角形の集合として示されている3次元画像データの、当該基本多角形の前記頂点に対して所定の座標変換を行う座標変換手段と、前記基本多角形の頂点のデータに基づいて、当該基本多角形の画素データを生成する画素データ生成手段と、前記生成された各画素データに対してテクスチャマッピングを行うための、テクスチャインデックスデータを、実テクスチャデータに変換する前記データ変換装置と、前記生成された各画素データに対して、前記変換された実テクスチャデータを用いてテクスチャマッピングし、表示用3次元画像データを生成するテクスチャマッピング手段と、前記生成された表示用3次元画像データとして記憶する画像メモリと、前記記憶された表示用3次元画像データより所望の領域のデータを読み出し表示用画面データとして出力する出力手段とを有する。
【0018】
【発明の実施の形態】
本発明の一実施の形態について図1〜図5を参照して説明する。
本実施の形態においては、家庭用ゲーム機などに適用される任意の3次元物体モデルに対する所望の3次元画像を、ディスプレイ上に高速に表示する3次元コンピュータグラフィックシステムに、本発明データ変換装置を適用した場合について説明する。
【0019】
まず、その本発明のメモリ装置を適用する、3次元コンピュータグラフィックシステムについて図1を参照して説明する。
この3次元コンピュータグラフィックシステムは、立体モデルを単位図形である三角形(ポリゴン)の張り合わせとして表現しておき、このポリゴンを描画することで表示画面の各画素の色を決定しディスプレイに表示するポリゴンレンダリング処理を行うシステムである。
また、3次元コンピュータグラフィックシステム1においては、平面を表わす(x、y)座標のほかに、奥行きを表わすz座標を用いて3次元物体を表わし、またこのx、y、zの3つの座標で3次元空間内の任意の1点を特定する。
【0020】
図1は、その3次元コンピュータグラフィックシステム1の構成を示すブロック図である。
3次元コンピュータグラフィックシステム1は、入力部2、3次元画像生成装置3および表示装置4を有する。
また、3次元画像生成装置3は、ジオメトリ演算部32、パラメータ演算部33、画素発生部34、マッピング部35、テクスチャメモリ36、メモリ制御部37、画像メモリ38およびディスプレイ制御部39を有する。
【0021】
まず、各部の構成・機能について説明する。
入力部2は、3次元画像生成装置3に対して、表示対象の立体モデルのデータを入力する。本実施の形態においては、3次元コンピュータグラフィックシステム1は家庭用ゲーム機に適用されているので、入力部2は、その家庭用ゲーム機のゲーム自体を制御する主制御装置などに接続される。その主制御装置においては、ゲームの進行状況などに基づいて表示する画面を決定し、その画面表示に必要な立体モデルを選択し、その表示方法の情報を生成する。したがって入力部2は、これらの情報を、家庭用ゲーム機の主制御装置より受け取り、3次元画像生成装置3へ入力するのに適した形態に変換するなどして3次元画像生成装置3に入力する。
具体的には、入力部2は、前述したような表示する立体モデルのポリゴンデータを3次元画像生成装置3のジオメトリ演算部32に入力する。また、その入力されるポリゴンのデータは、各頂点のx,y,z座標データおよびカラー、透明度、テクスチャなどの付随データである。
【0022】
ジオメトリ演算部32は、入力部2より入力されたポリゴンを、3次元空間中の所望の位置に配置させその位置におけるポリゴンデータを生成する。具体的には、ポリゴンの各頂点(x、y、z)ごとに、並進変換、平行変換および回転変換などの幾何学的変換処理(ジオメトリ変換処理という場合もある)を行う。ジオメトリ変換処理を行ったポリゴンデータは、パラメータ演算部33に出力される。
【0023】
パラメータ演算部33は、ジオメトリ演算部32から入力されたポリゴンのデータ、すなわち、ポリゴンの各頂点のデータに基づいて、画素発生部34においてポリゴン内部の画素データを発生するために必要なパラメータを求め、画素発生部34に出力する。具体的にはたとえば、カラー、奥行きおよびテクスチャの傾きの情報などを求める。
【0024】
画素発生部34は、ジオメトリ演算部32でジオメトリ変換処理が行われたポリゴンデータ、および、パラメータ演算部33で求められたパラメータに基づいて、ポリゴンの各頂点間を線型補間してポリゴン内部およびエッジ部分のの画素データを発生する。また画素発生回路34は、画素データの表示に対応した所定の2次元平面上でのアドレスの生成を行う。生成された画素データおよびアドレスは順次マッピング部35に入力される。
【0025】
マッピング部35は、画素発生部34で生成された画素データおよびアドレスを読み出し、その画素データに対して、テクスチャメモリ36に格納されているテクスチャデータを用いて、テクスチャマッピング処理を行う。テクスチャマッピング処理を行った画素データおよびアドレスは、メモリ制御部37にに出力する。
【0026】
テクスチャメモリ36は、マッピング部35でテクスチャマッピングする際に用いるテクスチャパタンを記憶しておくメモリである。本実施の形態において、このテクスチャメモリ36には、テクスチャデータがインデックスデータで記憶されている。
【0027】
メモリ制御部37は、マッピング部35から入力される画素データおよびアドレス、および、既に画像メモリ38に記憶されている対応する画素データに基づいて、新たな画素データを生成し、画像メモリ38に記憶する。すなわち、メモリ制御部37は、マッピング部35から入力されるアドレスに対応した画素データを画像メモリ38から読み出し、その画素データと、マッピング部35から入力された画素データとを用いて、所望の画素演算処理を行い、得られた画素データを画像メモリ38へ書き込む。
また、メモリ制御部37は、ディスプレイ制御部39から表示領域が指定された場合には、その表示領域の画素データを、画像メモリ38から読み出し、ディスプレイ制御部39に出力する。
【0028】
画像メモリ38は、表示用の画像データを記録するメモリであり、同時にアクセスすることができる2つのメモリバッファ、フレームバッファとZバッファを有する。フレームバッファには、各画素のカラー情報であるフレームデータが格納される。また、Zバッファには、各画素の奥行き情報(Z値)であるZデータが格納される。
【0029】
ディスプレイ制御部39は、メモリ制御部37を介して画像メモリ38より読み出した表示領域の画素データを、表示装置4により表示可能なたとえば所定のアナログ信号に変換し、表示装置4に出力する。なお、これに先立ちディスプレイ制御部39は、メモリ制御部37に対して、表示すべき表示領域の画素データの要求を行う。
【0030】
表示装置4は、本実施の形態においては、通常家庭などで用いられているビデオ入力端子などを有するテレビジョン受信機である。3次元画像生成装置3のディスプレイ制御部39からは、ビデオ信号入力端子を介してアナログビデオ信号が入力され、その信号に基づいて3次元映像を画面上に表示する。
【0031】
次に、この3次元コンピュータグラフィックシステム1の動作について説明する。
まず、家庭用ゲーム機のゲーム自体を制御する主制御装置などにおいて、表示する3次元画像が決定されると、その画面表示に必要な立体モデルの情報が入力部2に入力される。入力部2はこの情報に基づいて、その画像を表示するための立体モデルのポリゴンデータを3次元画像生成装置3に入力する。
3次元画像生成装置3に入力された各ポリゴンデータは、まず、ジオメトリ演算部32において、画面表示のために3次元空間中の所望の位置に配置されるように、並進変換、平行変換および回転変換などのジオメトリ変換処理が行われる。
【0032】
次に、座標変換の行われたポリゴンデータに対して、パラメータ演算部33においてポリゴン内部の画素データを発生するために必要なパラメータが求められ、画素発生部34において、実際にポリゴンの各頂点間を線型補間してポリゴン内部およびエッジ部分の画素データが発生される。
発生された画素データは、順次マッピング部35に入力される。マッピング部35においては、テクスチャメモリ36に記録されているインデックスデータであるテクスチャパタンデータを、リアルカラーデータに変換し、これを用いてテクスチャマッピング処理を行い、、生成した画素データをメモリ制御部37を介して画像メモリ38に記憶する。
【0033】
画像メモリ38に記憶された画素データは、同様の経路により入力される他の画素データや任意の制御データに基づいて適宜所望の処理が行われる。
これにより画像メモリ38には常に最新の画像データが格納され、画面表示に供される。すなわち、表示装置4に表示するための所定の領域のデータの出力の要求がディスプレイ制御部39からメモリ制御部37に対して行われ、その領域の画素データが適宜画像メモリ38から読み出され、ディスプレイ制御部39において画面表示用の所定の信号に変換され、表示装置4に出力される。
これにより、表示装置4には、所望の画像が画面に表示される。
【0034】
次に、本発明に係わるカラーデータ変換装置100について図2〜図4を参照して説明する。
カラーデータ変換装置100は、前述した3次元コンピュータグラフィックシステム1の3次元画像生成装置30の、テクスチャマッピングを処理するマッピング部35に格納されている。マッピング部35は、テクスチャメモリ36よりテクスチャデータを読み出して、画素発生部34より入力される各画素データにマッピングしていくが、前述したように、テクスチャメモリ36から読み出されるテクスチャデータは、インデックスカラーで記憶されている。したがってカラーデータ変換装置100は、このインデックスカラーをリアルカラーに変換して、テクスチャマッピングの処理に供するために設けられているものである。
【0035】
まず、カラーデータ変換装置100の機能について概略を説明する。
前述したように、カラーデータ変換装置100はインデックスカラーデータをインデックステーブル(以後、カラールックアップテーブルと言う。)を参照して、リアルカラーデータに変換する装置である。
インデックスカラーデータとしては、2ビット、4ビット、8ビットのデータを使用することができる。
カラールックアップテーブルは、複数具えることができ、ベースアドレスを指定することによりテーブルを指定するようになっている。
カラールックアップテーブルで管理するリアルカラーデータとしては、16ビットデータと32ビットデータの、精度の異なる2つのインデックスデータを扱うことができる。このインデックスデータの精度の選択は、インデックステーブルの精度のモード信号modeにより選択される。
なお、カラーデータ変換装置100から出力されるデータは、32ビットのリアルカラーデータである。
【0036】
この16ビットおよび32ビットのリアルカラーデータのフォーマットを図2に示す。
図2(A)に示すように、16ビットリアルカラーデータは、LSB側より、5ビットの赤輝度データR、5ビットの緑輝度データG、5ビットの青輝度データB、および、1ビットの透明度データAが配置された構成である。
また、図2(B)に示すように、32ビットリアルカラーデータは、各々8ビットの赤輝度データR、緑輝度データG、青輝度データBおよび透明度データAが、LSB側より配置された構成である。
【0037】
次に、カラーデータ変換装置100の具体的構成について、図3および図4を参照して説明する。
まず、図3を参照して、カラーデータ変換装置100の構成の概略を説明する。
図3に示すように、カラーデータ変換装置100は、基本的な構成部として、入力インターフェイス部110、メモリ部120およびデータ拡張部130を有する。
入力インターフェイス部110は、テクスチャメモリ36より読み出され入力されるデータより、必要なフィールドを抜き出してインデックスカラーデータを抽出し、メモリ部120に入力する。
メモリ部120は、インデックステーブルを収容し、入力されるインデックスカラーをリアルカラーに変換する。
データ拡張部130は、メモリ部120から読み出されたリアルカラーデータが16ビットデータであった場合に、32ビットのフルカラーデータに拡張して出力する。
【0038】
次に、図4を参照して、カラーデータ変換装置100の各部の構成を詳細に説明する。
図4に示すように、カラーデータ変換装置100は、入力インターフェイス部110としてセレクタ(SEL)111および加算器(ADD)112、メモリ部120として第1のメモリ(MEM1)121および第2のメモリ(MEM2)122、データ拡張部130として第1のマルチプレクサ(MUX1)131、データ拡張器(EXT)132および第2のマルチプレクサ(MUX2)133を各々有する。
【0039】
セレクタ111は、インデックステーブルの精度のモード信号mode、および、テクスチャメモリ36より読み出されたデータの下位4ビットmaddr[3:0]に基づいて、テクスチャメモリ36より読み出された32ビットのデータmdataのうちの有効な部分を選択し、必要に応じて上位に0を拡張し、8ビットのインデックスデータindexを生成して加算器112に出力する。
【0040】
加算器112は、使用するインデックステーブルのベースアドレスbaseと、セレクタ111より入力されたインデックスデータindexの値を加算し、所望のエントリを指定する9ビットのメモリアドレスaddr[8:0]を生成する。生成したメモリアドレスの下位8ビットaddr[7:0]は、第1のメモリ121および第2のメモリ122に印加され、また、最上位のデータaddr[8]は、第1のマルチプレクサ131に選択信号として出力される。
【0041】
第1のメモリ121および第2のメモリ122は、実際にカラールックアップテーブルが記憶される、各々256アドレス×16ビットデータのSRAMである。
第1のメモリ121および第2のメモリ122には、各々32ビットで合計64ビットの入力データ線WDを介して、カラールックアップテーブルが記憶される。
また、第1のメモリ121および第2のメモリ122より読み出されたデータは、第1のマルチプレクサ131および第2のマルチプレクサ133に出力される。
【0042】
なお、インデックステーブルの精度のモードが16ビットモードの時は、この第1のメモリ121および第2のメモリ122の各記憶領域は、異なるアドレス空間に割り当てられていることになり、メモリ部120全体としては512アドレス×16ビットの構成の記憶部となる。したがって、この時のインデックスエントリ数は、512エントリとなる。
また、インデックステーブルの精度のモードが32ビットモードの時は、第1のメモリ121および第2のメモリ122の各記憶領域は、同一のアドレス空間の上位16ビットの領域および下位16ビットの領域に割り当てられていることになり、メモリ部120全体としては256アドレス×32ビットの構成の記憶部となる。したがって、この時のインデックスエントリ数は、256エントリとなる。
【0043】
第1のマルチプレクサ131は、加算器112で生成されたメモリアドレスのビット8の信号addr[8]に基づいて、第1のメモリ121より入力される16ビットのデータ、または、第2のメモリ122より入力される16ビットのデータのいずれかを選択し、データ拡張器132に出力する。
【0044】
データ拡張器132は、第1のマルチプレクサ131より入力される16ビットのデータを、32ビットのデータに拡張し、第2のマルチプレクサ133に出力する。
16ビットのリアルカラーデータは、図2(A)に示すように、5ビットの赤輝度データR、5ビットの緑輝度データG、5ビットの青輝度データBおよび1ビットの透明度データAから構成されている。データ拡張器132においては、各輝度データR,G,Bに対しては、5ビットデータd[4:0]に対し、dのLSB側にdの上位3ビットのデータd[4:2]を付けて8ビットデータを作成する。また、透明度データAに対しては、予め透明度データA=0に対する8ビットのデータと、透明度データA=1に対する8ビットのデータとを用意しておき、透明度データAの値に基づいてこの8ビットのデータで置き換えることにより、8ビットのデータを作成する。
その結果、図2(B)に示すようなフォーマットの32ビットのリアルカラーデータが生成される。
【0045】
第2のマルチプレクサ133は、インデックステーブルの精度のモード信号modeに基づいて、データ拡張器132より入力される32ビットのデータ、または、第1のメモリ121および第2のメモリ122より出力される各々16ビットのデータからなる32ビットのデータのいずれかを選択し、カラーデータ変換装置100からの出力データ、すなわち32ビットリアルカラーデータとして出力する。
第2のマルチプレクサ133は、インデックステーブルの精度のモードが16ビットモードの時はデータ拡張器132の出力を選択し、32ビットモードの時は第1のメモリ121および第2のメモリ122の出力を選択する。
出力されたデータは、マッピング部35のテクスチャマッピングを行う処理部に、入力される。
【0046】
次に、カラーデータ変換装置100の動作について説明する。
まず、カラーデータ変換装置100においては、初期設定として、第1のメモリ121および第2のメモリ122へのカラールックアップテーブルの書き込みが行われる。
カラールックアップテーブルの書き込みは、セレクタ111を介してアドエスを入力し、64ビットの入力データ線WDに書き込みデータを印加し、リード/ライト制御信号r/wをライトにし、チップイネーブル信号ceをイネーブルにすることにより行う。
【0047】
データ変換を行う時は、リード/ライト制御信号r/wをリードに設定し、インデックテーブルの精度のモードmode、および、使用するインデックステーブルのベースアドレスbaseを指定した上で、テクスチャメモリ36より読み出したデータおよびアドレスの下位ビットをセレクタ111に入力する。
この入力したデータおよびアドレスに基づいて、セレクタ111でインデックスデータindexが生成され、加算器112でベースアドレスbaseと加算され、メモリアドレスaddrが生成される。
生成されたアドレスddrの下位8ビットaddr[7:0]は、第1のメモリ121および第2のメモリ122へ印加され、第1のメモリ121および第2のメモリ122よりリアルデータがよみだされる。
【0048】
インデックステーブルの精度のモードが32ビットモードの時には、第1のメモリ121および第2のメモリ122からは32ビットのリアルカラーデータが出力されるので、そのまま第2のマルチプレクサ133を介してマッピング部35のテクスチャマッピング処理部に出力される。
【0049】
また、インデックステーブルの精度のモードが16ビットモードの時は、第1のメモリ121および第2のメモリ122から読み出されたデータは各々異なる16ビットリアルカラーデータである。したがって、第1のメモリ121から出力されたデータまたは第2のメモリ122から出力されたデータのいずれかが、加算器112より出力されたアドレス信号の最上位ビットaddr[8]に基づいて、第1のマルチプレクサ131で選択され、データ拡張器132に出力される。
データ拡張器132に入力された16ビットリアルカラーデータは、前述したような方法により32ビットリアルカラーデータに拡張され、第2のマルチプレクサ133を介してマッピング部35のテクスチャマッピング処理部に出力される。
【0050】
なお、1つのカラールックアップテーブルのエントリ数は、インデックスカラーデータが何ビットかにより決まる。2ビットインデックスカラーを使用する場合、インデックスカラー値は0、1、2、3の4つであり、エントリ数はこれに対応して4エントリである。同様に、4ビットインデックスカラーなら16エントリ、8ビットインデックスカラーなら256エントリが1つのカラールックアップテーブルのエントリ数となる。
カラーデータ変換装置100全体としては、メモリ部120は16ビット×256アドレスのメモリ2個で構成しているので、インデックステーブルの精度のモードを16ビットモードで使用する場合は512エントリ、32ビットモードで使用する場合は、256エントリである。
インデックスカラーデータのビット数、および、インデックステーブルの精度のモードに応じて、メモリ部120に設定できるカラールックアップテーブルの数を図5に示す。
【0051】
このように、本実施の形態のカラーデータ変換装置100においては、インデックスカラーデータのビット数、すなわち、1つのカラールックアップテーブルの精度、および、エントリ数を、必要に応じて選択することができる。したがって、アプリケーションの種類などに応じて、必要な精度、必要なエントリ数でカラールックアップテーブルを構成することができ、アプリケーションに応じた適切なカラーデータを生成することができる。
【0052】
また、本実施の形態の3次元コンピュータグラフィックシステム1においては、テクスチャマッピング時において、アプリケーションに応じて、適宜そのインデックステーブルの精度やエントリ数を調整することができる。したがって、アプリケーションに応じて、所望のカラー画像を得ることができ、メモリの有効活用および、それによるシステムの性能アップが可能となる。
【0053】
なお、本発明は本実施の形態に限られるものではなく、種々の改変が可能である。
たとえば、データ拡張部130のデータ拡張器132におけるデータ拡張方法は、任意の方法でよい。たとえば、各データのLSB側に000や111のような特定パタンを入れて拡張する方法でもよい。
また、カラールックアップテーブルの内容が固定であるならば、メモリ部120の第1のメモリ121および第2のメモリ122を、ROMで構成するようにしてもよい。ROMで構成すれば、カラーデータ変換装置100をより小型化することができる。
また、メモリ部120に種々の演算結果を入れておくことにより、汎用的な演算器を構成するようにしてもよい。
【0054】
【発明の効果】
以上説明したように、本発明のデータ変換装置を用いれば、1つのエントリに対するインデックステーブルの精度、および、エントリの数を必要に応じて適宜変更し、アプリケーションに適合した所望の形態で、適切にインデックスデータからリアルデータの変換が行える。
また、本発明の画像生成装置によれば、処理する画像データの種類などに応じて、1つのエントリに対するインデックステーブルの精度およびエントリの数を適宜変更することができ、これにより、アプリケーションに適合した所望の形態で、適切にインデックスカラーからリアルカラーへの変換が行え、所望の画像を適切に生成することができる。
【図面の簡単な説明】
【図1】本発明の一実施の形態の3次元コンピュータグラフィックシステムの構成を示すブロック図である。
【図2】16ビットおよび32ビットのリアルカラーデータのフォーマットを示す図である。
【図3】図1に示した3次元コンピュータグラフィックシステムのマッピング部に設けられているカラールックアップテーブルの概略の構成を説明するためのブロック図である。
【図4】図2に示したカラールックアップテーブルの詳細なブロック図である。
【図5】図4に示したカラーデータ変換装置のメモリ部に設定できる、カラールックアップテーブルの数を示す図である。
【図6】従来のデータ変換装置の一例であり、メモリにより構成されたデータ変換装置を示す図である。
【符号の説明】
1…3次元コンピュータグラフィックシステム、2…入力部、3…3次元画像生成装置、4…表示装置、32…ジオメトリ演算部、33…パラメータ演算部、34…画素発生部、35…マッピング部、36…テクスチャメモリ、37…メモリ制御部、38…画像メモリ、39…ディスプレイ制御部、100…カラールックアップテーブル、110…入力インターフェイス部、111…セレクタ、112…加算器、120…メモリ部、121…第1のメモリ、122…第2のメモリ、130…データ拡張部、131…第1のマルチプレクサ、132…データ拡張器、133…第2のマルチプレクサ
Claims (9)
- 各々nビットのデータ幅のデータを記憶するメモリであって、任意のデータが記憶されている第1のメモリおよび第2のメモリと、
入力されたデータに基づいて、前記第1のメモリおよび前記第2のメモリの当該データに対応するデータが記憶されているアドレスを求めるアドレス検出手段と、
前記第1のメモリおよび前記第2のメモリに、前記求められたアドレスを印加し、当該アドレスに記憶されているデータを各々読み出すデータ読み出し手段と、
前記入力されたデータに基づいて、前記第1のメモリより読み出されたデータまたは前記第2のメモリより読み出されたデータのいずれか一方を選択する第1のデータ選択手段と、
前記選択されたデータを、2×nビット幅のデータに拡張するデータ拡張手段と、
入力される選択信号に基づいて、前記第1のメモリより出力されたデータと前記第2のメモリより出力されたデータとを連結して形成される第1のデータ、または、前記拡張されたデータのいずれかを選択する第2のデータ選択手段と
を有し、前記データの入力に対して前記第2のデータ選択手段で選択されたデータを出力する
データ変換装置。 - 前記アドレス検出手段は、前記入力されたデータと、所定のベースアドレスとを加算して、前記対応するデータが記憶されているアドレスを求める
請求項1記載のデータ変換装置。 - 前記第1のメモリおよび前記第2のメモリには実カラーデータが記憶され、
前記アドレス検出手段には、読み出し対象の実カラーデータに対応して付されたインデックスカラーデータが入力され、
インデックスカラーデータを実カラーデータに変換する
請求項2記載のデータ変換装置。 - 前記実カラーデータは、赤色輝度データ、緑色輝度データ、青色輝度データ、および、透明度データを有するデータである
ことを特徴とする請求項3記載のデータ変換装置。 - 前記第1のメモリおよび前記第2のメモリは各々16ビットのデータ幅のデータを記憶するメモリであり、
前記実カラーデータは、赤色輝度データ、緑色輝度データ、青色輝度データおよび透明度データが、各々8ビットずつの32ビットのデータ、または、5ビット、5ビット、5ビット、1ビットの16ビットのデータであり、
前記データ拡張手段は、前記読み出したデータが前記16ビットの実カラーデータであった場合に、前記選択されたデータを、32ビットの実カラーデータに拡張し、
前記第2のデータ選択手段は、前記読み出したデータが、前記32ビットの実カラーデータであった場合は、前記第1のメモリより出力されたデータと前記第2のメモリより出力されたデータとを連結して形成される32ビットの実カラーデータを選択し、前記読み出したデータが前記16ビットの実カラーデータであった場合は、前記拡張された32ビットの実カラーデータを選択する
請求項4記載のデータ変換装置。 - 前記入力されるデータのデータ幅は、nビットより小さい
ことを特徴とする請求項1記載のデータ変換装置。 - 前記第1のメモリ、前記第2のメモリ、前記アドレス検出手段、前記データ読み出し手段と、前記第1のデータ選択手段、前記データ拡張手段、および、前記第2のデータ選択手段は、
集積回路として構成されている
ことを特徴とする請求項1記載のデータ変換装置。 - 任意の3次元立体モデルが、少なくとも3次元位置情報を有する頂点によって示される基本多角形の集合として示されている3次元画像データの、当該基本多角形の前記頂点に対して所定の座標変換を行う座標変換手段と、
前記基本多角形の頂点のデータに基づいて、当該基本多角形の画素データを生成する画素データ生成手段と、
前記生成された各画素データに対してテクスチャマッピングを行うための、テクスチャインデックスデータを、実テクスチャデータに変換するデータ変換装置と、
前記生成された各画素データに対して、前記変換された実テクスチャデータを用いてテクスチャマッピングし、表示用3次元画像データを生成するテクスチャマッピング手段と、
前記生成された表示用3次元画像データとして記憶する画像メモリと、
前記記憶された表示用3次元画像データより所望の領域のデータを読み出し表示用画面データとして出力する出力手段と
を有し、
前記データ変換装置は、
各々nビットのデータ幅のデータを記憶するメモリであって、テクスチャデータの実データが記憶されている第1のメモリおよび第2のメモリと、
入力されたインデックステクスチャデータに基づいて、前記第1のメモリおよび前記第2のメモリの当該インデックステクスチャデータに対応する実テクスチャデータが記憶されているアドレスを求めるアドレス検出手段と、
前記第1のメモリおよび前記第2のメモリに、前記求められたアドレスを印加し、当該アドレスに記憶されている前記実テクスチャデータを各々読み出すデータ読み出し手段と、
前記インデックステクスチャデータに基づいて、前記第1のメモリより読み出された実テクスチャデータまたは前記第2のメモリより読み出された実テクスチャデータのいずれか一方を選択する第1のデータ選択手段と、
前記選択されたデータを、2×nビット幅のデータに拡張するデータ拡張手段と、
入力される選択信号に基づいて、前記第1のメモリより出力された実テクスチャデータと前記第2のメモリより出力された実テクスチャデータとを連結して形成される第1のデータ、または、前記拡張されたデータのいずれかを選択する第2のデータ選択手段と
を有し、前記インデックステクスチャデータの入力に応じて実テクスチャデータを出力する
画像生成装置。 - 前記アドレス検出手段は、前記入力されたインデックステクスチャデータと、インデックステーブルの所定のベースアドレスとを加算して、前記実テクスチャデータが記憶されているアドレスを求める
請求項8記載の画像生成装置。
Priority Applications (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP33710397A JP3903557B2 (ja) | 1997-12-08 | 1997-12-08 | データ変換装置および画像生成装置 |
US09/205,202 US6188386B1 (en) | 1997-12-08 | 1998-12-04 | Data conversion apparatus and image generation apparatus |
KR1019980053511A KR100528382B1 (ko) | 1997-12-08 | 1998-12-07 | 데이터변환장치 및 화상생성장치 |
EP98403092A EP0921498B1 (en) | 1997-12-08 | 1998-12-08 | Data conversion apparatus and image generation apparatus |
DE69812550T DE69812550T2 (de) | 1997-12-08 | 1998-12-08 | Vorrichtung zur Datenumwandlung und Bilderzeugung |
CN98117074A CN1103972C (zh) | 1997-12-08 | 1998-12-08 | 数据转换装置及图象发生装置 |
US09/764,433 US6624822B2 (en) | 1997-12-08 | 2001-01-19 | Data conversion apparatus and image generation apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP33710397A JP3903557B2 (ja) | 1997-12-08 | 1997-12-08 | データ変換装置および画像生成装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH11175693A JPH11175693A (ja) | 1999-07-02 |
JP3903557B2 true JP3903557B2 (ja) | 2007-04-11 |
Family
ID=18305471
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP33710397A Expired - Lifetime JP3903557B2 (ja) | 1997-12-08 | 1997-12-08 | データ変換装置および画像生成装置 |
Country Status (6)
Country | Link |
---|---|
US (1) | US6188386B1 (ja) |
EP (1) | EP0921498B1 (ja) |
JP (1) | JP3903557B2 (ja) |
KR (1) | KR100528382B1 (ja) |
CN (1) | CN1103972C (ja) |
DE (1) | DE69812550T2 (ja) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100359311B1 (ko) * | 2000-10-20 | 2002-10-31 | 아이원더넷 주식회사 | 이미지데이터의 메모리 저장방법 |
KR100359308B1 (ko) * | 2000-10-20 | 2002-10-31 | 아이원더넷 주식회사 | 이미지 제작툴에서의 메모리 관리방법 |
US20040083430A1 (en) * | 2002-10-29 | 2004-04-29 | Boonen Paul J. J. | Method and apparatus to process portable document format data containing transparency |
KR100492555B1 (ko) | 2002-12-10 | 2005-06-02 | 엘지전자 주식회사 | 이미지 변환 방법 및 장치 |
JP4614261B2 (ja) * | 2003-10-02 | 2011-01-19 | ルネサスエレクトロニクス株式会社 | コントローラドライバ,及びその動作方法 |
JP4111192B2 (ja) * | 2004-12-28 | 2008-07-02 | セイコーエプソン株式会社 | メモリコントローラ、表示コントローラ及びメモリ制御方法 |
KR100679289B1 (ko) * | 2006-04-10 | 2007-02-06 | 최금영 | 벡터화소를 이용한 이미지 처리 시스템 |
CN102158717B (zh) * | 2010-02-11 | 2013-09-18 | 原相科技股份有限公司 | 数据转换方法及数据转换装置 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2167926A (en) | 1984-11-26 | 1986-06-04 | Philips Nv | Colour signal generator for crt image display |
WO1989000744A1 (en) | 1987-07-16 | 1989-01-26 | Nova Graphics International Corporation | Look-up table extension method and apparatus |
US5038300A (en) | 1988-06-29 | 1991-08-06 | Digital Equipment Corporation | Extendable-size color look-up table for computer graphics systems |
US5091717A (en) | 1989-05-01 | 1992-02-25 | Sun Microsystems, Inc. | Apparatus for selecting mode of output in a computer system |
JP2972775B2 (ja) * | 1990-02-14 | 1999-11-08 | 株式会社東芝 | データ処理装置 |
NL9100540A (nl) | 1991-03-26 | 1992-10-16 | Music Semiconductors N V | Kleurpaletschakeling. |
WO1993004461A1 (en) | 1991-08-15 | 1993-03-04 | Metheus Corporation | High speed ramdac with reconfigurable color palette |
JP3623972B2 (ja) * | 1993-06-04 | 2005-02-23 | 株式会社東芝 | 図形描画処理装置 |
-
1997
- 1997-12-08 JP JP33710397A patent/JP3903557B2/ja not_active Expired - Lifetime
-
1998
- 1998-12-04 US US09/205,202 patent/US6188386B1/en not_active Expired - Lifetime
- 1998-12-07 KR KR1019980053511A patent/KR100528382B1/ko active IP Right Grant
- 1998-12-08 EP EP98403092A patent/EP0921498B1/en not_active Expired - Lifetime
- 1998-12-08 DE DE69812550T patent/DE69812550T2/de not_active Expired - Lifetime
- 1998-12-08 CN CN98117074A patent/CN1103972C/zh not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
EP0921498A3 (en) | 2000-07-12 |
CN1103972C (zh) | 2003-03-26 |
CN1220426A (zh) | 1999-06-23 |
KR19990062869A (ko) | 1999-07-26 |
EP0921498B1 (en) | 2003-03-26 |
KR100528382B1 (ko) | 2006-01-27 |
JPH11175693A (ja) | 1999-07-02 |
DE69812550T2 (de) | 2004-01-29 |
EP0921498A2 (en) | 1999-06-09 |
DE69812550D1 (de) | 2003-04-30 |
US6188386B1 (en) | 2001-02-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3678428B2 (ja) | クロマキー、透明性、およびフォグ動作を行う方法および装置 | |
US5850224A (en) | Three dimensional parallel drawing apparatus for synthesizing graphics data with image data using a pixel depth buffer and an image depth register | |
US5877769A (en) | Image processing apparatus and method | |
US6133923A (en) | Method and apparatus for texture data | |
JP4707782B2 (ja) | 画像処理装置およびその方法 | |
JP3903557B2 (ja) | データ変換装置および画像生成装置 | |
US6078335A (en) | Method and apparatus for determining level of detail for texture filtering | |
KR100806345B1 (ko) | 3차원 그래픽 가속기 그리고 텍스쳐 데이터 독출 방법 | |
US6373494B1 (en) | Signal processing apparatus and image processing apparatus | |
JPH01131976A (ja) | テクスチャマッピング装置およびその方法 | |
US6518969B2 (en) | Three dimensional graphics drawing apparatus for drawing polygons by adding an offset value to vertex data and method thereof | |
JP3066035B2 (ja) | 計算機図形処理表示装置制御システムのためのテクスチャマッピング技法 | |
US6624822B2 (en) | Data conversion apparatus and image generation apparatus | |
JP3741053B2 (ja) | 画像処理装置 | |
US6211885B1 (en) | Apparatus for outputting an image in which data of points on texture pattern are mapped to data of dots on display plane | |
US6329999B1 (en) | Encoder, method thereof and graphic processing apparatus | |
JPH11306366A (ja) | グラフィック演算装置およびその方法 | |
JP2001076175A (ja) | 演算処理回路およびその方法と画像処理装置 | |
JP2000155851A (ja) | テクスチャ・マッピング装置及びこれを具備したレンダリング装置、並びに情報処理装置 | |
JPH09212654A (ja) | 描画装置及び描画方法 | |
JP4482996B2 (ja) | データ記憶装置とその方法および画像処理装置 | |
JP3555940B2 (ja) | 画像処理装置及び画像処理方法 | |
JP4271270B2 (ja) | データ記憶装置、データ記憶装置の制御装置とその方法および画像生成装置 | |
JP3358891B2 (ja) | Z値の透視変換処理方法及び画像処理装置 | |
JPH06203171A (ja) | 画像生成装置および方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040115 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20061208 |
|
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: 20061219 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070101 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100119 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110119 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120119 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130119 Year of fee payment: 6 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |