JP3394473B2 - グラフィックス処理装置、方法及び記録媒体 - Google Patents

グラフィックス処理装置、方法及び記録媒体

Info

Publication number
JP3394473B2
JP3394473B2 JP23480799A JP23480799A JP3394473B2 JP 3394473 B2 JP3394473 B2 JP 3394473B2 JP 23480799 A JP23480799 A JP 23480799A JP 23480799 A JP23480799 A JP 23480799A JP 3394473 B2 JP3394473 B2 JP 3394473B2
Authority
JP
Japan
Prior art keywords
image
input
buffer
image buffer
priority
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
JP23480799A
Other languages
English (en)
Other versions
JP2001056676A (ja
Inventor
憲一 水谷
Original Assignee
エヌイーシーマイクロシステム株式会社
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 エヌイーシーマイクロシステム株式会社 filed Critical エヌイーシーマイクロシステム株式会社
Priority to JP23480799A priority Critical patent/JP3394473B2/ja
Priority to DE60012439T priority patent/DE60012439T2/de
Priority to EP00117544A priority patent/EP1079366B1/en
Priority to TW089116440A priority patent/TW468147B/zh
Priority to KR1020000047711A priority patent/KR100359359B1/ko
Publication of JP2001056676A publication Critical patent/JP2001056676A/ja
Application granted granted Critical
Publication of JP3394473B2 publication Critical patent/JP3394473B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/363Graphics controllers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/02Control 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/026Control of mixing and/or overlay of colours in general
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39Control of the bit-mapped memory
    • G09G5/395Arrangements specially adapted for transferring the contents of the bit-mapped memory to the screen
    • G09G5/397Arrangements specially adapted for transferring the contents of two or more bit-mapped memories to the screen simultaneously, e.g. for mixing or overlay
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2320/00Control of display operating conditions
    • G09G2320/06Adjustment of display parameters
    • G09G2320/0666Adjustment of display parameters for control of colour parameters, e.g. colour temperature
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/10Mixing of images, i.e. displayed pixel being the result of an operation, e.g. adding, on the corresponding input pixels

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、グラフィックス処
理装置、方法及びそのためのプログラムを記録した記録
媒体に関する。
【0002】
【従来の技術】汎用コンピュータや専用のグラフィック
スエンジンによるグラフィックス処理、特に半透明処理
による複数の画像の重ね合わせ処理は、システムリセッ
ト及び各地を設定・定義し、同期信号が生成された後
に、イニシャライズ処理、格納処理、表示処理を順に行
うことによって実行することができる。まず、イニシャ
ライズ処理では、重ね合わせの対象となっている画像を
格納するための画像バッファをすべてクリアして空にす
る。
【0003】図12は、従来例にかかるグラフィックス
処理における格納処理を示すフローチャートである。こ
の格納処理では、まず、画像バッファに画像を格納すべ
き画素があるかどうかを判定する(ステップST7
1)。画像を格納すべき画素は複数ある場合があり、こ
こでは、CPU11は、このような画素のうちで後述す
るステップST72〜ST76の処理がなされていない
ものが残っているかどうかを判定する。画像を格納すべ
き画素がなければ、格納処理を終了して、表示処理に進
む。
【0004】画像を格納すべき画素がある場合には、処
理面数を示す変数tmpに初期値として“0”を代入して
画像バッファの設定を最前面とすると共に、表示優先順
位値を示す変数tmp_yusenに入力された表示優先順位値i
np_yusenを、半透明値を示す変数tmp_halfに入力された
半透明値inp_halfを、paletteアドレス値を示す変数tmp
_paletteに入力されたpaletteアドレス値inp_palette
を、それぞれ代入する(ステップST72)。
【0005】次に、現在の処理面数を示す変数tmpが最
大面数max_menを越えているかどうかを判定する(ステ
ップST73)。現在の処理面数を示す変数tmpが最大
面数max_menを越えていないと判定したときは、表示優
先順位を示す一時的な変数tmp_yusenが画像バッファに
格納されている表示優先順位値yusen[tmp][inp_add]よ
りも大きいかどうか、すなわち一時的な優先順位の方が
高いかどうかを判定する(ステップST74)。
【0006】表示優先順位を示す一時的な変数tmp_yuse
nが画像バッファに格納されている表示優先順位値yusen
[tmp][inp_add]よりも大きくないと判定したときは、現
在の処理面数を示す一時的な変数tmpの値を“1”だけ
加算して(ステップST75)、ステップST73の処
理に戻る。
【0007】表示優先順位を示す一時的な変数tmp_yuse
nが画像バッファに格納されている表示優先順位値yusen
[tmp][inp_add]よりも大きいと判定したときは、画像バ
ッファへの画像のデータの格納を行う。すなわち、変数
yusen[tmp][inp_add]の値を変数yusenに、変数half[tm
p][inp_add]の値を変数halfに、変数palette[tmp][inp_
add]の値を変数paletteに、変数tmp_yusenの値を変数yu
sen[tmp][inp_add]に、変数tmp_halfの値を変数half[tm
p][inp_add]に、変数tmp_paletteの値を変数palette[tm
p][inp_add]に、変数yusenの値を変数tmp_yusenに、変
数halfの値を変数tmp_halfに、変数paletteの値を変数t
mp_paletteにそれぞれ代入する。さらに、現在の処理面
数を示す変数tmpの値を“1”だけ加算する(ステップ
ST76)。そして、ステップST73の処理に戻る。
【0008】一方、ステップST73で現在の処理面数
を示す変数tmpが最大面数max_menを越えていると判定し
たときは、ステップST71の処理に戻る。そして、画
像を格納すべき画素がもうない場合には、ステップST
71での判定結果がNoとなり、格納処理を終了して、
表示処理に進むこととなる。
【0009】以上説明した格納処理によって、画像バッ
ファには、それぞれ前面の画像から順に格納されていく
こととなる。が、画像バッファの数を超えるさらに後面
の画像は、この従来のグラフィックス処理において、画
像バッファに格納されることはない。
【0010】格納処理が終了すると、続いて表示処理が
行われ、画像バッファにそれぞれ格納された前面から画
像バッファの数の分だけの画像が半透明処理されて、表
示装置に表示すべき画像が生成される。
【0011】なお、上記従来例のグラフィックス処理を
専用のハードウェアとして実現するグラフィックスエン
ジンは、例えば、図13に示すように実現することがで
きる。このグラフィックスエンジンは、3つの画像バッ
ファB11〜B13を有する。制御部B4は、グラフィ
ックス処理と連動した他の処理を行うCPU B1から
の依頼により、このグラフィックスエンジン内の各部を
制御する。グラフィックスエンジン部B3は、制御部B
4からの制御信号に従って、画像バッファB11〜B1
3に格納すべき画像データ等を出力する。αブレンディ
ング演算器B21は、色データ同士を演算して、演算し
た色データを外部のディスプレイ装置B22に供給す
る。
【0012】このグラフィックスエンジンでグラフィッ
クス処理を行う場合、まず、システムリセット信号S2
をアクティブにし、制御部B4をリセットする。次に、
CPU B1から制御部B4にCPU_I/F信号S1
を出力し、ステップST1に示したような各種の設定
を、制御部B4に対して行う。さらに、制御部B4から
ディスプレイ装置B22に対して、同期信号S12を出
力することより、イニシャライズ処理が行われる。
【0013】イニシャライズ処理で画像バッファB11
〜B13のそれぞれに用意されているpalette[i][j]、y
usen[i][j]、half[i][j]のすべてにempty(画像バッフ
ァB11〜B13の格納内容がクリアされた状態)が設
定されると、図12のフローチャートに示したのと同様
の格納処理が行われる。なお、このイニシャライズ処理
の詳細は、後述する本発明の実施の形態で示すものと実
質的に同じである。
【0014】格納処理では、制御部B4は、CPU B
1から出力されたCPU_I/F信号S1に従って、表
示する図形に必要なパラメータとしてエンジン制御信号
S6をグラフィックスエンジン部B3に出力する。グラ
フィックスエンジン部B3は、エンジン制御信号S6で
与えられたパラメータよりROMアドレスS3を算出
し、キャラクタROM B2に出力する。キャラクタR
OM B2は、グラフィックスエンジン部B3からのR
OMアドレスS3に従って、ROMデータS4をグラフ
ィックスエンジン部B3に返却する。
【0015】グラフィックスエンジン部B3は、グラフ
ィックス処理の開始時における設定値及び返却されたR
OMデータS4に従って、画像データS5を画像バッフ
ァB11〜B13に、エンジン出力画像WEB S7及
びエンジン出力画像アドレスS8を制御部B4に、順次
出力する。ここで、画像データS5は、palette、yuse
n、halfの3要素で構成されるデータである。
【0016】次に、比較器B5は、画像データS5に含
まれるyusenと、画像バッファB11から出力されてい
る画像バッファ出力信号S28に含まれるyusenとを比
較し、その比較結果に応じた優先切り替え信号S21を
出力する。デマルチプレクサB8は、優先切り替え信号
S21に従って、画像データS5と画像バッファ出力信
号S28のうちの優先順位の高い方を画像バッファ入力
信号S29として、低い方を次画像バッファ比較データ
S41として出力する。ここで、画像バッファB11
は、画像バッファ入力信号S29を格納する。
【0017】次に、比較器B6は、次画像バッファ比較
データS41に含まれるyusenと、画像バッファB12
から出力されている画像バッファ出力信号S27に含ま
れるyusenとを比較し、その比較結果に応じた優先切り
替え信号S22を出力する。デマルチプレクサB9は、
優先切り替え信号S22に従って、次画像バッファ比較
データS41と画像バッファ出力信号S27のうちの優
先順位の高い方を画像バッファ入力信号S30として、
低い方を次画像バッファ比較データS42として出力す
る。ここで、画像バッファB12は、画像バッファ入力
信号S30を格納する。
【0018】次に、比較器B7は、次画像バッファ比較
データS42に含まれるyusenと、画像バッファB13
から出力されている画像バッファ出力信号S26に含ま
れるyusenとを比較し、その比較結果に応じた優先切り
替え信号S23を出力する。セレクタB10は、優先切
り替え信号S23に従って、次画像バッファ比較データ
S42の方が優先順位が高い場合に、これを画像バッフ
ァ入力信号S31として出力し、画像バッファB13に
格納する。それ以外の場合は、画像バッファ出力信号S
26を再び画像バッファB13に格納する。以上の動作
を、すべての画素、すべての面の画像に対して繰り返
す。
【0019】そして、格納処理が終了すると、表示処理
が行われ、αブレンディング演算器B22により演算さ
れた色データS39を出力し、画像バッファB11〜B
13に格納された3つの画像が半透明処理された画像
が、ディスプレイ装置B22に表示されることとなる。
なお、この表示処理の詳細は、後述する本発明の実施の
形態で示すものと実質的に同じである。
【0020】
【発明が解決しようとする課題】ところで、上記した従
来のグラフィックス処理で半透明の画像を重ねて表示す
るときには、次に説明するように、理想とする本来の色
との間に大きな誤差が生ずるという問題があった。
【0021】図14は、従来のグラフィックス処理にお
いて、半透明の画像を重ねて表示するときに、表示装置
上に実際に表示される画像の色を説明する図である。こ
こで、重ね合わせ表示されるべき画像は、後ろ側から順
にZ1、Z2、Z3の3つで、それぞれの半透明率は、
γ、β、αであるとする。半透明率βは、半透明率γよ
りも十分に小さく、0に近いものとする。また、これら
の図形を格納すべき画像バッファは2つだけであるとす
る。
【0022】このとき、図に示すP点における本来の画
像の色color_Pは、数式1に示すものとなる。
【数1】color_P = αcolor_Z3 + (1-α)(βcolor_Z2 +
(1-β)γcolor_Z1) 但し、color_Z* は、画像Z*のP点における色
【0023】しかしながら、このグラフィックス処理に
おいて、画像バッファは2つしかないため、画像バッフ
ァに格納されるのは、前面側の画像Z3と、Z2にな
る。すると、表示装置上に実際に表示されるP点におけ
る画像Z4の色color_P"は、数式2に示すものとなる。
【数2】color_P" = αcolor_Z3 + (1-α)βcolor_Z2
【0024】この場合、本来表示されるべき色との間
に、(1-α)((1-β)γcolor_Z1)の誤差を生じる。このと
き、β≒0であるため、この誤差は十分に大きな値をと
ることになってしまう。このように、従来におけるグラ
フィックス処理では、表示装置に実際に表示される画像
のP点における色color_P"と、本来表示されるべき色co
lor_Pとの間に大きな誤差が生じてしまうという問題点
があった。
【0025】本発明は、上記従来技術の問題点を解消す
るためになされたものであり、半透明の図形を重ねて表
示するときに、表示すべき本来の色との誤差を小さくす
ることができるグラフィックス処理装置、方法及びその
ためのプログラムを記録したコンピュータ読み取り可能
な記録媒体を提供することを目的とする。
【0026】
【課題を解決するための手段】上記目的を達成するた
め、本発明の第1の観点にかかるグラフィックス処理装
置は、複数の、一定の優先順位及び一定の半透明率を有
する画像をカスケード接続された複数の画像バッファに
前記優先順位に応じて格納し、前記複数の画像バッファ
に格納された画像を処理して表示装置に重ね合わせ表示
処理するグラフィックス処理装置であって、入力しよう
とする前記画像の優先順位が入力しようとする前記画像
バッファ内の画像の優先順位より大きい場合は前記入力
画像を前記画像バッファ内に格納し、前記画像バッファ
内の前記入力画像と重なる部分の画像は次段の画像バッ
ファに送り、そうでない場合は前記入力画像を次段の画
像バッファに送り、前記入力しようとする画像バッファ
が最終段の画像バッファである場合は、前記入力画像の
前記半透明率が所定の閾値に等しいか小さい場合には前
記画像バッファ内の画像をそのまま残す格納手段と、前
記格納手段によって前記複数の画像バッファにそれぞれ
格納された画像を半透明処理して、表示装置に表示する
ための表示データを生成する表示処理手段と、を備える
ことを特徴とする。
【0027】上記のグラフィックス処理装置は、前記複
数の画像バッファを初期化するのに先立って、重ね合わ
せ表示処理の対象となっている画像の半透明率から閾値
を求める手段と、 前記閾値を格納する手段と、を更に備
えてもよい。
【0028】
【0029】
【0030】
【0031】上記目的を達成するため、本発明の第
観点にかかるグラフィックス処理装置は、複数の、一定
の優先順位及び一定の半透明率を有する画像を前記優先
順位に応じて格納するカスケード接続された複数の画像
バッファと、前記複数の画像バッファに格納されている
画像を半透明処理する演算装置と、前記複数の画像バッ
ファへの画像の格納、及び前記演算装置による半透明処
理を制御する制御装置とを備え、前記制御装置は、入力
しようとする前記画像の優先順位が入力しようとする前
記画像バッファ内の画像の優先順位より大きい場合は前
記入力画像を前記画像バッファ内に格納し、前記画像バ
ッファ内の前記入力画像と重なる部分の画像は次段の画
像バッファに送り、そうでない場合は前記入力画像を次
段の画像バッファに送り、前記入力しようとする画像バ
ッファが最終段の画像バッファである場合は、前記入力
画像の前記半透明率が所定の閾値に等しいか小さい場合
には前記画像バッファ内の画像をそのまま残し、前記演
算装置は、前記制御装置によって前記複数の画像バッフ
ァにそれぞれ格納された画像を半透明処理して、表示装
置に重ね合わせ表示するための表示データを生成する、
ことを特徴とする。
【0032】前記制御装置は、 前記複数の画像バッファ
を初期化するのに先立って、重ね合わせ表示処理の対象
となっている画像の半透明率から閾値を求める手段と、
前記閾値を格納する手段と、を更に備えてもよい。
【0033】
【0034】上記目的を達成するため、本発明の第
観点にかかるグラフィックス処理方法は、複数の、一定
の優先順位及び一定の半透明率を有する画像をカスケー
ド接続された複数の画像バッファに前記優先順位に応じ
て格納し、前記複数の画像バッファに格納された画像を
処理して表示装置に重ね合わせ表示するための画像デー
タを生成するグラフィックス処理方法であって、入力し
ようとする前記画像の優先順位が入力しようとする前記
画像バッファ内の画像の優先順位より大きい場合は前記
入力画像を前記画像バッファ内に格納し、前記画像バッ
ファ内の前記入力画像と重なる部分の画像は次段の画像
バッファに送り、そうでない場合は前記入力画像を次段
の画像バッファに送り、前記入力しようとする画像バッ
ファが最終段の画像バッファである場合は、前記入力画
像の前記半透明率が所定の閾値に等しいか小さい場合に
は前記画像バッファ内の画像をそのまま残す格納ステッ
プと、前記格納ステップによって前記複数の画像バッフ
ァにそれぞれ格納された画像を半透明処理して、表示装
置に表示するための表示データを生成する表示処理ステ
ップと、を備えることを特徴とする。
【0035】上記のグラフィック処理方法は、前記複数
の画像バッファを初期化するのに先立って、重ね合わせ
表示処理の対象となっている画像の半透明率から閾値を
求めるステップと、 前記閾値を格納するステップと、を
更に備えてもよい。
【0036】上記目的を達成するため、本発明の第
観点にかかる記録媒体は、複数の、一定の優先順位及び
一定の半透明率を有する画像をカスケード接続された複
数の画像バッファに前記優先順位に応じて格納し、前記
複数の画像バッファに格納された画像を処理して表示装
置に重ね合わせ表示するための画像データを生成するた
めのプログラムを記録したコンピュータ読み取り可能な
記録媒体であって、入力しようとする前記画像の優先順
位が入力しようとする前記画像バッファ内の画像の優先
順位より大きい場合は前記入力画像を前記画像バッファ
内に格納し、前記画像バッファ内の前記入力画像と重な
る部分の画像は次段の画像バッファに送り、そうでない
場合は前記入力画像を次段の画像バッファに送り、前記
入力しようとする画像バッファが最終段の画像バッファ
である場合は、前記入力画像の前記半透明率が所定の閾
値に等しいか小さい場合には前記画像バッファ内の画像
をそのまま残す格納ステップと、前記格納ステップによ
って前記複数の画像バッファにそれぞれ格納された画像
を半透明処理して、表示装置に表示するための表示デー
タを生成する表示処理ステップと、をコンピュータに実
行させるためのプログラムを記録したことを特徴とす
る。
【0037】上記の記録媒体は、前記複数の画像バッフ
ァを初期化するのに先立って、重ね合わせ表示処理の対
象となっている画像の半透明率から閾値を求めるステッ
プと、 前記閾値を格納するステップと、をさらに備えて
もよい。
【0038】
【0039】
【0040】
【発明の実施の形態】以下、添付図面を参照して、本発
明の実施の形態について説明する。
【0041】[第1の実施の形態]図1は、この実施の
形態にかかるグラフィックス処理に適用される、汎用の
コンピュータシステムの構成を示すブロック図である。
図示するように、このコンピュータシステムは、CPU
(Central Processing Unit)11及び記憶装置12を
備えるコンピュータ1と、入力装置2と、表示装置3と
から構成されている。
【0042】CPU11は、後述するフローチャートに
示すプログラムにより、この実施の形態のグラフィック
ス処理を実行する。記憶装置12は、CPU11が実行
するプログラム及びその他のデータを記憶し、或いはC
PU11のワークエリアとして使用される。入力装置2
は、データを入力したり、CPU11に対する指示を入
力したりする。表示装置3は、CPU11によってグラ
フィックス処理された画像を表示する。
【0043】以下、この実施の形態にかかるグラフィッ
クス処理について説明する。この実施の形態では、グラ
フィックス処理を行うのに先立って、図2のフローチャ
ートに示す閾値作成処理でshikiichiを作成する必要が
ある。この閾値作成処理は、入力装置2から所定の指示
を入力することによって開始する。
【0044】閾値作成処理では、CPU11は、まず、
各種パラメータの設定、定義を行う。ここでは、表示す
る図形(半透明処理による重ね合わせの対象となる図
形)の数をMAX、表示する図形の半透明値をhalf[MAX]、
閾値をshikiichi、現在処理している図形の番号をdraw
に設定する(ステップX1)。次に、CPU11は、現
在処理している図形の番号drawと閾値shikiichiとの値
を“0”に初期化する(ステップX2)。
【0045】次に、CPU11は、表示する図形数MAX
が現在処理している図形の番号drawよりも大きいかどう
かを判定する(ステップX3)。表示する図形数MAXが
現在処理している図形の番号drawよりも大きいと判定し
たときは、CPU11は、現在処理している図形の半透
明値half[draw]が0.5以上かどうかを判定する(ステ
ップX4)。
【0046】現在処理している図形の半透明値half[dra
w]が0.5未満であると判定したときは、CPU11
は、閾値shikiichiが0.0に等しくないかどうかを判
定する(ステップX5)。閾値shikiichiが0.0に等
しいと判定したときは、ステップX7の処理に進む。閾
値shikiichiが0.0に等しくないと判定したときは、
CPU11は、さらに閾値shikiichiが現在処理してい
る図形の半透明値half[draw]よりも小さいかどうかを判
定する(ステップX6)。
【0047】ステップX5で閾値shikiichiが0.0に
等しいと判定したとき、或いはステップX6で閾値shik
iichiが現在処理している図形の半透明値half[draw]よ
りも小さいと判定したときは、CPU11は、現在処理
している図形の半透明値half[draw]を閾値shikiichiに
代入する(ステップX7)。そして、ステップX8の処
理に進む。
【0048】一方、ステップX4で現在処理している図
形の半透明値half[draw]が0.5を越えていると判定し
たとき、さらには、ステップX6で閾値shikiichiが現
在処理している図形の半透明値half[draw]より大きいと
判定したときにも、ステップX8の処理に進む。ステッ
プX8では、CPU11は、現在処理している図形の番
号drawを“1”加算し、次の図形を処理対象として、ス
テップX3の処理に戻る。
【0049】そして、ステップX3で現在処理している
図形の番号drawが表示する図形数MAXよりも大きくない
と判定された場合、この閾値作成処理を終了する。
【0050】閾値作成処理が終了すると、次に、図3の
フローチャートに示すグラフィックス処理が実行され
る。このグラフィックス処理も、閾値作成処理がすでに
終了している状態で、入力装置2から所定の指示を入力
することによって開始する。
【0051】グラフィックス処理では、CPU11は、
まず、システムリセット及び各値の設定または定義を行
う。ここでは、閾値半透明率をshikiichiに、画面×軸
方向の大きさをDisplay_ENDに、重ねられる最大枚数
(画像バッファの数)をmax_menに、処理面数を数える
ための一時的変数をtmpに、処理ドット数を数えるため
の一時的変数をdotcountに、画像バッファに格納されて
いるpaletteアドレスをpalette[i][j]に、画像バッファ
に格納されている表示優先順位値をyusen[i][j]に、画
像バッファに格納されている半透明値をhalf[i][j]に、
格納する画像の画像バッファアドレス値をinp_addに、
格納する画像のpaletteアドレス値をinp_paletteに、格
納する画像の表示優先順位値をinp_yusenに、格納する
画像の半透明値をinp_halfに、paletteアドレス値を貯
える一時的な変数をtmp_palette、paletteに、表示優先
順位値を貯える一時的な変数をtmp_yusen、yusenに、半
透明値を貯える一時的な変数をtmp_half、halfに、出力
する色値をoutocolorに、任意の値としてi,jを設定する
(ステップST1)。
【0052】次に、CPU11は、同期信号の入力を待
機し(ステップST2)、同期信号の入力があると、後
述するイニシャライズ処理を行い(ステップST3)、
後述する格納処理を行い(ステップST4)、さらに表
示処理を行う(ステップST5)。そして、表示処理が
終了すると、ステップST2に戻って同期信号の入力を
待機し、以上の処理を繰り返すことで表示装置3に画像
を表示させる。
【0053】以下、図3における“イニシャライズ処理
(ステップST3)”、“格納処理(ステップST
4)”、及び“表示処理(ステップST5)のそれぞれ
について、詳細に説明する。
【0054】図4は、ステップST3のイニシャライズ
処理を詳細に示すフローチャートである。このイニシャ
ライズ処理は、半透明処理による重ね合わせ表示の対象
となっている画像を格納する画像バッファを、すべて空
にするための処理である。
【0055】処理が開始すると、CPU11は、まず、
処理面数を数えるための一時的変数tmpと、処理ドット
数を数えるための一時的変数dotcountとに、それぞれ初
期値として“0”を代入する(ステップST31)。次
に、CPU11は、画面×軸方向の大きさDisplay_END
が処理ドット数を数えるための一時的変数dotcount以上
であるかどうか、すなわち現在処理を行っている画像バ
ッファの画素アドレスが最終画素アドレスを越えていな
いかどうかを判定する(ステップST32)。
【0056】画面×軸方向の大きさDisplay_ENDが処理
ドット数を数えるための一時的変数dotcount以上である
と判定した場合には、CPU11は、重ねられる最大面
数max_menが現在の処理面数tmpよりも以上であるかかど
うかを判定する(ステップST33)。
【0057】重ねられる最大面数max_menが現在の処理
面数tmpよりも以上であると判定したときは、CPU1
1は、paletteアドレスpalette[tmp][dotcount]、優先
順位値yusen[tmp][dotcount]、半透明値[tmp][dotcoun
t]それぞれ画像バッファに何も入っていないことを示す
値emptyを設定する(ステップST34)。CPU11
は、さらに現在の処理面数tmpを“1”だけ加算する
(ステップST35)。そして、ステップS33の処理
に戻る。
【0058】一方、現在の処理面数tmpが重ねられる最
大面数max_menよりも小さいと判定したときは、CPU
11は、処理ドット数を数えるための一時的変数dotcou
ntを“1”だけ加算し、現在の処理面数tmpの値を再び
“0”に初期化する(ステップST36)。そして、ス
テップS32の処理に戻る。
【0059】そして、ステップST32において、画面
×軸方向の大きさDisplay_ENDが処理ドット数を数える
ための一時的変数dotcountよりも大きくないと判定され
た場合には、CPU11は、イニシャライズ処理を終了
して、メインルーチン(図3)の処理に復帰する。
【0060】図5は、ステップST4の格納処理を詳細
に示すフローチャートである。この格納処理は、半透明
処理による重ね合わせの対象となっている画像から適切
な画像を選んで画像バッファに格納するための処理であ
る。
【0061】処理が開始すると、CPU11は、まず、
画像バッファに画像を格納すべき画素があるかどうかを
判定する(ステップST41)。画像を格納すべき画素
は複数ある場合があり、ここでは、CPU11は、この
ような画素のうちで後述するステップST42〜ST4
8の処理がなされていないものが残っているかどうかを
判定する。この格納要求は、格納する画像の画像バッフ
ァアドレス値inp_add、格納する画像の表示優先順位値i
np_yusen、格納する画像の半透明値inp_halfが、格納す
る画像のpaletteアドレス値inp_paletteが入力されるこ
とによってなされる。画像を格納すべき画素がなけれ
ば、格納処理を終了して、メインルーチン(図3)の処
理に復帰する。
【0062】画像を格納すべき画素がある場合には、C
PU11は、処理面数tmpに初期値として“0”を代入
して画像バッファの設定を最前面とすると共に、表示優
先順位値を示す変数tmp_yusenに入力された表示優先順
位値inp_yusenを、半透明値を示す変数tmp_halfに入力
された半透明値inp_yusenを、paletteアドレス値を示す
変数tmp_paletteに入力されたpaletteアドレス値inp_pa
letteを、それぞれ代入する(ステップST42)。
【0063】次に、CPU11は、現在の処理面数を示
す変数tmpが最大面数max_menを越えているかどうかを判
定する(ステップST43)。現在の処理面数を示す変
数tmpが最大面数max_menを越えていないと判定したとき
は、CPU11は、表示優先順位を示す一時的な変数tm
p_yusenが画像バッファに格納されている表示優先順位
値yusen[tmp][inp_add]よりも大きいかどうか、すなわ
ち一時的な優先順位の方が高いかどうかを判定する(ス
テップST44)。
【0064】表示優先順位を示す一時的な変数tmp_yuse
nが画像バッファに格納されている表示優先順位値yusen
[tmp][inp_add]よりも大きくないと判定したときは、C
PU11は、現在の処理面数を示す一時的な変数tmpの
値を“1”だけ加算して(ステップST45)、ステッ
プST43の処理に戻る。
【0065】表示優先順位を示す一時的な変数tmp_yuse
nが画像バッファに格納されている表示優先順位値yusen
[tmp][inp_add]よりも大きいと判定したときは、CPU
11は、現在の処理面数を示す変数tmpの値が最大面数m
ax_menの値と等しいかどうかを判定する(ステップST
46)。等しくないと判定したときは、そのままステッ
プST48の処理に進む。一方、等しいと判定したとき
は、CPU11は、変数tmp_halfに設定されている現在
処理対象となっている面の半透明値が上記のようにして
予め求められた閾値shikiichiよりも大きいかどうかを
判定する(ステップST47)。大きいと判定したとき
は、ステップST48の処理に進む。
【0066】ステップST48では、CPU11は、画
像バッファへの画像のデータの格納を行う。すなわち、
変数yusen[tmp][inp_add]の値を変数yusenに、変数half
[tmp][inp_add]の値を変数halfに、変数palette[tmp][i
np_add]の値を変数paletteに、変数tmp_yusenの値を変
数yusen[tmp][inp_add]に、変数tmp_halfの値を変数hal
f[tmp][inp_add]に、変数tmp_paletteの値を変数palett
e[tmp][inp_add]に、変数yusenの値を変数tmp_yusen
に、変数halfの値を変数tmp_halfに、変数paletteの値
を変数tmp_paletteにそれぞれ代入する。さらに、現在
の処理面数を示す変数tmpの値を“1”だけ加算して、
ステップST43の処理に戻る。
【0067】一方、ステップST43で現在の処理面数
を示す変数tmpが最大面数max_menを越えていると判定し
たとき、或いはステップST47で変数tmp_halfに設定
されている現在処理対象となっている面の半透明値が上
記のようにして予め求められた閾値shikiichiよりも大
きくないと判定したときは、ステップST41の処理に
戻る。そして、画像を格納すべき画素がもうない場合に
は、ステップST41での判定結果がNoとなり、格納
処理を終了して、メインルーチン(図3)の処理に復帰
する。
【0068】図6は、ステップST5の表示処理を詳細
に示すフローチャートである。この表示処理は、格納処
理で画像バッファに格納された画像同士を半透明処理し
て、表示装置3に表示するための画像を生成するための
処理である。
【0069】処理が開始すると、CPU11は、まず、
処理ドット数を数えるための変数dotcountに“0”を代
入する(ステップST51)。次に、CPU11は、変
数dotcountの値が画面×軸方向の大きさを示すDisplay_
ENDの値よりも小さいかどうかを判定する(ステップS
T52)。
【0070】変数dotcountの値が画面×軸方向の大きさ
を示すDisplay_ENDの値よりも小さいと判定したとき
は、CPU11は、現在の処理面数を示す変数tmpに最
大面数max_menの値を代入し、出力する色値outcolorに
透明色のデータ(color[0])を代入する(ステップST
53)。
【0071】次に、CPU11は、数式3の演算を行っ
て半透明処理を行うと共に、現在の処理面数を示す変数
tmpの値を“1”だけ減算する(ステップST54)。
【数3】outcolor = half[tmp][dotcount] * color[pal
ette[tmp][dotcount]]+ (1 - half[tmp][dotcount]) *
outcolor
【0072】次に、CPU11は、現在の処理面数を表
す変数tmpの値が“0”よりも大きいかどうかを判定す
る(ステップST55)。大きいと判定したときは、ス
テップST54の処理に戻る。一方、大きくないと判定
したときは、変数dotcountで示される現在の表示装置3
のドットに対してoutcolorで示される色データを出力す
ると共に、変数dotcountの値を“1”だけ加算する(ス
テップST56)。そして、ステップST52の処理に
戻る。
【0073】そして、ステップST52で変数dotcount
の値が画面×軸方向の大きさを示すDisplay_ENDの値よ
りも小さくないと判定したときに、このフローチャート
の処理を終了し、メインルーチン(図3)の処理に復帰
する。
【0074】以下、上記のフローチャートに従って行わ
れる、この実施の形態にかかるグラフィックス処理、特
に半透明画像の処理について、図7を参照して説明す
る。ここで、用意されている画像バッファは2つだけで
あるものとする。また、処理対象となっている画像は、
後面から画像Z1、Z2、Z3の3枚であり、それぞれ
の半透明率は、γ、β、αであるものとする。このう
ち、半透明率βは、0に近い値をとり、半透明率γは、
閾値を越えているものとする。また、画像Z1、Z2、
Z3の3つが本来重ね合わされるべき点をP点とする。
【0075】この例において、3枚の画像Z1、Z2、
Z3をすべて重ね合わせて半透明処理を行ったときに、
表示装置に本来表示されるべき画像のP点における色co
lor_Pは、次の数式4で表される。
【数4】color_P = αcolor_Z3 + (1-α)(βcolor_Z2 +
(1-β)γcolor_Z1) 但し、color_Z*は、画像Z*のP点における色を表す。
【0076】しかしながら、画像バッファは2つしかな
いので、2面の画像しか重ね合わせて表示することがで
きない。前面から2番目の画像Z2の半透明率βは、0
に近く、閾値を下回っている。一方、最後面の画像Z3
の半透明率γは、閾値を上回っている。このため、2つ
の画像バッファに格納される画像は、最前面の画像Z3
と、最後面の画像Z1となる。
【0077】こうして2つの画像バッファに格納された
2枚の画像Z1、Z3を重ね合わせて半透明処理を行っ
たときに、表示装置に実際に表示される画像Z5のP点
における色color_P'は、次の数式5で表される。
【数5】color_P' = αcolor_Z3 + (1-α)γcolor_Z1
【0078】この場合、本来表示されるべき色との間
に、(1-α)β(color_Z2 - γcolor_Z1)の誤差を生じ
る。しかしながら、β≒0であるため、この誤差の値も
ほぼ0となる。従って、この例におけるグラフィックス
処理では、表示装置に実際に表示される画像のP点にお
ける色color_P'と、本来表示されるべき色color_Pとの
間に大きな誤差が生じることはない。
【0079】以上説明したように、この実施の形態にか
かるグラフィックス処理では、画像バッファの数よりも
枚数の多い画像を重ね合わせて表示するときに、前面に
ある半透明率の小さい画像よりも、後面にある半透明率
の大きな、表示される画像の色への影響が大きい画像が
画像バッファに格納されることとなる。このため、本来
表示装置に表示されるべき画像の色と、実際に表示装置
に表示される画像の色との間の誤差を、従来のグラフィ
ックス処理に比べて小さくすることができる。
【0080】なお、この実施の形態にかかるグラフィッ
クス処理は、専用のハードウェア(グラフィックスエン
ジン)を用いて実行することができる。図8は、この実
施の形態にかかるグラフィック処理を実現するためのグ
ラフィックスエンジンの構成を示すブロック図である。
【0081】図示するように、このグラフィックスエン
ジンは、3つの画像バッファB11〜B13を有する。
制御部B4は、グラフィックス処理と連動した他の処理
を行うCPU B1からの依頼により、このグラフィッ
クスエンジン内の各部を制御する。閾値レジスタB25
は、CPU B1により予め計算された閾値shikiichiを
格納する。
【0082】グラフィックスエンジン部B3は、制御部
B4からの制御信号に従って、画像バッファB11〜B
13に格納すべき画像データ、キャラクタROM B2
のROMアドレス、エンジン出力画像WEB、出力画像
アドレスを出力する。比較器B5〜B7は、それぞれyu
senの値を比較し、その結果に基づいて優先切り替え信
号を出力する。比較器B26は、画像の半透明率を閾値
レジスタB25に設定されている閾値shikiichiと比較
する。
【0083】αブレンディング演算器B21は、フリッ
プフロップ(F/F)B16〜B20、B23、B24
から出力された色データ、半透明率のデータに所定の演
算を施して半透明処理をし、演算結果の色データを外部
のディスプレイ装置B22に供給する。このグラフィッ
クスエンジンは、その他に、キャラクタROM B2、
パレットRAM B15、デマルチプレクサB8、B
9、セレクタB10、B14、フリップフロップB16
〜B20、B23、B24、AND回路B27を備え
る。
【0084】このグラフィックスエンジンでグラフィッ
クス処理を行う場合、まず、システムリセット信号S2
をアクティブにし、制御部B4をリセットする。次に、
CPU B1から制御部B4にCPU_I/F信号S1
を出力し、ステップST1に示したような各種の設定
を、制御部B4及びグラフィックスエンジン部B3に対
して行う。このとき、CPU B1からのCPU_I/
F信号S1により、制御部B4は、閾値設定信号S44
を出力して閾値レジスタB25に予め求めた閾値shikii
chiを設定する。さらに、制御部B4からディスプレイ
装置B22に対して、ステップST2で示したような同
期信号S12を出力する。これにより、ステップST3
で示したようなイニシャライズ処理が開始する。
【0085】イニシャライズ処理では、制御部B4は、
イニシャライズ信号S40をアクティブにして、デマル
チプレクサB8、B9及びセレクタB10からempty信
号を出力させる。グラフィックスエンジン部B3は、制
御部B4からの制御信号S6に従って格納画像WEB
S10をアクティブにし、格納画像アドレスS9を順次
インクリメントさせて、画像バッファB11〜B13に
用意されているすべてのpalette[i][j]、yusen[i][j]、
half[i][j]にemptyを設定する。こうしてイニシャライ
ズ処理が終了すると、次にステップST4で示したよう
な格納処理が開始する。
【0086】格納処理では、制御部B4は、CPU B
1から出力されたCPU_I/F信号S1に従って、表
示する図形に必要なパラメータとしてエンジン制御信号
S6をグラフィックスエンジン部B3に出力する。グラ
フィックスエンジン部B3は、エンジン制御信号S6で
与えられたパラメータよりROMアドレスS3を算出
し、キャラクタROM B2に出力する。キャラクタR
OM B2は、グラフィックスエンジン部B3からのR
OMアドレスS3に従って、ROMデータS4をグラフ
ィックスエンジン部B3に返却する。
【0087】グラフィックスエンジン部B3は、グラフ
ィックス処理の開始時における設定値及び返却されたR
OMデータS4に従って、画像データS5を画像バッフ
ァB11〜B13に、エンジン出力画像WEB S7及
びエンジン出力画像アドレスS8を制御部B4に、順次
出力する。ここで、画像データS5は、palette、yuse
n、halfの3要素で構成されるデータである。
【0088】次に、比較器B5は、画像データS5に含
まれるyusenと、画像バッファB11から出力されてい
る画像バッファ出力信号S28に含まれるyusenとを比
較し、その比較結果に応じた優先切り替え信号S21を
出力する。デマルチプレクサB8は、優先切り替え信号
S21に従って、画像データS5と画像バッファ出力信
号S28のうちの優先順位の高い方を画像バッファ入力
信号S29として、低い方を次画像バッファ比較データ
S41として出力する。ここで、画像バッファB11
は、画像バッファ入力信号S29を格納する。
【0089】次に、比較器B6は、次画像バッファ比較
データS41に含まれるyusenと、画像バッファB12
から出力されている画像バッファ出力信号S27に含ま
れるyusenとを比較し、その比較結果に応じた優先切り
替え信号S22を出力する。デマルチプレクサB9は、
優先切り替え信号S22に従って、次画像バッファ比較
データS41と画像バッファ出力信号S27のうちの優
先順位の高い方を画像バッファ入力信号S30として、
低い方を次画像バッファ比較データS42として出力す
る。ここで、画像バッファB12は、画像バッファ入力
信号S30を格納する。
【0090】次に、比較器B7は、次画像バッファ比較
データS42に含まれるyusenと、画像バッファB13
から出力されている画像バッファ出力信号S26に含ま
れるyusenとを比較し、その比較結果に応じた優先切り
替え信号S23を出力する。一方、比較器B26は、次
画像バッファ比較データS42に含まれるhalfと、閾値
レジスタB25に設定されている閾値shikiichiとを比
較し、その比較結果に応じた半透明切り替え信号S24
を出力する。AND回路B27は、優先切り替え信号S
23と半透明切り替え信号S24との論理和をとり、そ
の結果を取り替え信号S25として出力する。
【0091】セレクタB10は、取り替え信号S25に
従って、次画像バッファ比較データS42の方が優先順
位が高く、且つその半透明率halfが閾値shikiichより高
い場合に、これを画像バッファ入力信号S31として出
力し、画像バッファB13に格納する。それ以外の場合
は、画像バッファ出力信号S26を再び画像バッファB
13に格納する。以上の動作を、すべての画素、すべて
の面の画像に対して繰り返す。こうして格納処理が終了
すると、次にステップST5で示したような表示処理が
開始する。
【0092】表示処理では、制御部B4は、画像バッフ
ァB11〜B13に対して与える格納画像アドレスS9
を0から順にインクリメントしていき、画像バッファB
11〜B13から1画素単位で順次画像データ(画像バ
ッファ出力信号S26〜S28)を出力させていく。セ
レクタB14は、画像バッファB11〜B13からそれ
ぞれ出力された画像バッファ出力信号S26〜S28か
らそれぞれパレットアドレスS33〜S35を抽出し、
制御部B4からのパレット制御信号S11に従って、パ
レットアドレスS32をパレットRAM B15に順次
出力する。
【0093】パレットRAM B15は、供給されたパ
レットアドレスS32に従って色データS36を出力
し、制御部B4からのパレット制御信号S11に従っ
て、フリップフロップB16、B18、B20にそれぞ
れ順次蓄積させる。また、制御部B4からのパレット制
御信号S11に従って、画像バッファB11〜B13か
ら出力された画像バッファ出力信号S26〜S28のう
ちの半透明率S37、S38、S43を、フリップフロ
ップB17、B19、B23にそれぞれ順次蓄積させ
る。さらに、制御部B4からのパレット制御信号S11
に従って、パレットRAM B15に設定されている透
明色の色データS45を、フリップフロップB24に順
次蓄積させる。
【0094】そして、αブレンディング演算器B21
は、フリップフロップB16、B18、B20にそれぞ
れ蓄積された色データ、フリップフロップB17、B1
9、B23にそれぞれ蓄積された半透明率、及びフリッ
プフロップB24に蓄積された透明色の色データに対し
て順次所定の演算を施して、半透明処理を行う。αブレ
ンディング演算器B21は、この演算結果を表示する画
像の色データB39としてディスプレイ装置B22に順
次出力する。こうしてすべてのアドレスに対して色デー
タB39が出力され、表示処理が終了すると、制御部B
4から再び同期信号S12を出力し、さらにイニシャラ
イズ処理を行う。
【0095】[第2の実施の形態]この実施の形態にか
かるグラフィックス処理で適用されるコンピュータシス
テムの構成は、第1の実施の形態のものと同じである。
但し、この実施の形態におけるグラフィックス処理で
は、閾値を予め計算してテーブル等に保存しておくので
はなく、格納処理を行いながら閾値を演算して決定して
いく。従って、この実施の形態では、グラフィックス処
理に先だって閾値決定処理を行う必要がなく、また、ス
テップST4の格納処理が第1の実施の形態のもの(図
5)と異なる。
【0096】図9は、この実施の形態における格納処理
を示すフローチャートである。この格納処理において、
ステップST61〜ST66までの処理は、図5のステ
ップST41〜46までの処理と同じである。また、ス
テップST66の判定結果がNoである場合には、ステ
ップST69の処理に進むが、ステップST69の処理
は、図5のステップST48の処理と同じである。
【0097】一方、ステップST66の判定結果がYe
sである場合、すなわち現在の処理面数を示す変数tmp
の値が最大面数max_menの値と等しいと判定したとき
は、CPU11は、半透明値を貯える変数tmp_halfの値
が0.5よりも大きいかどうかを判定する(ステップS
T67)。
【0098】半透明値を貯える変数tmp_halfの値が0.
5よりも大きいと判定したときは、CPU11は、さら
に半透明値を貯える変数tmp_halfの値が (1-tmp_half)
* half[tmp][inp_add]よりも大きいかどうかを判定する
(ステップST68)。半透明値を貯える変数tmp_half
の値が (1-tmp_half) * half[tmp][inp_add]よりも大き
いと判定したときは、前述したステップST69の処理
に進む。
【0099】一方、ステップST67で半透明値を貯え
る変数tmp_halfの値が0.5よりも大きくないと判定し
た場合、或いはステップST68で半透明値を貯える変
数tmp_halfの値が (1-tmp_half) * half[tmp][inp_add]
よりも大きくないと判定したときは、ステップST63
の処理に戻る。
【0100】この実施の形態における格納処理では、第
1の実施の形態のように予めshikiichiの演算を行わな
くても、半透明率が0.5より小さい前面にある画像よ
りも、半透明率が0.5以上の後面にある画像が画像バ
ッファに格納されていくこととなる。
【0101】以上説明したように、この実施の形態にか
かるグラフィックス処理でも、画像バッファの数よりも
枚数の多い画像を重ね合わせて表示するときに、前面に
ある半透明率の小さい画像よりも、後面にある半透明率
の大きな、表示される画像の色への影響が大きい画像が
画像バッファに格納されることとなる。このため、本来
表示装置に表示されるべき画像の色と、実際に表示装置
に表示される画像の色との間の誤差を、従来のグラフィ
ックス処理に比べて小さくすることができる。
【0102】なお、この実施の形態にかかるグラフィッ
クス処理も、専用のハードウェア(グラフィックスエン
ジン)を用いて実行することができる。図10は、この
実施の形態にかかるグラフィック処理を実現するための
グラフィックスエンジンの構成を示すブロック図であ
る。
【0103】このグラフィックスエンジンの構成は、第
1の実施の形態で示した閾値レジスタB25及び比較器
B26の代わりに、デマルチプレクサB30、半透明演
算器B28及び比較器B29を備える点を除いて、第1
の実施の形態で示したものと同じである。
【0104】また、このグラフィックスエンジンでのグ
ラフィックス処理は、イニシャライズ処理において閾値
shikiichiの設定を行わないこと、及び格納処理が異な
ること、の2つを除いて、第1の実施の形態で示したグ
ラフィックスエンジンにおけるものと同じである。
【0105】このグラフィックスエンジンにおける格納
処理において、グラフィックスエンジン部B3から、画
像データS5、エンジン出力画像WEB S7及びエン
ジン出力画像アドレスS8を出力するまでの処理は、第
1の実施の形態で説明したものと同じである。
【0106】次に、比較器B5は、画像データS5に含
まれるyusenと、画像バッファB11から出力されてい
る画像バッファ出力信号S28に含まれるyusenとを比
較し、その比較結果に応じた優先切り替え信号S21を
出力する。デマルチプレクサB8は、優先切り替え信号
S21に従って、画像データS5と画像バッファ出力信
号S28のうちの優先順位の高い方を画像バッファ入力
信号S29として、低い方を次画像バッファ比較データ
S41として出力する。ここで、画像バッファB11
は、画像バッファ入力信号S29を格納する。
【0107】次に、比較器B6は、次画像バッファ比較
データS41に含まれるyusenと、画像バッファB12
から出力されている画像バッファ出力信号S27に含ま
れるyusenとを比較し、その比較結果に応じた優先切り
替え信号S22を出力する。デマルチプレクサB9は、
優先切り替え信号S22に従って、次画像バッファ比較
データS41と画像バッファ出力信号S27のうちの優
先順位の高い方を画像バッファ入力信号S30として、
低い方を次画像バッファ比較データS42として出力す
る。ここで、画像バッファB12は、画像バッファ入力
信号S30を格納する。
【0108】次に、比較器B7は、次画像バッファ比較
データS42に含まれるyusenS18と、画像バッファ
B13から出力されている画像バッファ出力信号S26
に含まれるyusenS19とを比較し、その比較結果に応
じた優先切り替え信号S23を出力する。一方、デマル
チプレクサB30は、デマルチプレクサB30は、次画
像バッファ比較データS42に含まれるhalfS18’
と、画像バッファB13から出力されている画像バッフ
ァ出力信号S26に含まれるhalfS19’とを比較し、
半透明率の高い方を優勢半透明率S49として、低い方
を劣性半透明率S50としてそれぞれ出力する。
【0109】半透明率演算器B28は、デマルチプレク
サB30から出力された優勢半透明率S49及び劣勢半
透明率S50に対して、次の数式6に示す演算を行い、
その結果を半透明演算データS47として出力する。
【数6】半透明演算データ=(1−優勢半透明率×劣勢
半透明率)
【0110】次に、比較器B29は、デマルチプレクサ
B30から出力された優勢半透明率S49と、半透明率
演算器B28から出力された半透明演算データS47と
を比較し、その比較結果に応じた閾値半透明切り替え信
号S48を出力する。AND回路B27は、優先切り替
え信号S23と閾値半透明切り替え信号S48との論理
和をとり、その結果を取り替え信号S25として出力す
る。
【0111】そして、セレクタB10は、取り替え信号
S25に従って、次画像バッファ比較データS42の方
が優先順位が高く、且つその半透明率halfが閾値shikii
chiより高い場合に、これを画像バッファ入力信号S3
1として出力し、画像バッファB13に格納する。それ
以外の場合は、画像バッファ出力信号S26を再び画像
バッファB13に格納する。以上の動作を、すべての画
素、すべての面の画像に対して繰り返す。
【0112】[実施の形態の変形]本発明は、上記の第
1、第2の実施の形態に限られず、種々の変形、応用が
可能である。以下、本発明に適用可能な上記の実施の形
態の変形態様について、説明する。
【0113】上記の第1、第2の実施の形態では、その
グラフィックス処理を実行する専用のグラフィックスエ
ンジンとして、それぞれ図8、図10の構成のものを例
示していた。しかしながら、上記の第1、第2の実施の
形態でのグラフィックス処理を実現できるのであれば、
専用のグラフィックスエンジンの構成は、これらに限る
ものではない。
【0114】上記の第1、第2の実施の形態では、各フ
ローチャートで示したプログラムは、記憶装置12に記
憶され、CPU11がこれを実行するものとしていた。
しかしながら、これらのプログラムは、図11(a)に
示すように、CD−ROM40などのコンピュータ読取
可能な記録媒体に格納して配布し、ディスク読取装置4
で読み取って、記憶装置12に記憶させるものとしても
よい。
【0115】また、これらのプログラムは、図11
(b)に示すように、通信装置5から配信要求をネット
ワーク50を介してサーバ51に送り、サーバ51から
搬送波に重畳されたプログラムデータ信号として通信装
置5が受信し、記憶装置12に記憶させるものとしても
よい。
【0116】さらに、図11(a)に示すようにCD−
ROM40などの記録媒体に格納されて配布されるプロ
グラム、図11(b)に示すようにネットワーク50を
介してサーバ51から配信されるプログラムは、従来例
のグラフィック処理と異なる図2、図5または図9のフ
ローチャートに示すものだけとしてもよい。これによ
り、従来の汎用コンピュータで実行されていたグラフィ
ック処理用のプログラムを、上記第1、第2の実施の形
態で説明したグラフィック処理用のプログラムに変える
ことができる。
【0117】
【発明の効果】以上説明したように、本発明によれば、
表示装置に本来表示されるべき画像の色と実際に表示さ
れる画像の色との誤差を小さくすることができる。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態に適用されるコンピ
ュータシステムの構成を示すブロック図である。
【図2】本発明の第1の実施の形態において、グラフィ
ックス処理に先立って実行される閾値作成処理を示すフ
ローチャートである。
【図3】本発明の第1の実施の形態におけるグラフィッ
クス処理を示すフローチャートである。
【図4】図3のイニシャライズ処理を詳細に示すフロー
チャートである。
【図5】図3の格納処理を詳細に示すフローチャートで
ある。
【図6】図3の表示処理を詳細に示すフローチャートで
ある。
【図7】本発明の第1の実施の形態でのグラフィックス
処理を説明する図である。
【図8】本発明の第1の実施の形態にかかるグラフィッ
クス処理を実現するグラフィックスエンジンの構成を示
すブロック図である。
【図9】本発明の第2の実施の形態における格納処理を
示すフローチャートである。
【図10】本発明の第2の実施の形態にかかるグラフィ
ックス処理を実現するグラフィックスエンジンの構成を
示すブロック図である。
【図11】(a)、(b)は、本発明の実施の形態の変
形例として適用されるコンピュータシステムの構成を示
すブロック図である。
【図12】従来例における格納処理を示すフローチャー
トである。
【図13】従来例のグラフィックス処理を実現するグラ
フィックスエンジンの構成を示すブロック図である。
【図14】従来例でのグラフィックス処理を説明する図
である。
【符号の説明】
1 コンピュータ 2 入力装置 3 表示装置 4 ディスク読取装置 5 通信装置 11 CPU 12 記憶装置 40 CD−ROM 50 ネットワーク 51 サーバ B1 CPU B2 キャラクタROM B3 グラフィックスエンジン部 B4 制御部 B5〜B7 比較器 B8、B9 デマルチプレクサ B10 セレクタ B11〜B13 画像バッファ B14 セレクタ B15 パレットRAM B16〜B19 フリップフロップ B21 αブレンディング演算器 B22 ディスプレイ装置 B23、B24 フリップフロップ B25 閾値レジスタ B26 比較器 B27 AND回路 B28 半透明演算器 B29 比較器 B30 デマルチプレクサ
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G09G 5/36

Claims (8)

    (57)【特許請求の範囲】
  1. 【請求項1】複数の、一定の優先順位及び一定の半透明
    率を有する画像をカスケード接続された複数の画像バッ
    ファに前記優先順位に応じて格納し、前記複数の画像バ
    ッファに格納された画像を処理して表示装置に重ね合わ
    せ表示処理するグラフィックス処理装置であって、 入力しようとする前記画像の優先順位が入力しようとす
    る前記画像バッファ内の画像の優先順位より大きい場合
    は前記入力画像を前記画像バッファ内に格納し、前記画
    像バッファ内の前記入力画像と重なる部分の画像は次段
    の画像バッファに送り、そうでない場合は前記入力画像
    を次段の画像バッファに送り、前記入力しようとする画
    像バッファが最終段の画像バッファである場合は、前記
    入力画像の前記半透明率が所定の閾値に等しいか小さい
    場合には前記画像バッファ内の画像をそのまま残す格納
    手段と、 前記格納手段によって前記複数の画像バッファにそれぞ
    れ格納された画像を半透明処理して、表示装置に表示す
    るための表示データを生成する表示処理手段と、 を備えることを特徴とするグラフィックス処理装置。
  2. 【請求項2】前記複数の画像バッファを初期化するのに
    先立って、重ね合わせ表示処理の対象となっている画像
    の半透明率から閾値を求める手段と、 前記閾値を格納する手段と、を更に備える、 ことを特徴とする請求項1に記載のグラフィックス処理
    装置。
  3. 【請求項3】複数の、一定の優先順位及び一定の半透明
    率を有する画像を前記優先順位に応じて格納するカスケ
    ード接続された複数の画像バッファと、 前記複数の画像バッファに格納されている画像を半透明
    処理する演算装置と、 前記複数の画像バッファへの画像の格納、及び前記演算
    装置による半透明処理を制御する制御装置とを備え、 前記制御装置は、 入力しようとする前記画像の優先順位が入力しようとす
    る前記画像バッファ内の画像の優先順位より大きい場合
    は前記入力画像を前記画像バッファ内に格納し、前記画
    像バッファ内の前記入力画像と重なる部分の画像は次段
    の画像バッファに送り、そうでない場合は前記入力画像
    を次段の画像バッファに送り、前記入力しようとする画
    像バッファが最終段の画像バッファである場合は、前記
    入力画像の前記半透明率が所定の閾値に等しいか小さい
    場合には前記画像バッファ内の画像をそのまま残し、 前記演算装置は、 前記制御装置によって前記複数の画像バッファにそれぞ
    れ格納された画像を半透明処理して、表示装置に重ね合
    わせ表示するための表示データを生成する、 ことを特徴とするグラフィックス処理装置。
  4. 【請求項4】前記制御装置は、 前記複数の画像バッファを初期化するのに先立って、重
    ね合わせ表示処理の対象となっている画像の半透明率か
    ら閾値を求める手段と、 前記閾値を格納する手段と、を更に備える、 ことを特徴とする請求項3に記載のグラフィックス処理
    装置。
  5. 【請求項5】複数の、一定の優先順位及び一定の半透明
    率を有する画像をカスケード接続された複数の画像バッ
    ファに前記優先順位に応じて格納し、前記複数の画像バ
    ッファに格納された画像を処理して表示装置に重ね合わ
    せ表示するための画像データを生成するグラフィックス
    処理方法であって、 入力しようとする前記画像の優先順位が入力しようとす
    る前記画像バッファ内の画像の優先順位より大きい場合
    は前記入力画像を前記画像バッファ内に格納し、前記画
    像バッファ内の前記入力画像と重なる部分の画像は次段
    の画像バッファに送り、そうでない場合は前記入力画像
    を次段の画像バッファに送り、前記入力しようとする画
    像バッファが最終段の画像バッファである場合は、前記
    入力画像の前記半透明率が所定の閾値に等しいか小さい
    場合には前記画像バッファ内の画像をそのまま残す格納
    ステップと、 前記格納ステップによって前記複数の画像バッファにそ
    れぞれ格納された画像を半透明処理して、表示装置に表
    示するための表示データを生成する表示処理ステップ
    と、 を備えることを特徴とするグラフィックス処理方法。
  6. 【請求項6】前記複数の画像バッファを初期化するのに
    先立って、重ね合わせ表示処理の対象となっている画像
    の半透明率から閾値を求めるステップと、 前記閾値を格納するステップと、を更に備える、 ことを特徴とする請求項5に記載のグラフィックス処理
    方法。
  7. 【請求項7】複数の、一定の優先順位及び一定の半透明
    率を有する画像をカスケード接続された複数の画像バッ
    ファに前記優先順位に応じて格納し、前記複数の画像バ
    ッファに格納された画像を処理して表示装置に重ね合わ
    せ表示するための画像データを生成するためのプログラ
    ムを記録したコンピュータ読み取り可能な記録媒体であ
    って、 入力しようとする前記画像の優先順位が入力しようとす
    る前記画像バッファ内の画像の優先順位より大きい場合
    は前記入力画像を前記画像バッファ内に格納し、前記画
    像バッファ内の前記入力画像と重なる部分の画像は次段
    の画像バッファに送り、そうでない場合は前記入力画像
    を次段の画像バッファに送り、 前記入力しようとする画像バッファが最終段の画像バッ
    ファである場合は、前記入力画像の前記半透明率が所定
    の閾値に等しいか小さい場合には前記画像バッファ内の
    画像をそのまま残す格納ステップと、 前記格納ステップによって前記複数の画像バッファにそ
    れぞれ格納された画像を半透明処理して、表示装置に表
    示するための表示データを生成する表示処理ステップ
    と、 をコンピュータに実行させるためのプログラムを記録
    ことを特徴とするコンピュータ読み取り可能な記録媒
    体。
  8. 【請求項8】前記複数の画像バッファを初期化するのに
    先立って、重ね合わせ表示処理の対 象となっている画像
    の半透明率から閾値を求めるステップと、 前記閾値を格納するステップと、をさらに備える、 ことを特徴とする請求項7に記載の記録媒体。
JP23480799A 1999-08-20 1999-08-20 グラフィックス処理装置、方法及び記録媒体 Expired - Fee Related JP3394473B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP23480799A JP3394473B2 (ja) 1999-08-20 1999-08-20 グラフィックス処理装置、方法及び記録媒体
DE60012439T DE60012439T2 (de) 1999-08-20 2000-08-14 Gerät zur Verarbeitung von Grafikdaten
EP00117544A EP1079366B1 (en) 1999-08-20 2000-08-14 Graphics processing apparatus
TW089116440A TW468147B (en) 1999-08-20 2000-08-15 Graphics processing apparatus
KR1020000047711A KR100359359B1 (ko) 1999-08-20 2000-08-18 그래픽 처리 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP23480799A JP3394473B2 (ja) 1999-08-20 1999-08-20 グラフィックス処理装置、方法及び記録媒体

Publications (2)

Publication Number Publication Date
JP2001056676A JP2001056676A (ja) 2001-02-27
JP3394473B2 true JP3394473B2 (ja) 2003-04-07

Family

ID=16976710

Family Applications (1)

Application Number Title Priority Date Filing Date
JP23480799A Expired - Fee Related JP3394473B2 (ja) 1999-08-20 1999-08-20 グラフィックス処理装置、方法及び記録媒体

Country Status (5)

Country Link
EP (1) EP1079366B1 (ja)
JP (1) JP3394473B2 (ja)
KR (1) KR100359359B1 (ja)
DE (1) DE60012439T2 (ja)
TW (1) TW468147B (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6110807B2 (ja) * 2014-03-27 2017-04-05 株式会社ジオ技術研究所 画像処理装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2063616B (en) * 1979-11-16 1984-06-20 Quantel Ltd Multiple picture image manipulation
US5351067A (en) * 1991-07-22 1994-09-27 International Business Machines Corporation Multi-source image real time mixing and anti-aliasing
GB2287627B (en) * 1994-03-01 1998-07-15 Vtech Electronics Ltd Graphic video display system including graphic layers with sizable,positionable windows and programmable priority

Also Published As

Publication number Publication date
DE60012439T2 (de) 2005-08-04
EP1079366A3 (en) 2003-02-05
KR100359359B1 (ko) 2002-10-31
EP1079366A2 (en) 2001-02-28
KR20010021344A (ko) 2001-03-15
EP1079366B1 (en) 2004-07-28
JP2001056676A (ja) 2001-02-27
DE60012439D1 (de) 2004-09-02
TW468147B (en) 2001-12-11

Similar Documents

Publication Publication Date Title
JP3678428B2 (ja) クロマキー、透明性、およびフォグ動作を行う方法および装置
JP2002027260A (ja) カラー画像のグレー変換方法および装置
US5903276A (en) Image generating device with anti-aliasing function
JP2003288071A (ja) 画像処理装置および半導体装置
JPS62288984A (ja) ビデオ表示装置
WO2001055969A1 (fr) Systeme de jeu et procede de creation d'image
US10074193B2 (en) Controlled dynamic detailing of images using limited storage
JPH0816776A (ja) 平滑化処理回路を有するグラフィック表示回路
JP3394473B2 (ja) グラフィックス処理装置、方法及び記録媒体
JP3580682B2 (ja) 画像処理装置および方法
JP3330030B2 (ja) データ処理装置
JP3394474B2 (ja) グラフィックス処理装置、方法及び記録媒体
JP4100945B2 (ja) 図形描画装置
JP2001136412A (ja) 複数映像表示装置のガンマ補正回路
JP2002092631A (ja) ゲームシステム、プログラム及び情報記憶媒体
JP4200469B2 (ja) 画像処理装置及び画像処理方法
JP3701557B2 (ja) 画像表示制御方法及び装置、並びにコンピュータ読取可能な記録媒体
JP4990437B2 (ja) スクリーンに映像を表示するシステム
JP3598575B2 (ja) 画像制御装置
JP3250867B2 (ja) 画像処理装置
JP3375069B2 (ja) 描画処理装置
JP3439407B2 (ja) 画像処理装置及び画像処理方法
JP3428089B2 (ja) 画像表示処理装置
JP2003008936A (ja) 画像信号処理装置
JPH10161637A (ja) 画像表示装置および画像表示方法

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees