WO2012168984A1 - ウィンドウ合成装置 - Google Patents

ウィンドウ合成装置 Download PDF

Info

Publication number
WO2012168984A1
WO2012168984A1 PCT/JP2011/003313 JP2011003313W WO2012168984A1 WO 2012168984 A1 WO2012168984 A1 WO 2012168984A1 JP 2011003313 W JP2011003313 W JP 2011003313W WO 2012168984 A1 WO2012168984 A1 WO 2012168984A1
Authority
WO
WIPO (PCT)
Prior art keywords
window
pixel
display
drawn
control unit
Prior art date
Application number
PCT/JP2011/003313
Other languages
English (en)
French (fr)
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 PCT/JP2011/003313 priority Critical patent/WO2012168984A1/ja
Priority to US13/984,996 priority patent/US20130321449A1/en
Priority to JP2013519242A priority patent/JP5744197B2/ja
Priority to CN201180071556.4A priority patent/CN103608858A/zh
Priority to DE112011105323.1T priority patent/DE112011105323T5/de
Publication of WO2012168984A1 publication Critical patent/WO2012168984A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/50Image enhancement or restoration using two or more images, e.g. averaging or subtraction
    • 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/14Display of multiple viewports
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • 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
    • 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

Definitions

  • the present invention relates to a window composition apparatus that composes and draws a plurality of windows.
  • a window is generated by drawing a graphic or font in a rectangular area.
  • a technique for generating a display window by combining a plurality of generated windows that have been drawn is known. According to this technology, when an update occurs in any of a plurality of drawn windows necessary for generating a display window, a display window can be generated by redrawing only the window that has been updated. Drawing is possible.
  • a stencil buffer is used to grasp the masking of objects such as graphics or fonts to be drawn or the context between windows.
  • the stencil buffer makes it possible to control, in graphics units, an area that does not need to be drawn due to overlapping objects.
  • this stencil buffer when any of the drawn windows necessary to generate the display window is updated, only the updated window is redrawn, and only this redrawn window is displayed. Since the display window can be generated by combining the two, the drawing can be performed at a higher speed than the above-described method.
  • Patent Document 1 discloses a window composition device capable of speeding up drawing by using several planes called graphics control planes in addition to a stencil buffer.
  • anti-aliasing processing may be performed in order to express the outline of an object smoothly. Since digital graphics cannot be drawn more finely than a pixel unit, jaggedness called jaggy occurs in the outline of an object.
  • Anti-aliasing is a process of dividing a pixel into sub-pixels to calculate the coverage (the ratio that the object covers the pixel) and drawing the blended background color and object color as the drawing color. .
  • the present invention has been made to solve the above-described problems, and an object of the present invention is to provide a window composition device capable of generating a high-quality display window at high speed.
  • the window composition device has a window control unit for adding one window number to a pixel for each window, and a two-dimensional display for composing a drawn window including a pixel to which a window number is added by the window control unit into a display window.
  • a drawing engine and a display control unit that displays a display window synthesized by the two-dimensional drawing engine are provided.
  • the window composition device according to the present invention can generate a high-quality display window at high speed.
  • FIG. 1 is a block diagram showing a configuration of an image composition device including a window composition device according to Embodiment 1 of the present invention.
  • FIG. It is a figure for demonstrating the drawing of the window performed in the window composition apparatus concerning Embodiment 1 of this invention. It is a figure for demonstrating the synthesis
  • FIG. 1 is a block diagram showing a configuration of an image composition apparatus including a window composition apparatus according to Embodiment 1 of the present invention.
  • the image composition device includes a window composition device 1, a CPU (Central Processing Unit) 2, a VRAM (Video Random Access Memory) 10, and a display device 11.
  • a CPU Central Processing Unit
  • VRAM Video Random Access Memory
  • the window composition device 1 composes and draws a plurality of windows. Details of the window composition device 1 will be described later.
  • the CPU 2 is composed of, for example, a general-purpose microcomputer, and controls the entire window composition device 1 by setting drawing information for the window composition device 1.
  • the VRAM 10 is a frame buffer that stores intermediate results of drawing and drawing results sent from the window composition device 1.
  • the display device 11 performs display according to the display data sent from the window composition device 1.
  • the window composition device 1 includes a CPU control unit 3, a two-dimensional (2D) drawing engine 4, a vector engine 5, a pixel calculation unit 6, a window control unit 7, a VRAM control unit 8, and a display control unit 9.
  • the CPU control unit 3 decodes an instruction sent from the CPU 2 and performs a two-dimensional drawing engine 4, a vector engine 5, a pixel calculation unit 6, a window control unit 7, which are necessary for performing window synthesis as a target of the instruction, Various information is set to the VRAM control unit 8 and the display control unit 9, and these are controlled.
  • the two-dimensional drawing engine 4 performs two-dimensional graphics drawing such as BitBLT (bit blockFtransfer) or Fill according to control from the CPU control unit 3.
  • the vector engine 5 is a bitmap in which an image is expressed as an enumeration of colored pixels from data expressed as coordinates of points and parameters of line or surface equations connecting them and drawing information such as fills or special effects. Convert to data.
  • the pixel operation unit 6 performs pixel operations such as a color key test, an ⁇ test, a color transform, an ⁇ blend, and dithering on the pixel.
  • the window control unit 7 controls the window number.
  • the VRAM control unit 8 centrally manages access to the VRAM 10 by each component of the window composition device 1.
  • the display control unit 9 reads display data from the VRAM 10 via the VRAM control unit 8 and sends the display data to the display device 11.
  • the CPU 2, VRAM 10, and display device 11 are provided separately from the window composition apparatus 1, but they can be configured integrally with the window composition apparatus 1.
  • the operation of the window composition apparatus 1 configured as described above will be described.
  • the CPU control unit 3 activates the two-dimensional drawing engine 4 and the vector engine 5 according to a command sent from the CPU 2 and draws a plurality of windows.
  • the drawing data generated by this drawing is stored in the VRAM 10 via the VRAM control unit 8.
  • the window control unit 7 draws a window, it adds one window number to the pixel to be drawn in window units.
  • the two-dimensional drawing engine 4 When generating the display window, the two-dimensional drawing engine 4 reads the drawn window stored in the VRAM 10 and synthesizes only the pixel to which the window number is added into the display window. At this time, a blend flag indicating that the pixel is subject to antialiasing processing is added to the pixel subject to antialiasing processing.
  • the two-dimensional drawing engine 4 reads the updated drawn window from the VRAM 10, and the window number added to the display window pixel and the drawn window pixel are displayed.
  • the window number added to is compared, and the pixel value is updated only when they match. In this case, only the pixels appearing on the display surface among the pixels of the window in which the update has occurred are to be recombined into the display window.
  • a blend process is performed on pixels to which a blend flag is added among pixels having the same window number.
  • FIG. 2 is a diagram for explaining window drawing performed in the window composition apparatus 1.
  • a large rectangle indicates the entire window, and a small rectangle indicates a pixel.
  • the numbers in the small rectangle indicate the window number of each pixel.
  • the window number of all pixels is “0”.
  • the window number of the pixels constituting the window to be drawn are updated.
  • the same window number is added to each window to be drawn.
  • the window number of window 1 is “1”. Therefore, the window number of the drawn pixel is “1”.
  • FIG. 3 is a view for explaining display window composition performed in the window composition apparatus 1.
  • FIG. 4 is a flowchart showing display window composition processing performed in the window composition device 1. In the synthesis of the display window, first, the window 1 is synthesized with the display window by BitBLT. Next, the window 2 (not shown) is combined with the display window by BitBLT to complete the display window. In this BitBLT, the flowchart shown in FIG. 4 is applied to all pixels.
  • the SRC pixel is read (step ST11). That is, an SRC (source) pixel that is a pixel of a drawn window that is a transfer source of BitBLT is read from the VRAM (frame buffer) 10.
  • step ST12 it is checked whether or not the window number (drawing SW) of the pixel read in step ST11 matches the window number (SW) assigned to the window in BitBLT (step ST12). If it is determined in step ST12 that they do not match, the pixel does not need to be drawn, so the sequence proceeds to step ST17.
  • step ST13 it is checked whether the ⁇ value is “1” (step ST13). That is, it is checked whether or not the ⁇ value that is the transparency information of the pixel read out in step ST11 is “1”. If it is determined in step ST13 that the ⁇ value is “1”, the sequence proceeds to step ST16. That is, in the anti-aliasing process, when the ⁇ value is “1”, it is not necessary to perform the ⁇ blend of the background color and the drawing color, so that the SRC pixel value is directly drawn in the display window as the DST (destination) pixel value.
  • step ST14 blend synthesis is performed (step ST14). That is, the background color and the drawing color are blended and synthesized by the anti-aliasing process, and the DST pixel value is calculated.
  • step ST15 the window number is updated (step ST15). That is, the window number is updated in order to add a blend flag to the pixel value that has undergone blend synthesis. In the example illustrated in FIG. 3, the window number is updated to “3” in order to add a blend flag to the pixels that have undergone blend synthesis. Thereafter, the sequence proceeds to step ST16.
  • step ST16 DST pixel writing is performed. That is, the DST pixel value is drawn on the display window. Thereafter, the sequence proceeds to step ST17.
  • step ST17 it is checked whether or not the processing for all the pixels has been completed. If it is determined in step ST17 that the processing for all the pixels has not been completed, the sequence returns to step ST11 and the above-described processing is repeated. On the other hand, when it is determined that the processing for all the pixels has been completed, the display window composition processing ends.
  • Dr ′ Sr ⁇ ⁇ + Dr ⁇ (1 ⁇ )
  • Dg ′ Sg ⁇ ⁇ + Dg ⁇ (1 ⁇ )
  • Db ′ Sb ⁇ ⁇ + Db ⁇ (1 ⁇ ) here, Dr: DST pixel R component, Dg: DST pixel G component, Db: DST pixel B component, Sr: SRC pixel R component, Sg: SRC pixel G component, Sb: SRC pixel B component, Dr ′: DST pixel R component (after calculation), Dg ′: DST pixel G component (after calculation), Db ′: DST pixel B component (after calculation).
  • FIG. 5 is a diagram for explaining recombination of display windows performed in the window composition device 1, and shows an example in which the window 1 is updated among a plurality of windows synthesized as display windows. .
  • FIG. 6 is a flowchart showing display window recombination processing performed in the window composition apparatus 1.
  • the SRC pixel is read (step ST21). That is, the SRC pixel that is the pixel of the window 1 is read from the VRAM (frame buffer) 10.
  • step ST23 DST pixel value reading is performed (step ST23). That is, the DST pixel value that is the pixel value of the display window is read.
  • the window number (DW) of the DST pixel matches the window number (BW) to which the blend flag is added, that is, whether the blend flag is added to the DST pixel (step ST24).
  • the pixel to which the blend flag is added is a pixel whose window number is “3”.
  • step ST24 If it is determined in this step ST24 that a blend flag is added to the DST pixel, then a blending process is performed (step ST25). That is, the background color and the drawing color are blended and synthesized by the anti-aliasing process, and the DST pixel value is calculated. Thereafter, the sequence proceeds to step ST27.
  • step ST24 if it is determined in step ST24 that the blend flag is not added to the DST pixel, it is then checked whether the window number (DW) of the DST pixel matches the window number (SW) of the drawn window. (Step ST26). In the case of the example shown in FIG. 5, it is checked whether the window number of the pixel of the display window is “1”.
  • step ST26 If it is determined in step ST26 that they do not match, the drawing is canceled and the sequence proceeds to step ST28. On the other hand, if it is determined in step ST26 that they match, the pixel value of window 1 is set as the DST pixel value, and the sequence proceeds to step ST27.
  • step ST27 DST pixel value writing is performed. That is, DST pixels are drawn on the display window. Thereafter, the sequence proceeds to step ST28.
  • step ST28 it is checked whether or not the processing for all the pixels has been completed. If it is determined in step ST28 that the processing for all the pixels has not been completed, the sequence returns to step ST21 and the above-described processing is repeated. On the other hand, if it is determined that the processing for all the pixels has been completed, the display window recombination processing ends.
  • Db ′ Db + (Sb′ ⁇ Sb) ⁇ ⁇ here
  • the background color is calculated by reverse blending, and the background color and object color are blended again to obtain the correct drawing color. Can be calculated.
  • FIG. 7 is a diagram for explaining a configuration of pixel values used in the window composition device 1.
  • a common pixel format used today is the ARGB format.
  • A is an ⁇ value
  • R, G, and B are color values, which indicate red, blue, and green color components, respectively.
  • the pixel value When the pixel value is in the ARGB format, it is necessary to generate an address in which the window number (W) is stored separately from the address generation of the ⁇ value and the color value (ARGB).
  • W window number
  • ARGB color value
  • the configuration of the first embodiment of the present invention by applying the WARGB format, it is possible to generate an address once and to facilitate the window composition process.
  • any component of the embodiment can be modified or any component of the embodiment can be omitted within the scope of the invention.
  • the window composition device is suitable for generating a personal computer screen whose display screen is composed of a plurality of windows, a device for performing superimposed display of images, or a display screen for embedded devices.
  • 1 window composition device 2 CPU, 3 CPU control unit, 4 2D rendering engine, 5 vector engine, 6 pixel calculation unit, 7 window control unit, 8 VRAM control unit, 9 display control unit, 10 VRAM, 11 display device.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Image Generation (AREA)

Abstract

 ウィンドウ単位で1つのウィンドウ番号をピクセルに付加するウィンドウ制御部7と、ウィンドウ制御部7によってウィンドウ番号が付加されたピクセルを含む描画済みウィンドウを表示ウィンドウに合成する2次元描画エンジン4と、2次元描画エンジン4により合成された表示ウィンドウを表示させる表示制御部9を備え、2次元描画エンジン4は、表示ウィンドウを構成する複数の描画済みウィンドウのうちの1つに更新が発生した際に、更新が発生したウィンドウのピクセルのうち、アンチエイリアス処理の対象となるピクセルである旨を示すブレンドフラグが付加されているピクセルから元の背景色を算出してアンチエイリアス処理を行い、表示ウィンドウに再合成する。

Description

ウィンドウ合成装置
 この発明は、複数のウィンドウを合成して描画するウィンドウ合成装置に関する。
 グラフィックス描画では、矩形状等の領域内に図形またはフォント等を描画することによりウィンドウが生成される。この生成された描画済みの複数のウィンドウを合成することにより表示ウィンドウを生成する技術が知られている。この技術によれば、表示ウィンドウの生成に必要な描画済みの複数のウィンドウの何れかに更新が発生した場合に、更新が発生したウィンドウのみを再描画することにより表示ウィンドウを生成できるため、高速な描画が可能である。
 グラフィックス描画では、描画する図形またはフォント等といったオブジェクトのマスク処理またはウィンドウ間の前後関係を把握するために、ステンシルバッファが使用される。ステンシルバッファは、グラフィックス描画において、オブジェクト同士の重なりにより描画しなくてよい領域をピクセル単位で制御可能にする。このステンシルバッファを使用することにより、表示ウィンドウの生成に必要な描画済みウィンドウの何れかに更新が発生した場合に、更新が発生したウィンドウのみを再描画し、この再描画したウィンドウのみを表示ウィンドウに合成することにより表示ウィンドウを生成できるので、上述した方式より高速な描画が可能となる。
 関連する技術として、特許文献1は、ステンシルバッファに加え、グラフィックス制御プレーンと呼ばれるいくつかのプレーンを用いることにより描画を高速化することができるウィンドウ合成装置を開示している。
特許第3413201号公報
 ところで、グラフィックス描画では、オブジェクトの輪郭を滑らかに表現するためにアンチエイリアス処理を施すことがある。デジタルグラフィックスでは、ピクセル単位よりも細かく描画することができないため、オブジェクトの輪郭にジャギーと呼ばれるギザギザが発生する。アンチエイリアス処理は、ピクセルをサブピクセルに分割することにより、カバレッジ(オブジェクトがピクセルをカバーしている割合)を算出し、背景色とオブジェクト色をカバレッジによりブレンドした色を描画色として描画する処理である。
 特許文献1に示された従来のウィンドウ合成装置では、表示ウィンドウの生成に必要な描画済みの複数のウィンドウの何れかに更新が発生し、更新したウィンドウを表示ウィンドウに合成する場合、更新したウィンドウのオブジェクトのうち、他のウィンドウと重なる領域は、前面になるウィンドウのみが描画されるため、背景色が描画されない。このために、アンチエイリアス処理を適用できず、高画質の表示ウィンドウを高速に生成できないという課題がある。
 この発明は、上記のような課題を解決するためになされたもので、高画質の表示ウィンドウを高速に生成できるウィンドウ合成装置を提供することを目的とする。
 この発明に係るウィンドウ合成装置は、ウィンドウ単位で1つのウィンドウ番号をピクセルに付加するウィンドウ制御部と、ウィンドウ制御部によってウィンドウ番号が付加されたピクセルを含む描画済みウィンドウを表示ウィンドウに合成する2次元描画エンジンと、2次元描画エンジンにより合成された表示ウィンドウを表示させる表示制御部とを備えたものである。
 この発明に係るウィンドウ合成装置によれば、高画質の表示ウィンドウを高速に生成できる。
