JP3763136B2 - 描画方法および描画装置 - Google Patents

描画方法および描画装置 Download PDF

Info

Publication number
JP3763136B2
JP3763136B2 JP35046296A JP35046296A JP3763136B2 JP 3763136 B2 JP3763136 B2 JP 3763136B2 JP 35046296 A JP35046296 A JP 35046296A JP 35046296 A JP35046296 A JP 35046296A JP 3763136 B2 JP3763136 B2 JP 3763136B2
Authority
JP
Japan
Prior art keywords
value
pixel
drawing data
rendering
ccil
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
JP35046296A
Other languages
English (en)
Other versions
JPH10188004A (ja
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 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 JP35046296A priority Critical patent/JP3763136B2/ja
Priority to US08/995,969 priority patent/US6184903B1/en
Priority to KR1019970082662A priority patent/KR100497557B1/ko
Publication of JPH10188004A publication Critical patent/JPH10188004A/ja
Priority to US09/455,591 priority patent/US6246421B1/en
Application granted granted Critical
Publication of JP3763136B2 publication Critical patent/JP3763136B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/40Filling a planar surface by adding surface attributes, e.g. colour or texture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/005General purpose rendering architectures
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B21/00Head arrangements not specific to the method of recording or reproducing
    • G11B21/02Driving or moving of heads
    • G11B21/08Track changing or selecting during transducing operation
    • G11B21/081Access to indexed tracks or parts of continuous track
    • G11B21/083Access to indexed tracks or parts of continuous track on discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B5/00Recording by magnetisation or demagnetisation of a record carrier; Reproducing by magnetic means; Record carriers therefor
    • G11B5/48Disposition or mounting of heads or head supports relative to record carriers ; arrangements of heads, e.g. for scanning the record carrier to increase the relative speed
    • G11B5/54Disposition or mounting of heads or head supports relative to record carriers ; arrangements of heads, e.g. for scanning the record carrier to increase the relative speed with provision for moving the head into or out of its operative position or across tracks
    • G11B5/55Track change, selection or acquisition by displacement of the head
    • G11B5/5521Track change, selection or acquisition by displacement of the head across disk tracks
    • G11B5/5526Control therefor; circuits, track configurations or relative disposition of servo-information transducers and servo-information tracks for control thereof
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B5/00Recording by magnetisation or demagnetisation of a record carrier; Reproducing by magnetic means; Record carriers therefor
    • G11B5/48Disposition or mounting of heads or head supports relative to record carriers ; arrangements of heads, e.g. for scanning the record carrier to increase the relative speed
    • G11B5/58Disposition or mounting of heads or head supports relative to record carriers ; arrangements of heads, e.g. for scanning the record carrier to increase the relative speed with provision for moving the head for the purpose of maintaining alignment of the head relative to the record carrier during transducing operation, e.g. to compensate for surface irregularities of the latter or for track following
    • G11B5/596Disposition or mounting of heads or head supports relative to record carriers ; arrangements of heads, e.g. for scanning the record carrier to increase the relative speed with provision for moving the head for the purpose of maintaining alignment of the head relative to the record carrier during transducing operation, e.g. to compensate for surface irregularities of the latter or for track following for track following on disks
    • G11B5/59633Servo formatting
    • G11B5/59655Sector, sample or burst servo format
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B5/00Recording by magnetisation or demagnetisation of a record carrier; Reproducing by magnetic means; Record carriers therefor
    • G11B5/012Recording on, or reproducing or erasing from, magnetic disks

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)

Description

