JP3586991B2 - テクスチャ・データ読出装置およびレンダリング装置 - Google Patents
テクスチャ・データ読出装置およびレンダリング装置 Download PDFInfo
- Publication number
- JP3586991B2 JP3586991B2 JP24913396A JP24913396A JP3586991B2 JP 3586991 B2 JP3586991 B2 JP 3586991B2 JP 24913396 A JP24913396 A JP 24913396A JP 24913396 A JP24913396 A JP 24913396A JP 3586991 B2 JP3586991 B2 JP 3586991B2
- Authority
- JP
- Japan
- Prior art keywords
- memory
- texture data
- pixel
- memory address
- read
- 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
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/04—Texture mapping
Landscapes
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Description
【産業上の利用分野】
この発明は、3次元コンピュータ・グラフィックス・システムで表現力を飛躍的に向上させる手法であるテクスチャ・マッピングに用いられるテクスチャ・データ読出装置およびレンダリング装置に関するものである。特に、この発明は、CAD(コンピュータ支援設計)やデザイン、ゲーム等の幅広い利用分野に応用できる。
【0002】
【従来の技術】
テクスチャ・マッピングは、コンピュータ・グラフィックスで三角形や四角形を描画する際に、その表面に予め用意しておいた模様やイメージ等のテクスチャ・データを張り付ける手法で、リアリティの高い画像を生成するものである。図6に例としてテクスチャ・マッピングを施した四角形が回転しているようすを示す。一般的にテクスチャ・マッピングは、描画時には三角形単位に行われ、テクスチャ・データをメモリに格納しておき、それを以下に示すようにメモリ・アドレスを算出して、メモリからテクスチャ・データを読み出すことにより処理を行う。
【0003】
一般的なテクスチャ・マッピングの一例の順序を以下に示す。1)三角形の各頂点に対して、テクスチャ座標(S1,T1,Q1),(S2,T2,Q2),(S3,T3,Q3)を与える。2)三角形の内部の点のテクスチャ座標(S,T,Q)を頂点のテクスチャ座標から線形補間して求める。3)メモリ・アドレス(U,V)をU=S/Q,V=T/Qの除算より求める。4)メモリ・アドレスによりメモリからテクスチャ・データを読み出して三角形に張り付ける。
【0004】
一般的なコンピュータ・グラフィックス・システムでは、テクスチャ・マッピングを、図7Aに示すように、テクスチャ・データ読出装置51がメモリ52からテクスチャ・データを読み出すことにより実現しているが、メモリ52からの読み出し速度が充分に得られないため、テクスチャ・マッピング装置全体の性能が制限されているのが現状である。
【0005】
そこで、図7Bに示すように、テクスチャ・データ読出装置51とメモリ52との間にテクスチャ・データを一時的に貯えておくキャッシュ装置53を設け、テクスチャ・データ読出装置51がキャッシュ装置53から高速にテクスチャ・データを読み出すことにより、テクスチャ・マッピング装置を実現する場合もある。
【0006】
【発明が解決しようとする課題】
このような構成では、テクスチャ・データの大きさがキャッシュ装置の容量よりも小さい場合は、高速なテクスチャ・データの読み出しが可能であるが、テクスチャ・データの大きさがキャッシュ装置の容量より大きい場合には、キャッシュ装置内のテクスチャ・データの入れ換えのためメモリからテクスチャ・データを読み出してキャッシュ装置へ書き込むことが必要になり、キャッシュ装置が高速化のための手段として有効に働かなくなるという問題点があった。
【0007】
また、キャッシュ装置は、回路規模が大きいのでキャッシュ装置を使用すると、小規模なテクスチャ・マッピング装置が実現できないという問題点も併せてあった。
【0008】
従って、この発明は、このような実情に鑑みてなされたものであり、メモリ読み出し対象である画素のメモリ・アドレスが前回メモリ読み出し対象であった隣接画素のメモリ・アドレスと同じ画素は、メモリからのテクスチャ・データの読み出しを行わず、以前にメモリ・アドレスが同じであった画素が読み出したテクスチャ・データを再使用することによりメモリ・アクセス量を削減することで、キャッシュ装置のような大規摸な回路なしで、小規模でかつ高速なテクスチャ・マッピング装置を実現する、テクスチャ読出装置およびレンダリング装置を提供することを目的とする。
【0009】
【課題を解決するための手段】
請求項1に記載の発明は、テクスチャ・マッピングを行う際に、メモリからテクスチャ・データを読み出すための読出装置において、メモリ読み出し対象である画素のメモリ・アドレスと、前回のメモリ読み出し対象であった隣接画素のメモリ・アドレスとの比較を行い、画素のメモリ・アドレスが隣接画素のメモリ・アドレスと異なる場合のみ画素のメモリ・アドレスにしたがって、メモリにアクセスを行い新しいテクスチャ・データを読み出し、画素のメモリ・アドレスが隣接画素のメモリ・アドレスと同じ場合には、メモリから新しいテクスチャ・データの読み出しをせずメモリ・アドレスが同じ画素が続く間保存されているテクスチャ・データを再使用することを特徴とするテクスチャ・データ読出装置である。
【0010】
また、請求項2に記載の発明は、テクスチャ・マッピングを行う際に、メモリからテクスチャ・データを読み出すための読出装置において、メモリ読み出し対象である画素のメモリ・アドレスと、前回メモリ読み出し対象であった隣接画素のメモリ・アドレスとを比較してメモリ読み出しを行うか否かを決定するメモリ・アドレス比較手段と、メモリ・アドレス比較手段の比較結果から新しくメモリから読み出したテクスチャ・データを使用するか、それとも以前にメモリから読み出したテクスチャ・データを再使用するかの情報を記憶しておく比較結果記憶手段と、メモリ・アドレス比較手段の比較結果にしたがって、メモリ・アクセスを行ってメモリからテクスチャ・データを読み出すメモリ・アクセス手段と、メモリ・アクセス手段によって、メモリから読み出したテクスチャ・データを記憶しておくテクスチャ・データ記憶手段と、比較結果記憶手段に記憶されている情報にしたがって、テクスチャ・データ記憶手段から所望のテクスチャ・データを読み出すテクスチャ・データ再構成手段を有し、メモリ読み出し対象である画素のメモリ・アドレスが前回メモリ読み出し対象であった隣接画素のメモリ・アドレスと同じ画素は、メモリからのテクスチャ・データの読み出しを行わず、以前にメモリ・アドレスが同じであった画素が読み出したテクスチャ・データを再使用することを特徴とするテクスチャ・データ読出装置である。
【0011】
そして、請求項4に記載の発明は、複数のメモリと、メモリからテクスチャ・データを読み出すための複数のテクスチャ・データ読出装置とが並列に設けられ、同時に複数の画素のテクスチャ・データをメモリから読み出すようになされ、テクスチャ・データ読出装置のそれぞれは、メモリ読み出し対象である画素のメモリ・アドレスと、前回のメモリ読み出し対象であった隣接画素のメモリ・アドレスとの比較を行い、画素のメモリ・アドレスが隣接画素のメモリ・アドレスと異なる場合のみ画素のメモリ・アドレスにしたがって、メモリにアクセスを行い新しいテクスチャ・データを読み出し、画素のメモリ・アドレスが隣接画素のメモリ・アドレスと同じ場合には、メモリから新しいテクスチャ・データの読み出しをせずメモリ・アドレスが同じ画素が続く間保存されているテクスチャ・データを再使用するものであることを特徴とするレンダリング装置である。
【0012】
この発明に依れば、テクスチャ・マッピングを行う際に、メモリ読み出し対象である画素のメモリ・アドレスが前回のメモリ読み出し対象であった隣接画素のメモリ・アドレスと同じ画素は、メモリからのテクスチャ・データの読み出しを行わず、以前にメモリ・アドレスが同じ画素が読み出したテクスチャ・データを再使用することによりメモリ・アクセス量を大幅に削減する。
【0013】
【実施例】
以下、この発明の一実施例について図面を参照して説明する。一実地例として、コンピュータ・グラフィックスでは三角形をスキャンライン単位に分割して描画を行うのが一般的であるので、1スキャンライン上でメモリからテクスチャ・データを読み出す場合について説明する。
【0014】
図1は、この発明のメモリからテクスチャ・データを読み出す装置の一実施例の概略構成を示す。この図1は、テクスチャ・データ読出装置12およびメモリ14からなり、さらにテクスチャ・データ読出装置12は、メモリ・アドレス比較装置15、比較結果記憶装置16、メモリ・アクセス装置17、テクスチャ・データ記憶装置18およびテクスチャ・データ再構成装置19からなる。11で示す入力端子を介してメモリアドレス(U,V)は、メモリ・アドレス比較装置15へ供給される。
【0015】
メモリ・アドレス比較装置15は、メモリ読み出し対象である画素のメモリ・アドレスと、前回のメモリ読み出し対象であった隣接画素のメモリ・アドレスを比較してメモリ読み出しを行うか否かを決定するメモリ・アドレス比較手段である。
【0016】
比較結果記憶装置16は、メモリ・アドレス比較装置15の比較結果(情報Info)から新しくメモリから読み出したテクスチャ・データを使用するか、それとも以前にメモリから読み出したテクスチャ・データを使用するかの情報を記憶しておく比較結果記憶手段である。
【0017】
メモリ・アクセス装置17は、メモリ・アドレス比較装置15の比較結果にしたがって、メモリ・アクセスを行ってメモリ14からテクスチャ・データC(U,V)を読み出すメモリ・アクセス手段である。
【0018】
テクスチャ・データ記憶装置18は、メモリ・アクセス装置17によってメモリ14から読み出したテクスチャ・データC(U,V)を記憶しておくテクスチャ・データ記憶手段である。
【0019】
テクスチャ・データ再構成装置19は、比較結果記憶装置16に記憶されている情報(比較結果Info)にしたがって、テクスチャ・データ記憶装置18から所望のテクスチャ・データC(U,V)を読み出すテクスチャ・データ再構成手段である。
【0020】
このように、メモリ読み出し対象である画素のメモリ・アドレスが前回メモリ読み出し対象であった隣接画素のメモリ・アドレスと同じ画素は、メモリからのテクスチャ・データの読み出しを行わず、以前にメモリ・アドレスが同じであった画素が読み出したテクスチャ・データを再使用することによりメモリ・アクセス量を削減することを特徴としている。
【0021】
具体的に、この図1の構成による処理の一例を図2を用いて説明する。図1のメモリ・アドレス比較装置15は、メモリ読み出し対象である画素のメモリ・アドレスと、前回メモリ読み出し対象であった隣接画素のメモリ・アドレスを比較してメモリ読み出しを行うか否かを決定する装置である。
【0022】
図2に示すように、スキャンライン上に5画素があって、メモリ14からテクスチャ・データを読み出すときの小数部まで含めたメモリ・アドレス(U,V)の一例を、以下に示す。
(1.4,1.2),(1.9,1.7),(2.4,2.2),(2.9,2.7),(3.4,3.2)
【0023】
これらのメモリ・アドレスの値を最も整数に近い値になるように小数点以下を丸めると、
(1,1),(2,2),(2,2),(3,3),(3,3)
となり、5つの画素のテクスチャ・データを得るためには、メモリ14から5回の読み出しが必要になる。
【0024】
ここで、各画素のメモリ・アドレスをそれぞれ直前の画素のメモリ・アドレスと比較してみると、3番目の画素は2番目の画素と、5番目の画素は4番目の画素と同じメモリ・アドレスである。よって、メモリ・アドレス比較装置15は、3番目の画素は2番目の画素の、5番目の画素は4番目の画素のメモリ読み出しによるテクスチャ・データを再使用することを決定し、
(1,1),(2,2),(3,3)
の3つのメモリ・アドレスのみを図1のメモリ・アクセス装置17に送る。
【0025】
また、どの画素が新しくメモリから読み出すテクスチャ・データを使用するのか、それとも以前にメモリから読み出したテクスチャ・データを再使用するのかを示す情報Infoをメモリ・アドレス比較装置15から比較結果記憶装置16に送る。
【0026】
送る情報Infoの一例としては、新しくメモリ読み出しを行う画素は `1’ で表し、テクスチャ・データの再利用を行う画素は `0’ で表すと、1ビットの情報で表現することができる。情報Infoは、1画素目の比較結果をInfo1、2画素目の比較結果をInfo2、3画素目の比較結果をInfo3、4画素目の比較結果をInfo4および5画素目の比較結果をInfo5で表すそれぞれ1ビットのデータからなる。上述の図2に示すスキャンライン上の画素の例では、この情報Infoは、1,1,0,1,0となる。
【0027】
図1の比較結果記憶装置16は、メモリ・アドレス比較装置15から送られてくる、新しくメモリから読み出しを行うか、それとも直前の画素のテクスチャ・データを再使用するかの情報Infoを記憶しておくFIFO(FIRST IN FIRST OUT)型の記憶装置であり、図1のテクスチャ・データ再構成装置19からの要求により記憶されている情報が順次読み出される。
【0028】
図1のメモリ・アクセス装置17は、メモリ・アドレス比較装置15の比較結果にしたがってメモリ・アクセスを行ってメモリ14からテクスチャ・データを読み出す装置である。
【0029】
図2のスキャンライン上の5画素の例では、メモリ・アドレス比較装置15から送られてくる、
(1,1),(2,2),(3,3)
の3つのメモリ・アドレスにしたがってメモリ14からテクスチャ・データを読み出す。
【0030】
読み出したテクスチャ・データをC(U,V)とすると、
C(1,1),C(2,2),C(3,3)
の3つのテクスチャ・データを図1のテクスチャ・データ記憶装置18に送る。
【0031】
図1のテクスチャ・データ記憶装置18は、メモリ・アクセス装置17によってメモリ14から読み出したテクスチャ・データを記憶しておくFIFO型の記憶装置であり、テクスチャ・データ再構成装置19からの要求により記憶されているテクスチャ・データが順次読み出される。
【0032】
図1のテクスチャ・データ再構成装置19は、テクスチャ・データ記憶装置18に記憶されているテクスチャ・データから、比較結果記憶装置16に記憶されている情報にしたがって所望のテクスチャ・データを読み出す装置である。
【0033】
図2のスキャンライン上の5画素の例では、比較結果記憶装置16とテクスチャ・データ記憶装置18に記憶されている内容は以下のとおりである。
【0034】
比較結果記憶装置:1,1,0,1,0
テクスチャ・データ記憶装置:C(1,1),C(2,2),C(3,3)
この内容から5画素分のテクスチャ・データの再構成する方法を以下に示す。
【0035】
1画素目)比較結果記憶装置16から新しいテクスチャ・データを使用することを示す `1’ を読み出して、テクスチャ・データ記憶装置18から最初のテクスチャ・データC(1,1)を読み出す。
【0036】
2画素目)比較結果記憶装置16から引き続いて `1’ を読み出して、テクスチャ・データ記憶装置18から新しいテクスチャ・データC(2,2)を読み出す。
【0037】
3画素目)比較結果記憶装置16からテクスチャ・データの再使用を示す `0’ を読み出して、テクスチャ・データ記憶装置18から新しいテクスチャ・データを読み出すことなく、テクスチャ・データC(2,2)を再使用する。
【0038】
4画素目)比較結果記憶装置16から `1’ を読み出して、テクスチャ・データ記憶装置18から新しいテクスチャ・データC(3,3)を読み出す。
【0039】
5画素目)比較結果記憶装置16から `0’ を読み出して、テクスチャ・データ記憶装置18から新しいテクスチャ・データを読み出すことなく、テクスチャ・データC(3,3)を再使用する。
【0040】
以上にようにして、3回のメモリ・アクセスのみで5画素分のテクスチャ・データ
C(1,1),C(2,2),C(2,2),C(3,3),C(3,3)
を再構成する。
【0041】
この発明では、上述のように、メモリ読み出し対象である画素のメモリ・アドレスが前回のメモリ読み出し対象であった隣接画素のメモリ・アドレスと同じであればメモリからテクスチャ・データの読み出しを行わず、以前にメモリ・アドレスが同じであった画素が読み出したテクスチャ・データを再使用することによりメモリ・アクセス量を削減しているので低速なメモリを使用しても高速なテクスチャ・データ読出装置を実現できる。
【0042】
また、この発明は、高画質な画像生成のために図3に示すように4近傍補間を行う場合に対しても適用できる。以下に、図1の構成によって、4近傍補間を行う場合の他の処理例を示す。
【0043】
4近傍補間を行う場合は、各画素に与えられたメモリ・アドレスの最も近傍の4つのメモリ・アドレスからテクスチャ・データを読み出す。与えられたメモリ・アドレスの小数部を切り捨てたアドレスを(U0,V0)とすると、(U0,V0),(U0+1,V0),(U0,V0+1),(U0+1,V0+1)の4つのメモリ・アドレスからテクスチャ・データを読み出す。
【0044】
図3の例では、以下に示す20個のメモリ・アドレスからテクスチャ・データを読み出す必要がある。
【0045】
1画素目:(1,1),(2,1),(1,2),(2,2)
2画素目:(1,1),(2,1),(1,2),(2,2)
3画素目:(2,2),(3,2),(2,3),(3,3)
4画素目:(2,2),(3,2),(2,3),(3,3)
5画素目:(3,3),(4,3),(3,4),(4,4)
【0046】
図1のメモリ・アドレス比較装置15は、各画素の4つのメモリ・アドレスと直前の画素の4つのメモリ・アドレスを比較して同じメモリ・アドレスの重複を取り除き、メモリ・アドレスの異なるメモリ・アドレスのみを図1のメモリ・アクセス装置17に送る。
【0047】
図3の例では以下の10個のメモリ・アドレスをメモリ・アクセス装置17に送る。
1画素目:(1,1),(2,1),(1,2),(2,2)
3画素目:(3,2),(2,3),(3,3)
5画素目:(4,3),(3,4),(4,4)
【0048】
また、各画素について図1のテクスチャ・データ再構成装置19でテクスチャ・データの再構成を行う際に必要となる情報である以下の情報1および情報2をメモリ・アドレス比較装置15から比較結果記憶装置16に送る。
【0049】
第1の情報として情報1は、各画素について新しいテクスチャ・データを使用するか、以前に読み出したテクスチャ・データを再使用するかを示す各画素の4つのメモリ・アドレスに対応する4ビットの情報である。
【0050】
第2の情報として情報2は、前回と今回の各画素の4つのメモリ・アドレスの重複の関係を示すために、各画素のメモリ・アドレス(U,V)のUおよびVのそれぞれの最下位の1ビットの情報である。
【0051】
図3の例では、各画素について以下の情報Infoが比較結果記憶装置16に送られる。表中の各情報と4つのメモリ・アドレスの対応関係は、情報1並びに情報2とも左から(U0,V0),(U0+1,V0),(U0,V0+1),(U0+1,V0+1)の順序で対応している。
【0052】
【0053】
以後、説明を簡略化するために、情報2の(0,0)をA、(1,0)をB、(0,1)をC、(1,1)をDと記すことにする。したがって、上記表は、以下のようになる。
【0054】
【0055】
上記表では、たとえば3画素目は、情報1から(U0,V0)は、メモリ・アクセスをせずテクスチャ・データの再使用をすることがわかり、情報2からこのテクスチャ・データは、同じAという情報をもつ2画素目(1画素目)の(U0+1,V0+1)であることがわかる。
【0056】
図1のメモリ・アクセス装置17は、メモリ・アドレス比較装置15から送られてくるメモリ・アドレス(U,V)にしたがってメモリからテクスチャ・データを読み出し、読み出したテクスチャ・データをC(U,V)を、図1のテクスチャ・データ記憶装置18に送る。
【0057】
図3の例では、メモリ・アドレス比較装置15から送られてくる、
1画素目:(1,1),(2,1),(1,2),(2,2)
3画素目:(3,2),(2,3),(3,3)
5画素目:(4,3),(3,4),(4,4)
のメモリ・アドレスから以下のテクスチャ・データC(U,V)をメモリ14から読み出しテクスチャ・データ記憶装置18に送る。
【0058】
C(1,1),C(2,1),C(1,2),C(2,2)
C(3,2),C(2,3),C(3,3)
C(4,3),C(3,4),C(4,4)
【0059】
図1のテクスチャ・データ記憶装置18は、メモリ・アクセス装置17から送られてくるテクスチャ・データC(U,V)を記憶するFIFO型の記憶装置である。
【0060】
4近傍補間を行う場合には、各画素の4つのメモリ・アドレスに対応したテクスチャ・データを記憶し、テクスチャ・アドレス(U,V)の最下位ビットにしたがって、C(0,0)をA,C(1,0)をB,C(0,1)をC,C(1,1)をDの4つのFIFO型のテクスチャ・データ記憶装置18に記憶する。
【0061】
図3の例では、A,B,C,Dにそれぞれ以下のテクスチャ・データC(U,V)が記憶される。
A:C(2,2),C(4,4)
B:C(1,2),C(3,2),C(3,4)
C:C(2,1),C(2,3),C(4,3)
D:C(1,1),C(3,3)
【0062】
図1のテクスチャ・データ再構成装置19は、テクスチャ・データ記憶装置18に記憶されているテクスチャ・データを、比較結果記憶装置16に記憶されている情報にしたがって所望のテクスチャ・データを読み出す装置である。
【0063】
テクスチャ・データの再構成の方法は、比較結果記憶装置16の情報1によりテクスチャ・データ記憶装置18から新しいテクスチャ・データを読み出すか、それともテクスチャ・データの再使用をするかを決定し、比較結果記憶装置16の情報2よりA,B,C,DのどのFIFO型のテクスチャ・データ記憶装置18からテクスチャ・データを読むのかを決定する。
【0064】
図3の例では、比較結果記憶装置16およびテクスチャ・データ記憶装置18から読み出される情報およびテクスチャ・データ(U,V)は以下のようになり、各画素に対して4つ、計20個のテクスチャ・データが再構成される。
【0065】
1画素目)
比較結果記憶装置:情報1(1111)並びに情報2(DCBA)
テクスチャ・データ記憶装置:
Dから新しいテクスチャ・データ C(1,1)
Cから新しいテクスチャ・データ C(2,1)
Bから新しいテクスチャ・データ C(1,2)
Aから新しいテクスチャ・データ C(2,2)
【0066】
2画素目)
比較結果記憶装置:情報1(0000)並びに情報2(DCBA)
テクスチャ・データ記憶装置:
Dからテクスチャ・データ再使用 C(1,1)
Cからテクスチャ・データ再使用 C(2,1)
Bからテクスチャ・データ再使用 C(1,2)
Aからテクスチャ・データ再使用 C(2,2)
【0067】
3画素目)
比較結果記憶装置:情報1(0111)並びに情報2(ABCD)
テクスチャ・データ記憶装置:
Aからテクスチャ・データ再使用 C(2,2)
Bから新しいテクスチャ・データ C(3,2)
Cから新しいテクスチャ・データ C(2,3)
Dから新しいテクスチャ・データ C(3,3)
【0068】
4画素目)
比較結果記憶装置:情報1(0000)並びに情報2(ABCD)
テクスチャ・データ記憶装置:
Aからテクスチャ・データ再使用 C(2,2)
Bからテクスチャ・データ再使用 C(3,2)
Cからテクスチャ・データ再使用 C(2,3)
Dからテクスチャ・データ再使用 C(3,3)
【0069】
5画素目)
比較結果記憶装置:情報1(0111)並びに情報2(DCBA)
テクスチャ・データ記憶装置:
Dからテクスチャ・データ再使用 C(3,3)
Cから新しいテクスチャ・データ C(4,3)
Bから新しいテクスチャ・データ C(3,4)
Aから新しいテクスチャ・データ C(4,4)
【0070】
以上のように、10回のメモリ・アクセスで20個のテクスチャ・データを再構成することができるので、4近傍補間を行う場合であっても、この発明は、メモリ・アクセス量を削減でき、高速なテクスチャ・データ読出装置が実現できる。
【0071】
このテクスチャ・データ読出装置を使用したレンダリング装置40の一実施例を図4に示す。レンダリング装置24は、XY座標(X,Y)の処理を行うXY処理装置31と、カラー値(R,G,B)の処理を行うカラー処理装置32と、テクスチャ座標(S,T,Q)の処理を行うテクスチャ処理装置33と、カラー処理装置32とテクスチャ処理装置33の出力に対して演算を行って新しいカラーを生成するブレンド装置34から構成され、テクスチャ・データを記憶するテクスチャ・メモリ25と、描画データを記憶するフレーム・バッファ26に接続される。
【0072】
XY処理装置31は、入力端子21から供給される三角形の三頂点のXY座標(X,Y)から、三角形内部のXY座標(x,y)を発生する。カラー処理装置32は、入力端子22から供給される三角形の三頂点のカラー値(R,G,B)から、三角形内部の画素のカラー値Cfをそれぞれ線形補間によって求め、後段のブレンド装置34に出力する。
【0073】
テクスチャ処理装置33は、テクスチャ・アドレス発生装置35と、図1に示す一実施例として示したこの発明のテクスチャ・データ読出装置36から構成され、入力端子23から供給される三角形の三頂点のテクスチャ座標(S,T,Q)からテクスチャ・アドレス発生装置35において三角形内部のテクスチャ・アドレス(U,V)を発生して、それをテクスチャ・データ読出装置36に入力させることによりテクスチャ・メモリ25からテクスチャ・データCtを読み出しそれを後段のブレンド装置34に出力する。
【0074】
ブレンド装置34は、カラー処理装置32からの出力Cfと、テクスチャ処理装置33からの出力Ctに対して、加算や乗算等の演算を行って新しいカラーCを生成する。
【0075】
以上の各処理装置により発生した新しいカラーCを、XY処理装置31の発生するXY座標(x,y)にしたがってフレーム・バッファ26に書き込むことにより、レンダリング装置を実現する。
【0076】
このレンダリング装置24は、低速なメモリを使用してもテクスチャ・キャッシュのような大規摸な回路なしで、高速なテクスチャ・データの読み出しが可能になるので、高速なテクスチャ・マッピングを小規模な回路で実現できるという利点がある。
【0077】
また、この発明のテクスチャ・データ読み出し方法は、スキャンライン単位に独立に行うことも可能なので、図4のレンダリング装置24を複数使用したレンダリング装置の他の実施例を図5に示す。
【0078】
入力端子41から供給される三角形の三頂点のXY座標(X,Y)、三角形の三頂点のカラー値(R,G,B)、三角形の三頂点のテクスチャ座標(S,T,Q)が高速レンダリング装置42へ供給される。高速レンダリング装置42は、上述したレンダリング装置24を複数個使用して、異なるスキャンラインに割り振り並列に動作させるようにしたものである。入力された各信号は、レンダリング装置241 〜24n へ供給され、上述したような処理が施され、テクスチャ・メモリ251 〜25n から新しいカラーC1 〜Cn が生成され、それぞれ対応するXY座標(x1 ,y1 )〜(xn ,yn )にしたがってフレーム・バッファ26に書き込む。これによって、上述したレンダリング装置24に比べて数倍も高速な高速レンダリングを構成することが可能になる。
【0079】
【発明の効果】
この発明に依れば、メモリからテクスチャ・データを読み出す際に、メモリ読み出し対象である画素のメモリ・アドレスと、前回のメモリ読み出し対象であった隣接画素のメモリ・アドレスとの比較を行って、そのメモリ・アドレスが異なる場合のみテクスチャ・メモリにアクセスを行い新しいテクスチャ・データを読み出し、メモリ・アドレスが同じ場合には読み出しをせずメモリ・アドレスが同じ画素が続く間保存されているテクスチャ・データを再使用することにより、メモリ・アクセス量を削減できるので、低速なメモリを使用してもテクスチャ・キャッシュのような大規摸な回路なしで、高速なテクスチャ・データの読み出しが可能になり、高速なテクスチャ・マッピングを小規模な回路で実現できる。
【図面の簡単な説明】
【図1】この発明の一実施例の概略構成を示すブロック図である。
【図2】この発明の一実施例の動作の一例を説明するための概略図である。
【図3】この発明の一実施例の4近傍補間を行う場合の動作を説明するための概略図である。
【図4】この発明のテクスチャ・データ読出装置を使用したレンダリング装置の一実施例を示すブロック図である。
【図5】この発明のテクスチャ・データ読出装置を複数使用したレンダリング装置の他の実施例を示すブロック図である。
【図6】テクスチャ・マッピングの概念を説明する概略図である。
【図7】従来のテクスチャ・データ読出装置のブロック図である。
【符号の説明】
12・・・テクスチャ・データ読出装置、14・・・メモリ、15・・・メモリ・アドレス比較装置、16・・・比較結果記憶装置、17・・・メモリ・アクセス装置、18・・・テクスチャ・データ記憶装置、19・・・テクスチャ・データ再構成装置
Claims (4)
- テクスチャ・マッピングを行う際に、メモリからテクスチャ・データを読み出すための読出装置において、
メモリ読み出し対象である画素のメモリ・アドレスと、前回のメモリ読み出し対象であった隣接画素のメモリ・アドレスとの比較を行い、
上記画素のメモリ・アドレスが上記隣接画素のメモリ・アドレスと異なる場合のみ上記画素のメモリ・アドレスにしたがって、上記メモリにアクセスを行い新しいテクスチャ・データを読み出し、上記画素のメモリ・アドレスが上記隣接画素のメモリ・アドレスと同じ場合には、上記メモリから新しいテクスチャ・データの読み出しをせずメモリ・アドレスが同じ画素が続く間保存されているテクスチャ・データを再使用することを特徴とするテクスチャ・データ読出装置。 - テクスチャ・マッピングを行う際に、メモリからテクスチャ・データを読み出すための読出装置において、
メモリ読み出し対象である画素のメモリ・アドレスと、前回メモリ読み出し対象であった隣接画素のメモリ・アドレスとを比較してメモリ読み出しを行うか否かを決定するメモリ・アドレス比較手段と、
上記メモリ・アドレス比較手段の比較結果から新しく上記メモリから読み出したテクスチャ・データを使用するか、それとも以前に上記メモリから読み出したテクスチャ・データを再使用するかの情報を記憶しておく比較結果記憶手段と、上記メモリ・アドレス比較手段の比較結果にしたがって、メモリ・アクセスを行って上記メモリからテクスチャ・データを読み出すメモリ・アクセス手段と、上記メモリ・アクセス手段によって、上記メモリから読み出した上記テクスチャ・データを記憶しておくテクスチャ・データ記憶手段と、
上記比較結果記憶手段に記憶されている上記情報にしたがって、上記テクスチャ・データ記憶手段から所望のテクスチャ・データを読み出すテクスチャ・データ再構成手段を有し、
上記メモリ読み出し対象である画素のメモリ・アドレスが上記前回メモリ読み出し対象であった隣接画素のメモリ・アドレスと同じ画素は、上記メモリからのテクスチャ・データの読み出しを行わず、以前にメモリ・アドレスが同じであった画素が読み出したテクスチャ・データを再使用することを特徴とするテクスチャ・データ読出装置。 - 請求項2に記載のテクスチャ・データ読出装置において、
三角形内部の各画素のテクスチャのメモリ・アドレスを入力し、
メモリ読み出し対象である画素のメモリ・アドレスと上記前回メモリ読み出し対象であった隣接画素のメモリ・アドレスとの比較を行って、
上記画素のメモリ・アドレスと上記隣接画素のメモリ・アドレスが異なる場合のみ上記メモリにアクセスを行い新しいテクスチャ・データを読み出し、
上記画素のメモリ・アドレスと上記隣接画素のメモリ・アドレスが同じ場合には上記メモリから上記テクスチャ・データの読み出しをせずメモリ・アドレスが同じ画素が続く間保存されているテクスチャ・データを再使用することを特徴とするテクスチャ・データ読出装置。 - 複数のメモリと、上記メモリからテクスチャ・データを読み出すための複数のテクスチャ・データ読出装置とが並列に設けられ、
同時に複数の画素のテクスチャ・データを上記メモリから読み出すようになされ、
上記テクスチャ・データ読出装置のそれぞれは、
メモリ読み出し対象である画素のメモリ・アドレスと、前回のメモリ読み出し対象であった隣接画素のメモリ・アドレスとの比較を行い、
上記画素のメモリ・アドレスが上記隣接画素のメモリ・アドレスと異なる場合のみ上記画素のメモリ・アドレスにしたがって、上記メモリにアクセスを行い新しいテクスチャ・データを読み出し、上記画素のメモリ・アドレスが上記隣接画素のメモリ・アドレスと同じ場合には、上記メモリから新しいテクスチャ・データの読み出しをせずメモリ・アドレスが同じ画素が続く間保存されているテクスチャ・データを再使用するものであることを特徴とするレンダリング装置。
Priority Applications (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP24913396A JP3586991B2 (ja) | 1996-08-30 | 1996-08-30 | テクスチャ・データ読出装置およびレンダリング装置 |
AU35292/97A AU736560B2 (en) | 1996-08-30 | 1997-08-26 | Method and apparatus for texture data |
CA002214063A CA2214063C (en) | 1996-08-30 | 1997-08-27 | Method and apparatus for texture data |
MYPI97003928A MY114047A (en) | 1996-08-30 | 1997-08-27 | Method and apparatus for texture data |
EP97306593A EP0827114B1 (en) | 1996-08-30 | 1997-08-28 | Method and apparatus for texture data |
DE69722535T DE69722535T2 (de) | 1996-08-30 | 1997-08-28 | Verfahren und Gerät zum Schaffen von Texturdaten |
US08/920,837 US6133923A (en) | 1996-08-30 | 1997-08-29 | Method and apparatus for texture data |
CN97121354A CN1121018C (zh) | 1996-08-30 | 1997-08-30 | 纹理数据的方法和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP24913396A JP3586991B2 (ja) | 1996-08-30 | 1996-08-30 | テクスチャ・データ読出装置およびレンダリング装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH1079043A JPH1079043A (ja) | 1998-03-24 |
JP3586991B2 true JP3586991B2 (ja) | 2004-11-10 |
Family
ID=17188426
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP24913396A Expired - Lifetime JP3586991B2 (ja) | 1996-08-30 | 1996-08-30 | テクスチャ・データ読出装置およびレンダリング装置 |
Country Status (8)
Country | Link |
---|---|
US (1) | US6133923A (ja) |
EP (1) | EP0827114B1 (ja) |
JP (1) | JP3586991B2 (ja) |
CN (1) | CN1121018C (ja) |
AU (1) | AU736560B2 (ja) |
CA (1) | CA2214063C (ja) |
DE (1) | DE69722535T2 (ja) |
MY (1) | MY114047A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014176120A1 (en) * | 2013-04-25 | 2014-10-30 | Intel Corporation | Techniques for graphics data prefetching |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU743218B2 (en) * | 1998-09-11 | 2002-01-24 | Canon Kabushiki Kaisha | Fast renering techniques for rasterised graphic object based images |
AU744091B2 (en) * | 1998-09-11 | 2002-02-14 | Canon Kabushiki Kaisha | Processing graphic objects for fast rasterised rendering |
JP4343344B2 (ja) | 1998-09-11 | 2009-10-14 | キヤノン株式会社 | ラスタ形式のグラフィックオブジェクトを用いたイメージの高速レンダリング方法 |
US6384823B1 (en) * | 1999-01-05 | 2002-05-07 | C. Michael Donoghue | System and method for real-time mapping and transfer of coordinate position data from a virtual computer-aided design workspace to the real workspace |
US6919895B1 (en) * | 1999-03-22 | 2005-07-19 | Nvidia Corporation | Texture caching arrangement for a computer graphics accelerator |
US6297833B1 (en) * | 1999-03-23 | 2001-10-02 | Nvidia Corporation | Bump mapping in a computer graphics pipeline |
GB2374775B (en) * | 2001-04-19 | 2005-06-15 | Discreet Logic Inc | Rendering animated image data |
US6812928B2 (en) | 2002-01-30 | 2004-11-02 | Sun Microsystems, Inc. | Performance texture mapping by combining requests for image data |
DE10318390A1 (de) * | 2003-04-23 | 2004-12-30 | Volkswagen Ag | Verfahren, Vorrichtung und Computerprogrammprodukt zum virtuellen Positionieren von Bauteilen |
JP3883522B2 (ja) * | 2003-05-09 | 2007-02-21 | 任天堂株式会社 | ゲーム装置およびゲームプログラム |
JP3934081B2 (ja) * | 2003-05-12 | 2007-06-20 | 任天堂株式会社 | ゲーム装置およびゲームプログラム |
US7573599B2 (en) * | 2004-05-20 | 2009-08-11 | Primax Electronics Ltd. | Method of printing geometric figures |
CN101059760B (zh) * | 2006-04-20 | 2014-05-07 | 意法半导体研发(上海)有限公司 | Opengl到opengl│es翻译器和opengl│es仿真器 |
US8207978B2 (en) * | 2006-06-29 | 2012-06-26 | Intel Corporation | Simplification of 3D texture address computation based on aligned, non-perspective objects |
US7652672B2 (en) | 2006-06-29 | 2010-01-26 | Mediatek, Inc. | Systems and methods for texture management |
US8022960B2 (en) * | 2007-02-22 | 2011-09-20 | Qualcomm Incorporated | Dynamic configurable texture cache for multi-texturing |
JP5307923B1 (ja) * | 2012-08-20 | 2013-10-02 | 株式会社gloops | ゲームサーバ、ゲーム制御方法、プログラム、及びゲームシステム |
US9449362B2 (en) * | 2013-09-06 | 2016-09-20 | Intel Corporation | Techniques for reducing accesses for retrieving texture images |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4821212A (en) * | 1984-08-08 | 1989-04-11 | General Electric Company | Three dimensional texture generator for computed terrain images |
GB2240015A (en) * | 1990-01-15 | 1991-07-17 | Philips Electronic Associated | Texture memory addressing |
GB2267203B (en) * | 1992-05-15 | 1997-03-19 | Fujitsu Ltd | Three-dimensional graphics drawing apparatus, and a memory apparatus to be used in texture mapping |
GB2270243B (en) * | 1992-08-26 | 1996-02-28 | Namco Ltd | Image synthesizing system |
US5606650A (en) * | 1993-04-22 | 1997-02-25 | Apple Computer, Inc. | Method and apparatus for storage and retrieval of a texture map in a graphics display system |
JPH08110952A (ja) * | 1994-10-07 | 1996-04-30 | Yamaha Corp | テクスチャマッピング装置 |
JP3081774B2 (ja) * | 1995-05-24 | 2000-08-28 | シャープ株式会社 | テクスチャーパターンメモリ回路 |
US5751292A (en) * | 1995-06-06 | 1998-05-12 | Hewlett-Packard Company | Texture mapping method and system |
US5880737A (en) * | 1995-08-04 | 1999-03-09 | Microsoft Corporation | Method and system for accessing texture data in environments with high latency in a graphics rendering system |
GB9518696D0 (en) * | 1995-09-13 | 1995-11-15 | Philips Electronics Nv | Image texture mapping |
US5781197A (en) * | 1996-07-26 | 1998-07-14 | Hewlett-Packard Company | Method for maintaining contiguous texture memory for cache coherency |
US5828382A (en) * | 1996-08-02 | 1998-10-27 | Cirrus Logic, Inc. | Apparatus for dynamic XY tiled texture caching |
US5987567A (en) * | 1996-09-30 | 1999-11-16 | Apple Computer, Inc. | System and method for caching texture map information |
US5831640A (en) * | 1996-12-20 | 1998-11-03 | Cirrus Logic, Inc. | Enhanced texture map data fetching circuit and method |
US5852451A (en) * | 1997-01-09 | 1998-12-22 | S3 Incorporation | Pixel reordering for improved texture mapping |
-
1996
- 1996-08-30 JP JP24913396A patent/JP3586991B2/ja not_active Expired - Lifetime
-
1997
- 1997-08-26 AU AU35292/97A patent/AU736560B2/en not_active Expired
- 1997-08-27 CA CA002214063A patent/CA2214063C/en not_active Expired - Lifetime
- 1997-08-27 MY MYPI97003928A patent/MY114047A/en unknown
- 1997-08-28 EP EP97306593A patent/EP0827114B1/en not_active Expired - Lifetime
- 1997-08-28 DE DE69722535T patent/DE69722535T2/de not_active Expired - Lifetime
- 1997-08-29 US US08/920,837 patent/US6133923A/en not_active Expired - Lifetime
- 1997-08-30 CN CN97121354A patent/CN1121018C/zh not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014176120A1 (en) * | 2013-04-25 | 2014-10-30 | Intel Corporation | Techniques for graphics data prefetching |
Also Published As
Publication number | Publication date |
---|---|
DE69722535D1 (de) | 2003-07-10 |
CA2214063A1 (en) | 1998-02-28 |
EP0827114A3 (en) | 2000-11-29 |
MY114047A (en) | 2002-07-31 |
AU736560B2 (en) | 2001-08-02 |
AU3529297A (en) | 1998-03-05 |
EP0827114B1 (en) | 2003-06-04 |
CA2214063C (en) | 2006-10-24 |
US6133923A (en) | 2000-10-17 |
CN1177784A (zh) | 1998-04-01 |
CN1121018C (zh) | 2003-09-10 |
DE69722535T2 (de) | 2004-04-29 |
EP0827114A2 (en) | 1998-03-04 |
JPH1079043A (ja) | 1998-03-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3586991B2 (ja) | テクスチャ・データ読出装置およびレンダリング装置 | |
JP4280270B2 (ja) | 幾何プリミティブのインデックスを外す方法、ラスタ化装置、コンピュータ可読媒体 | |
JP4061697B2 (ja) | 画像表示方法及びそれを実行する画像表示装置 | |
JP2882465B2 (ja) | 画像生成方法およびその装置 | |
TWI395152B (zh) | 繪圖處理單元及處理邊框顏色資訊之方法 | |
KR101039132B1 (ko) | 2차원 벡터 그래픽 처리를 위한 라스터라이저 및 그 방법 | |
US6614443B1 (en) | Method and system for addressing graphics data for efficient data access | |
JP3903557B2 (ja) | データ変換装置および画像生成装置 | |
JPH06100911B2 (ja) | 画像データ処理装置及び方法 | |
US7372461B2 (en) | Image processing apparatus and method of same | |
KR900002631B1 (ko) | 화상데이터의 처리방법 및 장치 | |
JP3548648B2 (ja) | 描画装置及び描画方法 | |
US6489967B1 (en) | Image formation apparatus and image formation method | |
JPH0544063B2 (ja) | ||
JP4408152B2 (ja) | テクスチャマッピング方法及びテクスチャマッピング装置 | |
JP5310079B2 (ja) | 画像描画装置 | |
JP2000155851A (ja) | テクスチャ・マッピング装置及びこれを具備したレンダリング装置、並びに情報処理装置 | |
JP2656754B2 (ja) | 画像データ処理装置及びそれを用いたシステム | |
JP3090644B2 (ja) | 画像データ処理装置及びそれを用いたシステム | |
JP2656753B2 (ja) | 画像データ処理装置及びそれを用いたシステム | |
JP4482996B2 (ja) | データ記憶装置とその方法および画像処理装置 | |
JP2000148114A (ja) | 画像生成装置および画像生成方法 | |
JP2903514B2 (ja) | 高速描画方法 | |
JPH07109549B2 (ja) | グラフィックプロセッサ | |
JPH10261095A (ja) | 画像処理装置及び画像処理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040709 |
|
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: 20040720 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040802 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080820 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090820 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100820 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110820 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110820 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120820 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130820 Year of fee payment: 9 |
|
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 |