この発明の実施の形態1に係るウィンドウ合成装置が含まれる画像合成装置の構成を示すブロック図である。 この発明の実施の形態1に係るウィンドウ合成装置において行われるウィンドウの描画を説明するための図である。 この発明の実施の形態1に係るウィンドウ合成装置において行われる表示ウィンドウの合成を説明するための図である。 この発明の実施の形態1に係るウィンドウ合成装置において行われる表示ウィンドウの合成処理を示すフローチャートである。 この発明の実施の形態1に係るウィンドウ合成装置において行われる表示ウィンドウの再合成を説明するための図である。 この発明の実施の形態1に係るウィンドウ合成装置において行われる表示ウィンドウの再合成処理を説明するためのフローチャートである。 この発明の実施の形態1に係るウィンドウ合成装置において使用されるピクセル値の構成を説明するための図である。
 以下、この発明をより詳細に説明するため、この発明を実施するための形態について、添付の図面に従って説明する。
実施の形態1.
 図1は、この発明の実施の形態1に係るウィンドウ合成装置が含まれる画像合成装置の構成を示すブロック図である。この画像合成装置は、ウィンドウ合成装置1、CPU(Central Processing Unit)2、VRAM(Video Random Access Memory)10および表示装置11を備えている。
 ウィンドウ合成装置1は、複数のウィンドウを合成して描画する。このウィンドウ合成装置1の詳細は後述する。CPU2は、例えば汎用的なマイクロコンピュータから構成されており、ウィンドウ合成装置1に対する描画情報の設定等を行って、ウィンドウ合成装置1の全体を制御する。
 VRAM10は、ウィンドウ合成装置1から送られてくる描画の中間結果および描画結果等を格納するフレームバッファである。表示装置11は、ウィンドウ合成装置1から送られてくる表示データに従った表示を行う。
 次に、ウィンドウ合成装置1の詳細を説明する。ウィンドウ合成装置1は、CPU制御部3、2次元(2D)描画エンジン4、ベクターエンジン5、ピクセル演算部6、ウィンドウ制御部7、VRAM制御部8および表示制御部9を備えている。
 CPU制御部3は、CPU2から送られてくる命令をデコードし、命令の対象となるウィンドウ合成を行うために必要な2次元描画エンジン4、ベクターエンジン5、ピクセル演算部6、ウィンドウ制御部7、VRAM制御部8および表示制御部9に対して各種情報を設定し、これらを制御する。
 2次元描画エンジン4は、CPU制御部3からの制御に応じて、BitBLT(bit block transfer)またはFill等といった2次元グラフィックス描画を行う。ベクターエンジン5は、画像を、点の座標とそれを結ぶ線または面の方程式のパラメータおよび塗りつぶしまたは特殊効果等の描画情報として表現されたデータから色のついたピクセルの羅列として表現されたビットマップデータに変換する。
 ピクセル演算部6は、ピクセルに対し、カラーキーテスト、αテスト、カラートランスフォーム、αブレンドおよびディザリング等といったピクセル演算を実行する。ウィンドウ制御部7は、ウィンドウ番号の制御を行う。
 VRAM制御部8は、ウィンドウ合成装置1の各構成要素によるVRAM10へのアクセスを一元管理する。表示制御部9は、VRAM10からVRAM制御部8を経由して表示データを読み出し、表示装置11に送る。
 なお、図1に示す画像合成装置では、CPU2、VRAM10および表示装置11は、ウィンドウ合成装置1と別体に設けられているが、これらはウィンドウ合成装置1と一体に構成することもできる。
 上記のように構成されるウィンドウ合成装置1の動作を説明する。CPU制御部3は、CPU2から送られてくる命令に従って2次元描画エンジン4およびベクターエンジン5を起動し、複数のウィンドウを描画させる。この描画により生成された描画データは、VRAM制御部8を介してVRAM10に格納される。また、ウィンドウ制御部7は、ウィンドウを描画する際に、ウィンドウ単位で1つのウィンドウ番号を描画するピクセルに付加する。
 表示ウィンドウを生成する場合、2次元描画エンジン4は、VRAM10に格納されている描画済みウィンドウを読み出し、ウィンドウ番号が付加されているピクセルのみを表示ウィンドウに合成する。この際、アンチエイリアス処理の対象となるピクセルにアンチエイリアス処理の対象であることを示すブレンドフラグが付加される。
 表示ウィンドウを構成する描画済みウィンドウに更新が発生した場合、2次元描画エンジン4は、更新された描画済みウィンドウをVRAM10から読み出し、表示ウィンドウのピクセルに付加されているウィンドウ番号と描画済みウィンドウのピクセルに付加されているウィンドウ番号を比較し、一致した場合にのみピクセル値を更新する。この場合、更新が発生したウィンドウのピクセルのうち、表示面に現われるピクセルのみが表示ウィンドウに再合成される対象となる。また、ウィンドウ番号が一致したピクセルのうちブレンドフラグが付加されているピクセルにはブレンド処理が施される。
 図2は、ウィンドウ合成装置1において行われるウィンドウの描画を説明するための図である。大きい矩形がウィンドウ全体を示し、微小矩形がピクセルを示している。微小矩形内の数字は各ピクセルのウィンドウ番号を示している。描画前は、全ピクセルのウィンドウ番号は「0」である。描画の際は、描画するウィンドウを構成するピクセルのウィンドウ番号のみが更新される。このウィンドウ合成装置1では、描画するウィンドウ毎に同一のウィンドウ番号が付加される。図2に示す例では、ウィンドウ1のウィンドウ番号を「1」としている。このため、描画したピクセルのウィンドウ番号は「1」となる。
 図3は、ウィンドウ合成装置1において行われる表示ウィンドウの合成を説明するための図である。図4は、ウィンドウ合成装置1において行われる表示ウィンドウの合成処理を示すフローチャートである。表示ウィンドウの合成では、まず、ウィンドウ1がBitBLTで表示ウィンドウに合成される。次いで、ウィンドウ2(図示しない)がBitBLTで表示ウィンドウに合成されることにより、表示ウィンドウが完成する。このBitBLTの際に、全ピクセルに対して図4に示すフローチャートが適用される。
 表示ウィンドウの合成処理では、まず、SRCピクセルのリードが行われる(ステップST11)。すなわち、BitBLTの転送元となる描画済みウィンドウのピクセルであるSRC(source)ピクセルがVRAM(フレームバッファ)10から読み出される。
 次いで、ステップST11で読み出されたピクセルのウィンドウ番号(描画SW)がBitBLT中のウィンドウに割り当てられているウィンドウ番号(SW)と一致しているかどうかが調べられる(ステップST12)。このステップST12において、一致していないことが判断されると、そのピクセルは描画する必要がないので、シーケンスはステップST17に進む。
 一方、ステップST12において、一致していることが判断されると、α値が「1」であるかどうかが調べられる(ステップST13)。すなわち、ステップST11で読み出されたピクセルの透明度情報であるα値が「1」であるか否かが調べられる。このステップST13において、α値が「1」であることが判断されると、シーケンスはステップST16に進む。すなわち、アンチエイリアス処理では、α値が「1」である場合は、背景色と描画色のαブレンドを実施しなくてよいため、SRCピクセル値がそのままDST(destination)ピクセル値として表示ウィンドウに描画される。
 一方、ステップST13において、α値が「1」でないことが判断されると、ブレンド合成が行われる(ステップST14)。すなわち、アンチエイリアス処理による背景色と描画色のブレンド合成が行われてDSTピクセル値が算出される。次いで、ウィンドウ番号が更新される(ステップST15)。すなわち、ブレンド合成が行われたピクセル値にブレンドフラグを付加するためにウィンドウ番号が更新される。図3に示す例では、ブレンド合成を行ったピクセルにブレンドフラグを付加するためにウィンドウ番号が「3」に更新されている。その後、シーケンスはステップST16に進む。
 ステップST16においては、DSTピクセルライトが行われる。すなわち、DSTピクセル値が表示ウィンドウに描画される。その後、シーケンスはステップST17に進む。
 ステップST17においては、全ピクセルに対する処理が完了したかどうかが調べられる。このステップST17において、全ピクセルに対する処理が完了していないことが判断されると、シーケンスはステップST11に戻り、上述した処理が繰り返される。一方、全ピクセルに対する処理が完了したことが判断されると、表示ウィンドウの合成処理は終了する。
 ここで、上述したステップST14で行われるブレンド合成は、例えば、下記式(1)で表すことができる。
 Dr’=Sr×α+Dr×(1-α)
 Dg’=Sg×α+Dg×(1-α)・・・(1)
 Db’=Sb×α+Db×(1-α)
ここで、
 Dr:DSTピクセルR成分、
 Dg:DSTピクセルG成分、
 Db:DSTピクセルB成分、
 Sr:SRCピクセルR成分、
 Sg:SRCピクセルG成分、
 Sb:SRCピクセルB成分、
 Dr’:DSTピクセルR成分(演算後)、
 Dg’:DSTピクセルG成分(演算後)、
 Db’:DSTピクセルB成分(演算後)である。
 上述した図4のフローチャートに示すウィンドウ合成処理を実行することにより、表示ウィンドウの各ピクセルがどの描画済みウィンドウのピクセル値を使用しているか否かを判別することが可能となる。さらに、表示ウィンドウの複数のピクセルのうちアンチエイリアス処理によりブレンドが適用されたピクセルを判別することが可能となる。
 図5は、ウィンドウ合成装置1において行われる表示ウィンドウの再合成を説明するための図であり、表示ウィンドウとして合成される複数のウィンドウのうち、ウィンドウ1が更新された場合の例を示している。
 図6は、ウィンドウ合成装置1において行われる表示ウィンドウの再合成処理を示すフローチャートである。表示ウィンドウの再合成処理では、まず、SRCピクセルのリードが行われる(ステップST21)。すなわち、ウィンドウ1のピクセルであるSRCピクセルがVRAM(フレームバッファ)10から読み出される。
 次いで、ステップST11で読み出されたSRCピクセルのウィンドウ番号(描画SW)と更新されたウィンドウのウィンドウ番号(SW)が一致しているかどうかが調べられる(ステップST22)。このステップST22で一致していないことが判断された場合、シーケンスはステップST28に進む。図5に示す例では、ウィンドウ1の合成であるので、「SW=1」となる。したがって、SRCピクセルのウィンドウ番号が「1」でない場合に、シーケンスはステップST28に進む。
 一方、ステップST22で一致していることが判断された場合、DSTピクセル値リードが行われる(ステップST23)。すなわち、表示ウィンドウのピクセル値であるDSTピクセル値が読み出される。
 次いで、DSTピクセルのウィンドウ番号(DW)が、ブレンドフラグが付加されているウィンドウ番号(BW)に一致するかどうか、つまり、DSTピクセルにブレンドフラグが付加されているかどうかが調べられる(ステップST24)。図5に示す例の場合、ブレンドフラグが付加されているピクセルはウィンドウ番号が「3」になっているピクセルである。
 このステップST24において、DSTピクセルにブレンドフラグが付加されていることが判断されると、次いで、ブレンド処理が行われる(ステップST25)。すなわち、アンチエイリアス処理による背景色と描画色のブレンド合成が行われてDSTピクセル値が算出される。その後、シーケンスはステップST27に進む。
 一方、ステップST24において、DSTピクセルにブレンドフラグが付加されていないことが判断されると、次いで、DSTピクセルのウィンドウ番号(DW)が描画済みウィンドウのウィンドウ番号(SW)と一致するかどうかが調べられる(ステップST26)。図5に示す例の場合、表示ウィンドウのピクセルのウィンドウ番号が「1」であるかどうかが調べられる。
 このステップST26において、一致しないことが判断されると、描画がキャンセルされ、シーケンスはステップST28に進む。一方、ステップST26において、一致することが判断されると、ウィンドウ1のピクセル値がDSTピクセル値とされ、シーケンスはステップST27に進む。
 ステップST27においては、DSTピクセル値ライトが行われる。すなわち、DSTピクセルが表示ウィンドウに描画される。その後、シーケンスはステップST28に進む。
 ステップST28においては、全ピクセルに対する処理が完了したかどうかが調べられる。このステップST28において、全ピクセルに対する処理が完了していないことが判断されると、シーケンスはステップST21に戻り、上述した処理が繰り返される。一方、全ピクセルに対する処理が完了したことが判断されると、表示ウィンドウの再合成処理は終了する。
 以上の処理により、ウィンドウ合成にアンチエイリアス処理を適用することが可能となっている。
 ここで、上述したステップST25で行われる再合成のブレンド処理は、例えば、下記式(2)で表すことができる。この式(2)は、逆ブレンド演算により元の背景色を算出する式とブレンドにより描画色を生成する式を1つにまとめている。
 Dr’=Dr+(Sr’-Sr)×α
 Dg’=Dg+(Sg’-Sg)×α・・・(2)
 Db’=Db+(Sb’-Sb)×α
ここで、
 Dr:DSTピクセルR成分、
 Dg:DSTピクセルG成分、
 Db:DSTピクセルB成分、
 Sr:SRCピクセルR成分(更新前ウィンドウ)、
 Sg:SRCピクセルG成分(更新前ウィンドウ)、
 Sb:SRCピクセルB成分(更新前ウィンドウ)、
 Dr’:DSTピクセルR成分(演算後)、
 Dg’:DSTピクセルG成分(演算後)、
 Db’:DSTピクセルB成分(演算後)、
 Sr’:SRCピクセルR成分(更新後ウィンドウ)、
 Sg’:SRCピクセルG成分(更新後ウィンドウ)、
 Sb’:SRCピクセルB成分(更新後ウィンドウ)である。
 以上のように、更新したウィンドウのオブジェクトの輪郭のうち、ウィンドウの重なりがあるピクセルについては、逆ブレンド演算により背景色を算出し、改めて背景色とオブジェクト色のブレンドを行うことにより、正しい描画色を算出できる。
 図7は、ウィンドウ合成装置1において使用されるピクセル値の構成を説明するための図である。今日使われている一般的なピクセルフォーマットはARGBフォーマットである。Aはα値、R、GおよびBはカラー値であり、それぞれ色成分の赤、青および緑を示している。WARGBフォーマットを適用することにより、ウィンドウ合成時のフレームバッファに対するアドレス生成を容易にすることが可能となる。
 ピクセル値をARGBフォーマットとした場合、α値およびカラー値(ARGB)のアドレス生成とは別に、ウィンドウ番号(W)が格納されているアドレスを生成する必要がある。例えば、従来のウィンドウ合成装置においては、カラーバッファとステンシルバッファを別々のバッファとして備えているために、アドレスデコードが複雑になり、ひいてはウィンドウの合成処理が難しくなるという課題があった。これに対し、本発明の実施の形態1の構成によれば、WARGBフォーマットを適用することにより、アドレス生成を1回にすることが可能になり、ウィンドウの合成処理を容易にすることができる。
 今日、VRAMとして使用されるSDRAM-SDRM、DDR2-SDRM、DDR3-SDRAM等の大半はデータ幅が16ビットまたは32ビットである。このため1ピクセルを32ビットとし、WARGBフォーマットの各成分に32ビットを割り当てることにより、さらにアドレス生成が簡易になる。例えば、W=4ビット、A=4ビット、R=8ビット、G=8ビット、B=8ビットと振り分ける。なお、振り分け方はこれに限定されず任意である。
 なお、本願発明はその発明の範囲内において、実施の形態の任意の構成要素の変形、もしくは実施の形態の任意の構成要素の省略が可能である。
 この発明に係るウィンドウ合成装置は、表示画面が複数のウィンドウから構成されるパーソナルコンピュータの画面の生成、画像の重畳表示を行う装置、または、組み込み機器の表示画面の生成等に適している。
1 ウィンドウ合成装置、2 CPU、3 CPU制御部、4 2次元描画エンジン、5 ベクターエンジン、6 ピクセル演算部、7 ウィンドウ制御部、8 VRAM制御部、9 表示制御部、10 VRAM、11 表示装置。

Claims (6)

  1.  ウィンドウ単位で1つのウィンドウ番号をピクセルに付加するウィンドウ制御部と、
     前記ウィンドウ制御部によってウィンドウ番号が付加されたピクセルを含む描画済みウィンドウを表示ウィンドウに合成する2次元描画エンジンと、
     前記2次元描画エンジンにより合成された表示ウィンドウを表示させる表示制御部
    とを備えたウィンドウ合成装置。
  2.  2次元描画エンジンは、描画済みウィンドウを表示ウィンドウに合成する際に、描画済みウィンドウ中のウィンドウ番号が付加されているピクセルのみを表示ウィンドウに合成する
    ことを特徴とする請求項1記載のウィンドウ合成装置。
  3.  ウィンドウを形成するピクセルがピクセル値として格納されるフレームバッファを備え、
     前記フレームバッファに格納されるピクセル値は、カラー値、α値およびウィンドウ番号からなり、1つのアドレスによって指定される
    ことを特徴とする請求項2記載のウィンドウ合成装置。
  4.  2次元描画エンジンは、描画済みウィンドウ中のウィンドウ番号が付加されているピクセルを表示ウィンドウに合成する際に、アンチエイリアス処理の対象となるピクセルにその旨を示すブレンドフラグを付加する
    ことを特徴とする請求項2記載のウィンドウ合成装置。
  5.  2次元描画エンジンは、表示ウィンドウを構成する複数の描画済みウィンドウのうちの1つに更新が発生した際に、更新が発生したウィンドウのピクセルのうち、表示面に現われるピクセルのみを表示ウィンドウに再合成する
    ことを特徴とする請求項4記載のウィンドウ合成装置。
  6.  2次元描画エンジンは、表示ウィンドウのうちブレンドフラグが付加されているピクセルから元の背景色を算出し、再合成の際にアンチエイリアス処理を行う
    ことを特徴とする請求項5記載のウィンドウ合成装置。
PCT/JP2011/003313 2011-06-10 2011-06-10 ウィンドウ合成装置 WO2012168984A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
PCT/JP2011/003313 WO2012168984A1 (ja) 2011-06-10 2011-06-10 ウィンドウ合成装置
US13/984,996 US20130321449A1 (en) 2011-06-10 2011-06-10 Window combining device
JP2013519242A JP5744197B2 (ja) 2011-06-10 2011-06-10 ウィンドウ合成装置
CN201180071556.4A CN103608858A (zh) 2011-06-10 2011-06-10 窗口合成装置
DE112011105323.1T DE112011105323T5 (de) 2011-06-10 2011-06-10 Fensterkombinationsvorrichtung

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2011/003313 WO2012168984A1 (ja) 2011-06-10 2011-06-10 ウィンドウ合成装置

Publications (1)

Publication Number Publication Date
WO2012168984A1 true WO2012168984A1 (ja) 2012-12-13

Family

ID=47295594

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2011/003313 WO2012168984A1 (ja) 2011-06-10 2011-06-10 ウィンドウ合成装置

Country Status (5)

Country Link
US (1) US20130321449A1 (ja)
JP (1) JP5744197B2 (ja)
CN (1) CN103608858A (ja)
DE (1) DE112011105323T5 (ja)
WO (1) WO2012168984A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9449585B2 (en) 2013-11-15 2016-09-20 Ncomputing, Inc. Systems and methods for compositing a display image from display planes using enhanced blending hardware
US9142053B2 (en) * 2013-11-15 2015-09-22 Ncomputing, Inc. Systems and methods for compositing a display image from display planes using enhanced bit-level block transfer hardware

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04222022A (ja) * 1990-03-16 1992-08-12 Hewlett Packard Co <Hp> データ・ブロック移動方法及びシステム
JPH05225328A (ja) * 1991-07-22 1993-09-03 Internatl Business Mach Corp <Ibm> 多重ソース画像のリアルタイムミキシングおよびアンチエリアシングのための装置および方法
JPH07105388A (ja) * 1993-06-23 1995-04-21 Sun Microsyst Inc 高性能3次元グラフィック・アクセラレータの作図プロセッサ
JPH0991444A (ja) * 1995-09-22 1997-04-04 Nec Corp グラフィックス表示装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04222022A (ja) * 1990-03-16 1992-08-12 Hewlett Packard Co <Hp> データ・ブロック移動方法及びシステム
JPH05225328A (ja) * 1991-07-22 1993-09-03 Internatl Business Mach Corp <Ibm> 多重ソース画像のリアルタイムミキシングおよびアンチエリアシングのための装置および方法
JPH07105388A (ja) * 1993-06-23 1995-04-21 Sun Microsyst Inc 高性能3次元グラフィック・アクセラレータの作図プロセッサ
JPH0991444A (ja) * 1995-09-22 1997-04-04 Nec Corp グラフィックス表示装置

Also Published As

Publication number Publication date
JPWO2012168984A1 (ja) 2015-02-23
CN103608858A (zh) 2014-02-26
JP5744197B2 (ja) 2015-07-08
DE112011105323T5 (de) 2014-02-27
US20130321449A1 (en) 2013-12-05

Similar Documents

Publication Publication Date Title
TWI616846B (zh) 利用以空間及/或時間方式改變取樣圖案之增強型消鋸齒的一種圖形子系統、電腦實施方法及電腦裝置
US6771274B2 (en) Graphics and video integration with alpha and video blending
US7554554B2 (en) Rendering apparatus
JPH10275460A (ja) メモリ装置及びこれを用いた画像処理装置
JP5323251B2 (ja) アニメーション表示装置
TWI622016B (zh) Depicting device
JP4707782B2 (ja) 画像処理装置およびその方法
KR20060007054A (ko) 이미지 데이터의 래스터화를 슈퍼샘플링하는 방법 및시스템
WO2014050845A1 (ja) グラフィックス描画装置
JP5744197B2 (ja) ウィンドウ合成装置
JP4456003B2 (ja) 低コスト・スーパーサンプリング・ラスタライゼーション
JP3037865B2 (ja) 3次元スプライト描画装置
JP3770121B2 (ja) 画像処理装置
JP2010146255A (ja) ベクトル図形描画装置
WO2010089805A1 (ja) グラフィカルユーザインタフェース装置及びグラフィカルユーザインタフェース実現方法
JP5159949B2 (ja) ベクトル図形描画装置
JP2010055374A (ja) データ作成装置、データ作成方法、データ作成用プログラム、描画装置、描画方法、描画用プログラム、および、コンピュータ読取可能な記録媒体
WO2014087541A1 (ja) 図形描画装置
JP3872056B2 (ja) 描画方法
JP2018019212A (ja) 情報処理装置及び描画処理方法、コンピュータプログラム
JP2007047417A (ja) 画像生成装置
JP2005077750A (ja) 表示装置装置および文字表示制御方法
JP2005078399A (ja) 表示画像処理装置、その方法及びそれを用いた表示装置
JP2007264866A (ja) グラフィックシステム、破線テクスチャ画像生成装置、及び、破線テクスチャ画像生成方法
WO2014097482A1 (ja) ピクセル合成装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11867245

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2013519242

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 13984996

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 1120111053231

Country of ref document: DE

Ref document number: 112011105323

Country of ref document: DE

122 Ep: pct application non-entry in european phase

Ref document number: 11867245

Country of ref document: EP

Kind code of ref document: A1