【0001】
【発明の属する技術分野】
本発明は、描画方法および描画装置に関し、特に、2次元の画素座標系を、第1の方向にN個、第1の方向に垂直な第2の方向にM個の合計N×M個の画素の領域ごとに分割し、分割した各領域のN×M個の画素に、N×M個の演算部をそれぞれ割り当て、所定の図形に対応する画素を並列に描画する描画方法および描画装置に関する。
【0002】
【従来の技術】
最近の半導体技術の進歩に伴い、画像処理を行う演算装置の処理能力も向上している。
【0003】
所謂コンピュータグラフィクスにおいて3次元の物体をディスプレイに表示させる場合、所定の基本形状(例えば3角形)の複数の2次元図形(ポリゴン)を利用して、3次元の物体を表現することがある。
【0004】
このようなポリゴンに対して、所定の演算回路によりレンダリング処理が行われることにより、ポリゴン内の各画素の輝度値が算出され、その輝度値に対応してポリゴンが描画される。
【0005】
このようにしてポリゴンを描画する装置には、複数の演算回路を並列に動作させることにより、ポリゴンのレンダリング処理を高速に行うものがある。
【0006】
そのような複数のレンダリング回路を利用する場合、例えば図6に示すように、表示画面71をレンダリング回路61乃至64と同一の数(図6においては、4個)の領域に分割し、各レンダリング回路が、対応する領域におけるレンダリング処理を行うようになされている。
【0007】
例えば、図6においては、レンダリング回路61は、表示画面71の左上側の4分の1の領域(領域A)におけるレンダリング処理を行い、レンダリング回路62は、表示画面71の右上側の4分の1の領域(領域B)におけるレンダリング処理を行う。
【0008】
また、レンダリング回路63は、表示画面71の左下側の4分の1の領域(領域C)におけるレンダリング処理を行い、レンダリング回路64は、表示画面71の右下側の4分の1の領域(領域D)におけるレンダリング処理を行う。
【0009】
【発明が解決しようとする課題】
しかしながら、このように表示画面を分割した場合、例えば、図6のポリゴン81のように、レンダリング処理が施されるポリゴンが、いずれかのレンダリング回路に割り当てられている領域内だけにあるとき、それらのポリゴンは、そのレンダリング回路だけによりレンダリング処理を施されるので、複数のレンダリング回路を設けているのも拘わらず、処理に要する時間が短縮されないという問題を有している。
【0010】
また、各レンダリング回路に所定の数おきの画素を割り当ててレンダリング処理を行うインタリーブ処理が考えられるが、その場合、サブピクセル精度での描画が困難であるという問題を有している。
【0011】
本発明は、そのような状況に鑑みてなされたもので、第1および第2の方向におけるデータの変分をそれぞれΔV/ΔX1、ΔV/ΔX2とし、ccilを、独立変数として与えられた数以上の整数のうちの最も小さい整数を従属変数として返す関数とすると、所定の点における描画データの値Vから、第1の方向において第i番目で、かつ、第2の方向において第j番目の演算部に割り当てられた最初の画素における描画データの値を、第1の方向においては式
V+((ccil((V+N−i)/N)−((V+N−i)/N))×N×ΔV/ΔX1
に従い、第2の方向においては式
V+((ccil((V+M−j)/M)−((V+M−j)/M))×M×ΔV/ΔX2
に従って演算するようにして、サブピクセル精度での描画を行うことができるようにするものである。
【0012】
【課題を解決するための手段】
本発明の描画方法は、第1および第2の方向における1画素あたりの描画データの変分をそれぞれΔV / ΔX 1 、ΔV / ΔX 2 とし、 ccil を、独立変数として与えられた数以上の整数のうちの最も小さい整数を従属変数として返す関数とすると、所定の点における描画データの値Vから、第1の方向において第i番目で、かつ、第2の方向において第j番目の演算部に割り当てられた最初の画素における描画データの値を、第1の方向においては、式 V (ccil((V+P-i)/P)-((V+P-i)/P)) × P ×Δ V/ Δ X 1 にしたがって、第2の方向においては、式 V (ccil((V+Q-j)/Q)-((V+Q- )/Q)) × Q ×Δ V/ Δ X 2 にしたがって演算することを特徴とする。
各演算部が、最初の画素における描画データの値から、1画素あたりの描画データの変分のQ倍の値を変分として、第2の方向に位置する画素における描画データの値を補間演算するようにすることができる。
1画素あたりの描画データの変分のQ倍の値を変分として補間演算された描画データの値を、演算部にそれぞれ対応する記憶部の、補間演算された描画データに対応する画素の座標を第1の方向にP分の1、第2の方向にQ分の1だけそれぞれスケーリングした座標に対応する記憶領域に記憶させるようにすることができる。
【0013】
本発明の描画装置は、所定の点における描画データの値をVとし、第1および第2の方向における1画素あたりの描画データの変分をそれぞれΔV / ΔX 1 、ΔV / ΔX 2 とし、 ccil を、独立変数として与えられた数以上の整数のうちの最も小さい整数を従属変数として返す関数とすると、式 V (ccil((V+P-i)/P)-((V+P-i)/P)) × P ×Δ V/ Δ X 1 にしたがって、最初に描画する画素の第1の方向における座標に対応する描画データの値を演算する第1の補間演算手段と、式 V (ccil((V+Q- )/Q)-((V+Q-j)/Q)) × Q ×Δ V/ Δ X 2 にしたがって、最初に描画する画素の第2の方向における座標に対応する描画データの値を演算するP×Q個の第2の補間演算手段とを備えることを特徴とする。
【0014】
本発明においては、第1および第2の方向における1画素あたりの描画データの変分をそれぞれΔV / ΔX 1 、ΔV / ΔX 2 とし、 ccil を、独立変数として与えられた数以上の整数のうちの最も小さい整数を従属変数として返す関数とすると、所定の点における描画データの値Vから、第1の方向において第i番目で、かつ、第2の方向において第j番目の演算部に割り当てられた最初の画素における描画データの値を、第1の方向においては、式 V (ccil((V+P-i)/P)-((V+P-i)/P)) × P ×Δ V/ Δ X 1 にしたがって、第2の方向においては、式 V (ccil((V+Q-j)/Q)-((V+Q- )/Q)) × Q ×Δ V/ Δ X 2 にしたがって演算する
【0016】
【発明の実施の形態】
図1は、本発明の描画装置の一実施の形態の構成を示している。メインプロセッサ1は、入出力部2を介して供給されるグラフィックスデータ、または、メインメモリ3に記憶されているポリゴンのグラフィックスデータをジオメトリ演算部4に出力するようになされている。なお、このようなポリゴンのグラフィックスデータは、所定の応用プログラムに従って生成される。
【0017】
ジオメトリ演算部4は、メインプロセッサ1より供給されたグラフィックスデータに対して、座標変換、クリッピング処理、ライティング処理などを行い、処理後のグラフィックスデータ(ポリゴンレンダリングデータ)として、3角形のポリゴンの各頂点に対応する、座標X,Y,Z、赤色、緑色、青色にそれぞれ対応する輝度値R,G,B、描画する画素の輝度値とディスプレイバッファ10に記憶されている画素の輝度値を混ぜ合わせる割合を表すブレンド係数α、テクスチャ座標S,T,Q、および、フォグ係数FをDDAセットアップ部5(第1の補間演算手段)に出力するようになされている。なお、ジオメトリ演算部4においては、座標系が2次元の表示画面の座標系に変換されるので、座標Zは、その点の奥行き方向の情報を表している。
【0018】
なお、テクスチャ座標として、同次座標系であるS,T,Qが出力されるが、S/Q,T/Qにテクスチャサイズをそれぞれ乗じたものが、実際のテクスチャ座標として利用される。また、フォグ係数Fは、例えばZが大きく、その点における表示を、霧がかかったように表現するときに混合する所定のフォグカラーの混合の度合いを示す係数である。
【0019】
DDAセットアップ部5は、供給された3角形の各頂点のポリゴンレンダリングデータX,Y,Z,R,G,B,α,S,T,Q,Fから、X方向に対するポリゴンレンダリングデータの変分(ΔZ/ΔX,ΔR/ΔX,ΔG/ΔX,ΔB/ΔX,Δα/ΔX,ΔS/ΔX,ΔT/ΔX,ΔQ/ΔX,ΔF/ΔX)を算出するとともに、Y方向に対するポリゴンレンダリングデータの変分(ΔZ/ΔY,ΔR/ΔY,ΔG/ΔY,ΔB/ΔY,Δα/ΔY,ΔS/ΔY,ΔT/ΔY,ΔQ/ΔY,ΔF/ΔY)を算出するとともに、3角形の各辺の傾き(または、その逆数)を算出するようになされている。
【0020】
また、DDAセットアップ部5は、3角形(ポリゴン)の頂点の座標より3角形の形状の種類の判別を行うとともに、各レンダリング回路20−k(k=1,2,3,4)(第2の補間演算手段)に対応する、描画開始点(レンダリング開始点)と同一のY方向の座標を有する辺AC上の点(X0,Y0)(図3)における各ポリゴンレンダリングデータの値を初期値演算部21で算出し、各レンダリング回路20−kのDDA部6にそれぞれ出力するようになされている。
【0021】
図2は、DDAセットアップ部5の初期値演算部21の構成例を示している。なお、初期値演算部21においては、各値は、固定小数点実数で表現される。
【0022】
定数発生回路41は、レンダリング回路20−kの数(即ち、並列に処理する領域を構成する画素数)2N×2Nに対応する値(その領域のY方向の画素数)2Nを発生し、その値を減算器42に出力するようになされている。
【0023】
減算器42は、そのレンダリング回路20−kにより処理される画素のY方向(第1の方向)における番号i(後述)と、定数発生回路41からの値2Nとの差(2N−i)を計算し、その計算結果を加算器43に出力するようになされている。
【0024】
加算器43は、減算器42からの値(2N−i)と、頂点Aでのデータの値Vaとの和(Va+2N−i)を計算し、その計算結果をビットシフタ44に出力するようになされている。
【0025】
ビットシフタ(バレルシフタ:barrel shifter)44は、加算器43より供給された値(Va+2N−i)を、LSB(Least Significant Bit)側にNビットだけビットシフトし、ビットシフトした値((Va+2N−i)/2N)を加算器45および減算器47に出力するようになされている。
【0026】
定数発生回路46は、固定小数点実数の小数点以下の各ビットの値が1である値(0.111・・・1B)を発生し、その値を加算器45に出力するようになされている。
【0027】
加算器45は、ビットシフタ44からの値((Va+2N−i)/2N)に、定数発生回路46からの値(0.111・・・1B)を加算し、その計算結果の小数点以下を切り捨てた後、その値(整数部分)を減算器47に出力するようになされている。即ち、加算器45は、ビットシフタ44より供給された値より大きい整数のうちで、最も小さい整数(ccil((Va+2N−i)/2N))と同一の値の固定小数点実数を出力する。
【0028】
減算器47は、ビットシフタ44からの値と、加算器45からの値の差(ccil((Va+2N−i)/2N)−(Va+2N−i)/2N)を計算し、その計算結果をビットシフタ48に出力するようになされている。
【0029】
ビットシフタ(バレルシフタ)48は、減算器47より供給された値を、MSB(Most Significant Bit)側にNビットだけビットシフトし、ビットシフトした値((ccil((Va+2N−i)/2N)−(Va+2N−i)/2N)×2N)を乗算器49に出力するようになされている。
【0030】
乗算器49は、ビットシフタ48からの値と、今回計算するデータに対応するY方向の変分ΔV/ΔYとの積((ccil((Va+2N−i)/2N)−(Va+2N−i)/2N)×2N×ΔV/ΔY)を計算し、その計算結果を加算器50に出力するようになされている。
【0031】
加算器50は、乗算器49からの値と、今回、点(X0,Y0)における値を算出するデータの頂点Aでの値Vaとの和(Va+(ccil((Va+2N−i)/2N)−(Va+2N−i)/2N)×2N×ΔV/ΔY)を、今回計算するデータの初期値(上述の点(X0,Y0)での値)V0として出力するようになされている。
【0032】
図1のレンダリング回路20−1のDDA部6は、上述の初期演算部21と同様な回路(図示せず)を内蔵し、DDA(Digital Differential Analyzer)演算を行い、DDAセットアップ5より供給された、各ポリゴンレンダリングデータのX方向の変分と、所定のスパン(X方向に配列した画素の列)(図5)に対応する各ポリゴンレンダリングデータの初期値V0から、まず、そのスパンにおける、レンダリング回路20−1に割り当てられた画素のうちの最初の画素(割り当てられた画素のうち、辺ACに最も近い画素)に対応する各ポリゴンレンダリングデータの値Viを算出し、次に、そのスパンの各画素に対応する座標X,Yと、その座標におけるポリゴンレンダリングデータZ,R,G,B,α,S,T,Q,Fの値を順次算出し、テクスチャプロセッサ7に出力するようになされている。
【0033】
なお、DDA部6は、所定の数の画素おきに、その画素のレンダリングデータの値を算出していく。
【0034】
レンダリング回路20−1のテクスチャプロセッサ7は、テクスチャバッファ9からテクスチャデータを読み出し、供給されたテクスチャ座標S,TをQで除算し、テクスチャサイズで乗算して実際のテクスチャ座標を算出するとともに、読み出したテクスチャデータから、実際のテクスチャ座標S,Tに対応したテクスチャアドレスにおける輝度値と、テクスチャデータの混合比を表す係数(テクスチャのα値)を算出し、その係数に対応して、DDA部6より供給された輝度値と、テクスチャに対応する輝度値を混合するようになされている。
【0035】
さらに、テクスチャプロセッサ7は、フォグ係数Fに対応して所定のフォグカラーを混合し、生成された輝度値を、DDA部6より供給された座標X,Yの画素に対応する輝度値として、座標X,Y,Zおよびブレンド係数αとともにメモリインタフェース8に出力するようになされている。
【0036】
なお、テクスチャバッファ9は、MIPMAPなどの各レベルに対応したテクスチャデータを予め記憶している。
【0037】
レンダリング回路20−1のメモリインタフェース8は、Zバッファ11のZ値を参照し、供給された画素が、以前に描画したものより手前(視点側)にある場合、供給された座標Zで、Zバッファ11のZ値を更新するとともに、供給された輝度値を、ディスプレイバッファ10における、その座標(X,Y)に対応するアドレスに書き込むようになされている。
【0038】
なお、メモリインタフェース8は、αブレンドを行うように設定されている場合、供給されたブレンド係数αに対応して、ディスプレイバッファ10に記憶されている輝度値と、供給された輝度値を混合して、生成された輝度値をディスプレイバッファ10に書き込む。
【0039】
レンダリング回路20−1のCRT制御部12は、所定の水平および垂直同期信号に同期して表示アドレスを発生し、メモリインタフェース8を制御して、その表示アドレスに対応する輝度値を、所定の数毎にまとめて転送させ、内蔵するFIFO部(図示せず)にそれらの値を一旦記憶し、所定の間隔でそのデータのインデックス値をマルチプレクサ14に出力するようになされている。
【0040】
なお、レンダリング回路20−2乃至20−4は、レンダリング回路20−1と同様に構成されているので、その説明を省略する。
【0041】
マルチプレクサ14は、レンダリング回路20−1乃至20−4より供給されたインデックス値を所定の順番で整列させた後、RAMDAC13に出力するようになされている。
【0042】
RAMDAC13は、図示せぬRAM部とDAC(Digital/Analog Converter)部を有し、インデックス値に対応した輝度値をRAM部に予め記憶しており、マルチプレクサ14より供給されたインデックス値に対応する輝度値を、RAM部からDAC部に供給し、DAC部において、その輝度値(RGB値)をD/A変換し、アナログのビデオ信号(RGB信号)を所定の装置(図示せず)に出力するようになされている。
【0043】
次に、ポリゴンを描画する際の、図1の描画装置の動作について説明する。
【0044】
最初に、メインプロセッサ1が、ポリゴンのデータをジオメトリ演算部4に出力する。
【0045】
ジオメトリ演算部4は、メインプロセッサ1より供給されたグラフィックスデータに対して、座標変換、クリッピング処理、ライティング処理などを行い、3角形(ポリゴン)の各頂点に対応する、座標X,Y,Z、輝度値R,G,B、ブレンド係数α、テクスチャ座標S,T,Q、および、フォグ係数FをDDAセットアップ部5に出力する。
【0046】
次に、DDAセットアップ部5は、レンダリングの前処理として、まず、3角形のポリゴンの形状の判別を行う。このとき、DDAセットアップ部5は、3つの頂点のうち、Y方向の座標が最も小さい頂点を頂点Aとし、Y方向の座標が最も大きい頂点を頂点Cとし、残りの頂点を頂点Bとする。なお、3つの頂点のうち、Y方向の座標が最も小さい頂点が2つある場合、DDAセットアップ部5は、それらの2つの頂点のうちのいずれか一方を頂点Aとし、他方を頂点Bとする。
【0047】
そして、DDAセットアップ部5は、ポリゴン内の各画素におけるポリゴンレンダリングデータX,Y,Z,R,G,B,α,S,T,Q,Fの値を補間演算により算出するときに利用されるX方向およびY方向に対するポリゴンレンダリングデータの変分を、ポリゴンの3頂点のポリゴンレンダリングデータの値からそれぞれ算出する。
【0048】
各変分を算出した後、DDAセットアップ部5は、レンダリング回路20−1乃至20−4がそれぞれ処理する画素のY方向の座標Y0と同一の座標を有する辺AC上の点(X0,Y0)における各ポリゴンレンダリングデータの値を補間演算により算出し、それらのデータを、X方向の各変分とともに、対応するレンダリング回路20−1乃至20−4のDDA部6に出力する。
【0049】
このとき、DDAセットアップ部5は、初期値算出部21において次式に従って、各レンダリング回路20−k(k=1,2,3,4)に対応する点(X0,Y0)における各ポリゴンレンダリングデータの値V0を算出する。
Figure 0003763136
【0050】
ここで、Vaは、頂点Aにおける所定のポリゴンレンダリングデータVの値を表し、2Nは、レンダリング回路が並列に処理する領域の1辺の画素数を表し、iは、各レンダリング回路のY方向の番号を表している。また、A>>Nは、所定の値Aを、LSB側へNビットだけビットシフトした値を表し、A<<Nは、所定の値Aを、MSB側へNビットだけビットシフトした値を表している。
【0051】
今の場合、4つのレンダリング回路20−1乃至20−4で、図3に示すように、2×2画素の領域ごとに各画素を並列に処理するので、N=1である。なお、この場合、レンダリング回路20−1乃至20−4は、図中の0乃至3の画素の処理をそれぞれ割当てられている。従って、レンダリング回路20−1,20−2に対してはi=0であり、レンダリング回路20−3,20−4に対してはi=1である。なお、図3においては、各画素は、画素の左下角の座標で代表されている。
【0052】
例えば、Y0を算出する場合、i=0であるレンダリング回路20−1,20−2においては、Y0は、次式で算出される。
Figure 0003763136
【0053】
一方、i=1であるレンダリング回路20−3,20−4においては、Y0は、次式で算出される。
0=Ya+((ccil((Ya+1)>>1)−(Ya+1)>>1)<<1)
【0054】
そして、図4(A)に示すように、Yaの値が、xxx0.0B(xは0および1のうちの任意の数、Bは、2進数を表す)である場合、i=0であるレンダリング回路20−1,20−2においては、Y0は、次に示すように算出される。
Figure 0003763136
【0055】
一方、Ya=xxx0.0Bである場合、i=1であるレンダリング回路20−3,20−4においては、Y0は、次に示すように算出される。
Figure 0003763136
【0056】
図4(B)に示すように、Ya=xxx0.1Bであり、かつ、i=0である場合、Y0は、同様に、(xxx0.1B+1.1B)と算出され、i=1である場合、(xxx0.1B+0.1B)と算出される。
【0057】
また、図4(C)に示すように、Ya=xxx1.0Bであり、かつ、i=0である場合、Y0は、同様に、(xxx1.0B+1.0B)と算出され、i=1である場合、xxx1.0Bと算出される。
【0058】
さらに、図4(D)に示すように、Ya=xxx1.1Bであり、かつ、i=0である場合、Y0は、同様に、(xxx1.1B+0.1B)と算出され、i=1である場合、(xxx1.1B+1.1B)と算出される。
【0059】
このようにして、DDAセットアップ部5は、iの値に対応して各レンダリング回路により最初にレンダリングするスパンのY座標Y0を算出するとともに、同様に、各ポリゴンレンダリングデータの初期値V0を算出する。
【0060】
また、DDAセットアップ部5は、各レンダリング回路20−kに対応する最初のスパンのY方向の座標Y0を算出した後、各レンダリング回路20−kが、次に処理するスパンのY方向の座標およびその座標におけるデータVを、変分を2N×ΔV/ΔYとして補間演算により順次算出していく。
【0061】
そして、各レンダリング回路20−k(k=1,2,3,4)のDDA部6は、DDA演算を行い、DDAセットアップ部5より供給されたデータに対応するスパンにおける、このレンダリング回路20−kに割り当てられた画素のレンダリング処理を行う。今の場合、図5に示すように、1つのスパンは、2つのレンダリング回路で処理される。
【0062】
このとき、レンダリング回路20−kのDDA部6は、点(X0,Y0)から、このレンダリング回路20−kに割り当てられた画素のうちの辺ACに最も近い画素のポリゴンレンダリングデータの値を算出した後、(2N−1)個おきに各画素のポリゴンレンダリングデータの値を算出していく。
【0063】
即ち、DDA部6は、まず、次式に従って、そのレンダリング回路20−kに対応する点(X0,Y0)における各ポリゴンレンダリングデータの値V0から、辺ACに最も近い画素のポリゴンレンダリングデータの値Viを算出する。
Figure 0003763136
【0064】
ここで、jは、各レンダリング回路のX方向の番号を表している。今の場合(上述のように図3の画素0乃至3がレンダリング回路20−1乃至20−4にそれぞれ割り当てられている場合)、レンダリング回路20−1,20−3に対してはj=0であり、レンダリング回路20−2,20−4に対してはj=1である。なお、この計算は、DDA部6において、DDAセットアップ部5の初期値演算部21と同様な回路で行われる。このとき、図2のiの代わりにjを入力し、ΔV/ΔYの代わりにΔV/ΔXを入力し、Vaの代わりにV0を入力することにより、各レンダリング回路20−kに対応するViが出力される。
【0065】
そして、DDA部6は、各ポリゴンレンダリングデータVの変分を2N×ΔV/ΔXとして補間演算を行い、割り当てられた画素のポリゴンレンダリングデータの値を算出し、テクスチャプロセッサ7に順次出力する。
【0066】
テクスチャプロセッサ7は、テクスチャバッファ9からテクスチャデータを読み出し、そのデータを利用して、DDA部6より供給されたテクスチャ座標を、実際のテクスチャ座標に変換し、実際のテクスチャ座標S,Tに対応したテクスチャアドレスにおける輝度値と、テクスチャデータの混合比を表す係数(テクスチャのα値)を算出し、その係数に対応して、DDA部6より供給された輝度値と、テクスチャに対応する輝度値を混合する。
【0067】
さらに、テクスチャプロセッサ7は、テクスチャのα値に対応して混合された輝度値に、フォグ係数Fに対応して所定のフォグカラーを混合し、生成された輝度値を、DDA部6より供給された座標X,Yの画素に対応する輝度値として、座標X,Y,Zおよびブレンド係数αとともにメモリインタフェース8に出力する。
【0068】
そして、メモリインタフェース8は、Zバッファ11のZ値を読み出し、テクスチャプロセッサ7より供給された画素が以前に描画したものより手前(視点側)にあるか否かを判断し、供給された画素が以前に描画したものより手前にある場合、供給された座標Zで、Zバッファ11のZ値を更新するとともに、供給された輝度値を、ディスプレイバッファ10における、その座標に対応するアドレスに書き込む。
【0069】
一方、供給された画素が以前に描画したものより後ろにある場合、メモリインタフェース8は、供給されたデータを破棄する。
【0070】
なお、αブレンドを行うように設定されている場合、メモリインタフェース8は、テクスチャプロセッサ7より供給されたブレンド係数αに対応して、ディスプレイバッファ10に記憶されている輝度値と、供給された輝度値を、α:(1−α)の割合で混合して、生成した輝度値をディスプレイバッファ10に書き込む。
【0071】
また、メモリインタフェース8は、供給された座標X,Yを、それぞれ1/2N(上述の並列処理する領域の各辺の画素数の逆数)にスケーリングした後、その値に対応するディスプレイバッファ10の記憶領域に輝度値を書き込む。このようにすることにより、ディスプレイバッファ10に隙間なく、輝度値が記憶される。
【0072】
そして、ディスプレイバッファ10に書き込まれた輝度値は、CRT制御部12により水平および垂直同期信号に同期して発生される表示アドレスに対応して、CRT制御部12にメモリインタフェース8を介して転送され、CRT制御部12のFIFO部に一旦記憶される。そして、その輝度値に対応するインデックス値が、所定の間隔でマルチプレクサ14に出力される。
【0073】
このように、レンダリング回路20−kはそれぞれ動作し、予め割り当てられた画素におけるポリゴンレンダリングデータの値を並列に算出していく。
【0074】
そして、マルチプレクサ14により、レンダリング回路20−1乃至20−4より供給されたインデックス値は、所定の順番で整列された後、RAMDAC13に出力され、RAMDAC13から、そのインデックス値に対応した輝度値(RGB値)をD/A変換したアナログビデオ信号(RGB信号)が所定の装置(図示せず)に出力される。
【0075】
なお、上記実施の形態において並列に処理される領域の画素数は、2×2であるが、他の数でもよい。また、この領域の各辺の画素数が2の整数乗である場合、上述のV0およびViを算出するとき、除算の代わりにビットシフトを行えばよいので、回路が簡単となり、コストを低減することができる。
【0076】
【発明の効果】
以上のごとく、本発明によればサブピクセル精度での描画を並列処理で行うことができる。
【図面の簡単な説明】
【図1】本発明の描画装置の一実施の形態の構成を示すブロック図である。
【図2】図1の初期値演算部の構成例を示すブロック図である。
【図3】レンダリング回路への画素の割り当ての一例を示す図である。
【図4】データの初期値の算出の例を示す図である。
【図5】スパンの一例を示す図である。
【図6】複数のレンダリング回路で行う描画処理の一例を示す図である。
【符号の説明】
1 メインプロセッサ, 2 入出力部, 3 メインメモリ, 4 ジオメトリ演算部, 5 DDAセットアップ部, 6 DDA部, 13 RAMDAC, 14 マルチプレクサ, 20−1乃至20−4 レンダリング回路,
21 初期値演算部

Claims (4)

  1. 2次元の画素座標系を、第1の方向にP個、前記第1の方向に垂直な第2の方向にQ個の合計P×Q個の複数の画素で構成される領域ごとに分割し、分割した各領域のP×Q個の画素に、P×Q個の演算部をそれぞれ割り当て、所定の図形に対応する画素並列に描画する描画方法において、
    前記第1および第2の方向における1画素あたりの描画データの変分をそれぞれΔV / ΔX 1 、ΔV / ΔX 2 とし、 ccil を、独立変数として与えられた数以上の整数のうちの最も小さい整数を従属変数として返す関数とすると、所定の点における描画データの値Vから、前記第1の方向において第i番目で、かつ、前記第2の方向において第j番目の演算部に割り当てられた最初の画素における描画データの値を、前記第1の方向においては、式
    V (ccil((V+P-i)/P)-((V+P-i)/P)) × P ×Δ V/ Δ X 1
    にしたがって、前記第2の方向においては、式
    V (ccil((V+Q-j)/Q)-((V+Q- )/Q)) × Q ×Δ V/ Δ X 2
    にしたがって演算する
    ことを特徴とする描画方法。
  2. 各演算部が、前記最初の画素における描画データの値から、前記1画素あたりの描画データの変分のQ倍の値を変分として、前記第2の方向に位置する画素における描画データの値を補間演算する
    ことを特徴とする請求項1に記載の描画方法。
  3. 前記1画素あたりの描画データの変分のQ倍の値を変分として補間演算された描画データの値を、前記演算部にそれぞれ対応する記憶部の、前記補間演算された描画データに対応する画素の座標を前記第1の方向にP分の1、前記第2の方向にQ分の1だけそれぞれスケーリングした座標に対応する記憶領域に記憶させる
    ことを特徴とする請求項に記載の描画方法。
  4. 2次元の画素座標系を、第1の方向にP個、前記第1の方向に垂直な第2の方向にQ個の合計P×Q個の複数の画素で構成される領域ごとに分割し、分割した各領域のP×Q個の画素に、P×Q個の演算部をそれぞれ割り当て、所定の図形に対応する画素並列に描画する描画装置において、
    所定の点における描画データの値をVとし、前記第1および第2の方向における1画素あたりの描画データの変分をそれぞれΔV / ΔX 1 、ΔV / ΔX 2 とし、 ccil を、独立変数として与えられた数以上の整数のうちの最も小さい整数を従属変数として返す関数とすると、式
    V (ccil((V+P-i)/P)-((V+P-i)/P)) × P ×Δ V/ Δ X 1
    にしたがって、最初に描画する画素の前記第1の方向における座標に対応する前記描画データの値を演算する第1の補間演算手段と、

    V (ccil((V+Q- )/Q)-((V+Q-j)/Q)) × Q ×Δ V/ Δ X 2
    にしたがって、最初に描画する画素の前記第2の方向における座標に対応する前記描画データの値を演算するP×Q個の第2の補間演算手段と
    を備えることを特徴とする描画装置。
JP35046296A 1996-12-24 1996-12-27 描画方法および描画装置 Expired - Fee Related JP3763136B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP35046296A JP3763136B2 (ja) 1996-12-27 1996-12-27 描画方法および描画装置
US08/995,969 US6184903B1 (en) 1996-12-27 1997-12-22 Apparatus and method for parallel rendering of image pixels
KR1019970082662A KR100497557B1 (ko) 1996-12-27 1997-12-26 묘화장치및묘화방법
US09/455,591 US6246421B1 (en) 1996-12-24 1999-12-06 Apparatus and method for parallel rendering of image pixels

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP35046296A JP3763136B2 (ja) 1996-12-27 1996-12-27 描画方法および描画装置

Publications (2)

Publication Number Publication Date
JPH10188004A JPH10188004A (ja) 1998-07-21
JP3763136B2 true JP3763136B2 (ja) 2006-04-05

Family

ID=18410662

Family Applications (1)

Application Number Title Priority Date Filing Date
JP35046296A Expired - Fee Related JP3763136B2 (ja) 1996-12-24 1996-12-27 描画方法および描画装置

Country Status (3)

Country Link
US (2) US6184903B1 (ja)
JP (1) JP3763136B2 (ja)
KR (1) KR100497557B1 (ja)

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6545685B1 (en) * 1999-01-14 2003-04-08 Silicon Graphics, Inc. Method and system for efficient edge blending in high fidelity multichannel computer graphics displays
US6377265B1 (en) * 1999-02-12 2002-04-23 Creative Technology, Ltd. Digital differential analyzer
US6867779B1 (en) * 1999-12-22 2005-03-15 Intel Corporation Image rendering
US7405734B2 (en) * 2000-07-18 2008-07-29 Silicon Graphics, Inc. Method and system for presenting three-dimensional computer graphics images using multiple graphics processing units
EP1314149B1 (en) 2000-07-28 2014-05-21 Samsung Display Co., Ltd. Arrangement of color pixels for full color imaging devices with simplified addressing
US7274383B1 (en) 2000-07-28 2007-09-25 Clairvoyante, Inc Arrangement of color pixels for full color imaging devices with simplified addressing
US6950115B2 (en) * 2001-05-09 2005-09-27 Clairvoyante, Inc. Color flat panel display sub-pixel arrangements and layouts
US7283142B2 (en) * 2000-07-28 2007-10-16 Clairvoyante, Inc. Color display having horizontal sub-pixel arrangements and layouts
US8022969B2 (en) * 2001-05-09 2011-09-20 Samsung Electronics Co., Ltd. Rotatable display with sub-pixel rendering
US7184066B2 (en) 2001-05-09 2007-02-27 Clairvoyante, Inc Methods and systems for sub-pixel rendering with adaptive filtering
US7221381B2 (en) * 2001-05-09 2007-05-22 Clairvoyante, Inc Methods and systems for sub-pixel rendering with gamma adjustment
US7123277B2 (en) 2001-05-09 2006-10-17 Clairvoyante, Inc. Conversion of a sub-pixel format data to another sub-pixel data format
US6885374B2 (en) * 2001-06-29 2005-04-26 Intel Corporation Apparatus, method and system with a graphics-rendering engine having a time allocator
US7173627B2 (en) 2001-06-29 2007-02-06 Intel Corporation Apparatus, method and system with a graphics-rendering engine having a graphics context manager
AU2002353139A1 (en) 2001-12-14 2003-06-30 Clairvoyante Laboratories, Inc. Improvements to color flat panel display sub-pixel arrangements and layouts with reduced visibility of a blue luminance well
US20030117423A1 (en) * 2001-12-14 2003-06-26 Brown Elliott Candice Hellen Color flat panel display sub-pixel arrangements and layouts with reduced blue luminance well visibility
US20040051724A1 (en) * 2002-09-13 2004-03-18 Elliott Candice Hellen Brown Four color arrangements of emitters for subpixel rendering
US7492379B2 (en) * 2002-01-07 2009-02-17 Samsung Electronics Co., Ltd. Color flat panel display sub-pixel arrangements and layouts for sub-pixel rendering with increased modulation transfer function response
US7417648B2 (en) 2002-01-07 2008-08-26 Samsung Electronics Co. Ltd., Color flat panel display sub-pixel arrangements and layouts for sub-pixel rendering with split blue sub-pixels
US7755652B2 (en) 2002-01-07 2010-07-13 Samsung Electronics Co., Ltd. Color flat panel display sub-pixel rendering and driver configuration for sub-pixel arrangements with split sub-pixels
US20040080479A1 (en) * 2002-10-22 2004-04-29 Credelle Thomas Lioyd Sub-pixel arrangements for striped displays and methods and systems for sub-pixel rendering same
US7046256B2 (en) * 2003-01-22 2006-05-16 Clairvoyante, Inc System and methods of subpixel rendering implemented on display panels
US20040196302A1 (en) * 2003-03-04 2004-10-07 Im Moon Hwan Systems and methods for temporal subpixel rendering of image data
US6917368B2 (en) * 2003-03-04 2005-07-12 Clairvoyante, Inc. Sub-pixel rendering system and method for improved display viewing angles
US7167186B2 (en) * 2003-03-04 2007-01-23 Clairvoyante, Inc Systems and methods for motion adaptive filtering
JP3871061B2 (ja) * 2003-03-25 2007-01-24 セイコーエプソン株式会社 画像処理システム、プロジェクタ、プログラム、情報記憶媒体および画像処理方法
US7352374B2 (en) * 2003-04-07 2008-04-01 Clairvoyante, Inc Image data set with embedded pre-subpixel rendered image
US20040233308A1 (en) * 2003-05-20 2004-11-25 Elliott Candice Hellen Brown Image capture device and camera
US7230584B2 (en) * 2003-05-20 2007-06-12 Clairvoyante, Inc Projector systems with reduced flicker
US7268748B2 (en) * 2003-05-20 2007-09-11 Clairvoyante, Inc Subpixel rendering for cathode ray tube devices
JP2005055573A (ja) * 2003-08-01 2005-03-03 Fujitsu Ltd 高速表示処理装置
JP4313130B2 (ja) 2003-09-18 2009-08-12 株式会社リコー 画像形成装置、画像形成方法、およびその方法をコンピュータで実行するプログラム
JP4813787B2 (ja) * 2003-10-17 2011-11-09 パナソニック株式会社 画像処理装置及びその方法
US7084923B2 (en) * 2003-10-28 2006-08-01 Clairvoyante, Inc Display system having improved multiple modes for displaying image data from multiple input source formats
US7525526B2 (en) * 2003-10-28 2009-04-28 Samsung Electronics Co., Ltd. System and method for performing image reconstruction and subpixel rendering to effect scaling for multi-mode display
US20050250821A1 (en) * 2004-04-16 2005-11-10 Vincent Sewalt Quaternary ammonium compounds in the treatment of water and as antimicrobial wash
JP2006202211A (ja) * 2005-01-24 2006-08-03 Fujitsu Ltd 画像描画装置および画像描画方法
US7436412B2 (en) * 2005-08-24 2008-10-14 Qualcomm Incorporated Graphics engine with efficient interpolation
US20080001967A1 (en) * 2006-06-30 2008-01-03 Srikanth Rengarajan Display bandwidth reduction apparatus, system, and method
US7940261B2 (en) * 2007-01-10 2011-05-10 Qualcomm Incorporated Automatic load balancing of a 3D graphics pipeline
KR100980449B1 (ko) * 2007-12-17 2010-09-07 한국전자통신연구원 병렬 전역조명 렌더링 방법 및 시스템
JP2010086008A (ja) * 2008-09-29 2010-04-15 Fujitsu Microelectronics Ltd 半導体装置、グラフィクスコントローラ、及び情報処理方法
JP5151946B2 (ja) * 2008-12-09 2013-02-27 富士通株式会社 描画装置
CN103761759B (zh) * 2013-12-30 2016-09-14 浙江大学 基于光辉喷洒的图像渲染方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01177685A (ja) * 1988-01-08 1989-07-13 Hitachi Ltd レンダリングプロセツサ及び画面表示装置
CA1309198C (en) * 1987-12-10 1992-10-20 Carlo J. Evangelisti Parallel rendering of smoothly shaded color triangles with anti-aliased edges for a three dimensional color display
JPH04172576A (ja) * 1990-11-07 1992-06-19 Dainippon Printing Co Ltd 大画像レンダリング処理装置
JP2725915B2 (ja) * 1990-11-15 1998-03-11 インターナショナル・ビジネス・マシーンズ・コーポレイション 三角形描画装置及び方法
US5706415A (en) * 1991-12-20 1998-01-06 Apple Computer, Inc. Method and apparatus for distributed interpolation of pixel shading parameter values
US5422991A (en) * 1992-09-22 1995-06-06 International Business Machines Corporation Parallel vector generator and triangle generator incorporating same
GB2278524B (en) * 1993-05-28 1997-12-10 Nihon Unisys Ltd Method and apparatus for rendering visual images employing area calculation and blending of fractional pixel lists for anti-aliasing and transparency
US5392393A (en) * 1993-06-04 1995-02-21 Sun Microsystems, Inc. Architecture for a high performance three dimensional graphics accelerator
US5515484A (en) * 1993-10-06 1996-05-07 Silicon Graphics, Inc. Method and apparatus for rendering volumetric images
US5704025A (en) * 1995-06-08 1997-12-30 Hewlett-Packard Company Computer graphics system having per pixel depth cueing
US5701405A (en) * 1995-06-21 1997-12-23 Apple Computer, Inc. Method and apparatus for directly evaluating a parameter interpolation function used in rendering images in a graphics system that uses screen partitioning
KR0165464B1 (ko) * 1995-10-31 1999-01-15 김광호 그래픽을 위한 스팬렌더링방법 및 장치
US5821950A (en) * 1996-04-18 1998-10-13 Hewlett-Packard Company Computer graphics system utilizing parallel processing for enhanced performance
KR100261077B1 (ko) * 1996-04-25 2000-07-01 윤종용 볼륨 렌더링 장치 및 이에 적합한 방법

Also Published As

Publication number Publication date
US6184903B1 (en) 2001-02-06
US6246421B1 (en) 2001-06-12
KR100497557B1 (ko) 2005-09-30
JPH10188004A (ja) 1998-07-21
KR19980064843A (ko) 1998-10-07

Similar Documents

Publication Publication Date Title
JP3763136B2 (ja) 描画方法および描画装置
JP3107452B2 (ja) テクスチャマッピング方法およびその装置
JP2910979B2 (ja) コンピュータグラフィックシステムのサブピクセルマスク発生方法および装置
JP2923648B2 (ja) 物体の色特性を発生する方法と装置
JP3738924B2 (ja) 描画装置および方法
US5555359A (en) Computer graphics anti-aliasing method using a partitioned look-up table
JP2010113624A (ja) ベジェ曲線描画装置、ベジェ曲線描画方法およびプログラム
KR100241060B1 (ko) 컴퓨터 그래픽스에서 텍스쳐 맵핑을 위한 상세 레벨의 결정 방법 및 회로
JPH0660173A (ja) 画像を縮小する方法および装置
US4945497A (en) Method and apparatus for translating rectilinear information into scan line information for display by a computer system
JPH0721407A (ja) 画像表示方法
JP3064799B2 (ja) テクスチャマッピング装置
CA2261245C (en) Division circuit and graphic display processing apparatus
KR100260040B1 (ko) 컴퓨터 그래픽에서 텍스쳐 좌표를 결정하는 방법 및 장치
JP4300650B2 (ja) 演算処理回路およびその方法と画像処理装置
KR100313846B1 (ko) 바이리니어밉매핑에서의상세도(lod)계산방법및장치
JP4244444B2 (ja) データ処理装置、除算回路および画像処理装置
JP4224887B2 (ja) 信号処理装置および画像処理装置
JP3538826B2 (ja) 演算回路および演算方法
JP4635379B2 (ja) 画像処理装置
JP2003187260A (ja) 描画処理プログラム、描画処理プログラムを記録した記録媒体、描画処理装置及び方法
JP3358891B2 (ja) Z値の透視変換処理方法及び画像処理装置
JP3311905B2 (ja) 画像処理装置
KR100243189B1 (ko) 그래픽 시스템의 심플섀도 발생장치
JPH11306381A (ja) グラフィック演算装置およびその方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050817

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050822

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051021

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: 20051226

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060108

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

Free format text: PAYMENT UNTIL: 20100127

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100127

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110127

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110127

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120127

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120127

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130127

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees