JP2014038576A - 多重プロセシングを用いたレンダリング処理装置及び方法 - Google Patents

多重プロセシングを用いたレンダリング処理装置及び方法 Download PDF

Info

Publication number
JP2014038576A
JP2014038576A JP2012207021A JP2012207021A JP2014038576A JP 2014038576 A JP2014038576 A JP 2014038576A JP 2012207021 A JP2012207021 A JP 2012207021A JP 2012207021 A JP2012207021 A JP 2012207021A JP 2014038576 A JP2014038576 A JP 2014038576A
Authority
JP
Japan
Prior art keywords
rendering
processing
image
frame
management unit
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.)
Granted
Application number
JP2012207021A
Other languages
English (en)
Other versions
JP5466744B2 (ja
Inventor
Song Huajun
ファジュン ソン
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.)
Tobesoft Co Ltd
Original Assignee
Tobesoft Co Ltd
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 Tobesoft Co Ltd filed Critical Tobesoft Co Ltd
Publication of JP2014038576A publication Critical patent/JP2014038576A/ja
Application granted granted Critical
Publication of JP5466744B2 publication Critical patent/JP5466744B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/61Scene description

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Image Generation (AREA)
  • Image Processing (AREA)
  • Processing Or Creating Images (AREA)

Abstract

【課題】多重プロセシングを用いたレンダリング処理方法を提供する。
【解決手段】多重プロセシングを用いたレンダリング処理方法は、プリレンダリング管理部がアプリケーション実行ウィンドウをフレーム単位に区分し、フレーム別にイメージをレンダリング処理するためのレンダリング処理命令を生成する段階、前記生成されたレンダリング処理命令に従ってレンダリング管理部がフレームに対するレンダリングイメージを生成する段階、前記生成されたレンダリングイメージをメモリ部に格納する段階を含み、前記レンダリング処理命令を生成する段階を行うための作業は、少なくとも1つの作業に分割され、前記レンダリングイメージを生成する段階を行うための作業は、少なくとも1つの作業に分割され、前記分割された作業は、複数のスレッドにより同時に処理され得る。
【選択図】図2

Description

本発明は、レンダリング処理装置及び方法に関し、フレーム単位のイメージの処理においてレンダリング処理命令生成部分とドローイング処理部分とを分離し、複数のスレッドで処理してレンダリング処理性能を最大化できる多重プロセシングを用いたレンダリング処理装置及び方法に関する。
従来のレンダリング方式は、中央処理プロセッサ(CPU)が単一のコアを基準としてスレッドを使用せず、単一のプロセスでダブル・バッファリングを活用してイメージを処理するか、性能の問題がある場合にスレッドを1つ程度作り、画面全体を生成する方式であった。
図1は、従来のレンダリング方式を説明するための例示図である。前記図1に示すように、従来のレンダリング方式では共有メモリ上で1つのスレッド(単一作業)のみを処理するため、レンダリングの処理速度が遅くなる。
従来のレンダリング方式は、複数のフレームに含まれているイメージを処理するのに多くの時間がかかるため、近年、ノートブック、PC、タブレットPC又はスマートフォンのようなデバイスに装着されるCPUがマルチコア、例えば4コア以上に発展している状況で、イメージを迅速に処理できる技術が要求されている。
本発明は上記事情に鑑みてなされたものであって、その目的は、フレーム単位のイメージの処理において命令生成部分とドローイング処理部分とを分離して同時に処理することで、イメージの処理性能を向上させることができる多重プロセシングを用いたレンダリング処理装置及び方法を提供することにある。
本発明の目的は、以上で言及したものに制限されず、言及していない他の目的は、下記の記載から本発明の属する技術分野における通常の知識を有する者に明確に理解され得るはずである。
前記課題を解決するための本発明の一態様に係る、多重プロセシングを用いたレンダリング処理方法は、プリレンダリング管理部がアプリケーション実行ウィンドウ(window)をフレーム単位に区分し、フレーム別にイメージをレンダリング処理するためのレンダリング処理命令を生成する段階と、前記生成されたレンダリング処理命令に従ってレンダリング管理部がフレームに対するレンダリングイメージを生成する段階と、前記生成されたレンダリングイメージをメモリ部に格納する段階とを含み、前記レンダリング処理命令を生成する段階を行うための作業は、少なくとも1つの作業に分割され、前記レンダリングイメージを生成する段階を行うための作業は、少なくとも1つの作業に分割され、前記分割された作業は、複数のスレッドにより同時に処理され得る。
また、前記フレーム別に前記分割された作業は、順次処理され得る。
更に、前記イメージは、ビットマップ形式で生成され得る。
また、前記レンダリング処理命令を生成する段階は、SG(Scene Grpah、シーングラフ)オプティマイザがレンダリング処理要請が入力されるプリレンダリングQ(プリレンダリングキュー、プリレンダリングキューユニット)をスキャンしてフレーム上の同一の座標で同一のイメージ生成に対する複数の処理要請が連続的に入力された場合に、前記複数の処理要請のうち1つの処理要請のみ処理されるように制御する段階を含むことができる。
更に、前記方法は、プログラムによりコンピュータで実行され得る。
本発明の他の態様に係る多重プロセシングを用いたレンダリング処理装置は、アプリケーション実行ウィンドウをフレーム単位に区分し、少なくとも1つのフレームのイメージをレンダリング処理するためのレンダリング処理命令を生成するプリレンダリング管理部と、前記レンダリング処理命令に従ってフレームに対するレンダリングイメージを生成するレンダリング管理部及び前記生成されたレンダリングイメージを格納するためのメモリ部を含み、前記プリレンダリング管理部で前記レンダリング処理命令を生成する作業と、前記レンダリング管理部で前記レンダリングイメージを生成する作業は、それぞれ少なくとも1つの作業に分割され、前記分割された作業は、複数のスレッドにより同時に処理され得る。
また、前記フレーム別に前記分割された作業は、順次処理され得る。
更に、前記イメージは、ビットマップ形式で生成され得る。
また、前記プリレンダリング管理部は、イメージ処理イベント命令を受信するプリレンダリングQと、前記プリレンダリングQをスキャンしてフレーム上の同一の座標で同一のイメージ生成に対する複数のレンダリング処理要請が連続的に入力された場合に、前記複数のレンダリング処理要請のうち1つの処理要請のみ処理されるように制御するSGオプティマイザを含むことができる。
本発明の実施形態に係る多重プロセシングを用いたレンダリング処理装置及び方法によれば、多重プロセシングを活用してフレーム単位のイメージを、計算処理部分とドローイング処理部分とを分離して複数のスレッドで同時に処理することで、デバイスでのイメージの処理性能を最大化できるという効果を奏する。
本発明の効果は、以上で言及したものに制限されず、言及していない他の効果は、下記の記載から本発明の属する技術分野における通常の知識を有する者に明確に理解され得るはずである。
従来のレンダリング方式を説明するための例示図である。 本発明の実施形態に係る多重プロセシングを用いたレンダリング処理装置の構成図である。 本発明の一実施形態に係る多重プロセシングを用いたレンダリング処理方法を適用するためのウィンドウの一例である。 本発明の実施形態に係る多重プロセシングを用いたレンダリング処理方法のスレッド処理方法を説明するための第1の例示図である。 本発明の実施形態に係る多重プロセシングを用いたレンダリング処理方法のスレッド処理方法を説明するための第2の例示図である。 本発明の一実施形態に係る多重プロセシングを用いたレンダリング処理装置のプリレンダリング管理部の詳細構成図である。 本発明の一実施形態に係る多重プロセシングを用いたレンダリング処理装置のレンダリング管理部の詳細構成図である。
本発明の目的及び効果、そしてそれらを達成するための技術的な構成は、添付される図面と共に詳細に後述される実施形態を参照すれば明確になる。本発明を説明するにおいて公知の機能又は構成についての具体的な説明が本発明の要旨を不要に曖昧にするおそれがあると判断される場合には、その詳細な説明を省略する。そして、後述される用語は、本発明での構造、役割及び機能などを考慮して定義された用語であって、これはユーザ、運用者の意図又は慣例などによって変わり得る。
しかしながら、本発明は以下で開示される実施形態に限定されるものではなく、互いに異なる多様な形態で実現され得る。但し、本実施形態は本発明の開示が完全なようにし、本発明の属する技術分野における通常の知識を有する者に発明の範疇を完全に理解させるために提供されるものであり、本発明は専ら特許請求の範囲に記載された請求項の範疇によってのみ定義される。従って、その定義は、本明細書全般に渡る内容に基づいて行われるべきである。
明細書全体において、ある部分がある構成要素を「含む」とするとき、これは特に反対の記載がない限り、他の構成要素を除外するものではなく、他の構成要素を更に含むことができることを意味する。また、明細書に記載された「..ユニット」、「..部」などの用語は、少なくとも1つの機能や動作を処理する単位を意味し、これはハードウェアやソフトウェア又はハードウェア及びソフトウェアの結合により実現され得る。
一方、本発明の実施形態において、各構成要素、機能ブロック又は手段は、1つ又はそれ以上の下部構成要素で構成されることができ、各構成要素が行う電気、電子、機械的機能は、電子回路、集積回路、ASIC(Application Specific Integrated Circuit)など公知となった多様な素子又は機械的要素で実現されてもよく、それぞれ個別で実現されるか、2つ以上が1つに統合されて実現されてもよい。
また、添付されたブロック図の各ブロックとフローチャートの各段階の組み合わせは、コンピュータ・プログラム・インストラクションによって実行されることもできる。これらのコンピュータ・プログラム・インストラクションは、汎用コンピュータ、特殊用途コンピュータ又はその他プログラム可能なデータプロセシング装置のプロセッサに搭載され得るので、コンピュータ又はその他プログラム可能なデータプロセシング装置のプロセッサを通じて行われるそのインストラクションがブロック図の各ブロック又はフローチャートの各段階で説明された機能を行う手段を生成するようになる。これらのコンピュータ・プログラム・インストラクションは、特定の方式で機能を実現するためにコンピュータ又はその他プログラム可能なデータプロセシング装置を指向できるコンピュータ利用可能又はコンピュータ読み取り可能なメモリに格納されることも可能であるので、そのコンピュータ利用可能又はコンピュータ読み取り可能なメモリに格納されたインストラクションは、ブロック図の各ブロック又はフローチャートの各段階で説明された機能を行うインストラクション手段を内包する製造品目を生産することも可能である。コンピュータ・プログラム・インストラクションは、コンピュータ又はその他プログラム可能なデータプロセシング装置上に搭載されることも可能であるので、コンピュータ又はその他プログラム可能なデータプロセシング装置上で一連の動作段階が行われ、コンピュータで実行されるプロセスを生成してコンピュータ又はその他プログラム可能なデータプロセシング装置を行うインストラクションは、ブロック図の各ブロック及びフローチャートの各段階で説明された機能を実行するための段階を提供することも可能である。
また、各ブロック又は各段階は、特定された論理的な機能を実行するための1つ以上の実行可能なインストラクションを含むモジュール、セグメント又はコードの一部を表すことができる。例えば、相次いで示されている2つのブロック又は段階は、実際に実質的に同時に行われてもよく、又はそのブロック又は段階がしばしば該当する機能によって逆順に行われてもよい。
以下では、本発明の実施形態に係る多重プロセシングを用いたレンダリング処理装置及び方法を、添付された図面を参照して説明する。
本発明において、レンダリングはアプリケーションを実行して画面に表示されたウィンドウ上でイベントが発生する場合に、イベントに対応する新しいイメージを生成してウィンドウを新たに構成することのようなイメージ処理に該当する。
本発明において、スレッドは、あるプログラム、特に任意のプロセス内で実行される流れの単位をいう。
図2は、本発明の実施形態に係る多重プロセシングを用いたレンダリング処理装置の構成図である。
前記図2に示すように、前記多重プロセシングを用いたレンダリング処理装置100は、レンダリングエンジン110及びメモリ部140を含む。
前記メモリ部140は、オペレーティングシステム(Operating System)、アプリケーション(application)及びデータファイルを格納することができる。
レンダリングエンジン100は、プリレンダリング管理部120と、レンダリング管理部130とを含む。
プリレンダリング管理部120は、レンダリング前にレンダリングに必要な情報を格納し管理して最終のレンダリング命令を生成する機能を行う。
具体的に説明すれば、プリレンダリング管理部120は、アプリケーション実行ウィンドウをフレーム単位に区分し、少なくとも1つのフレームのイメージをレンダリング処理するためのレンダリング処理命令を生成する。
図3は、本発明の一実施形態に係る多重プロセシングを用いたレンダリング処理方法を適用するためのウィンドウの一例である。
前記図3に示すように、アプリケーションを実行すれば、アプリケーションの実行のためのウィンドウWがディスプレイされるが、ウィンドウは互いに区分される複数のフレームF1〜F3に区別され得る。
このとき、ウィンドウ単位でレンダリング処理を行えば、イベントが特定のフレームで発生した場合、残りのフレームは既存と同一のイメージが維持されるにも拘らず、ウィンドウ全体に対してレンダリング処理を行わなければならないので、レンダリングの処理速度が低下するおそれがある。
従って、本発明ではウィンドウをフレーム単位に区分し、フレーム単位でイメージを処理することによって、イメージの処理速度を向上させることができる。
一方、レンダリング管理部130はレンダリングを行うモジュールであって、プリレンダリング管理部120で生成されたレンダリング処理命令を順次処理し、所望のバッファにドローイングを行ってイメージを生成する。
このとき、前記レンダリング管理部130により生成されるイメージは、ビットマップ形式で生成され得る。
前記プリレンダリング管理部120で前記レンダリング処理命令を生成する作業と、前記レンダリング管理部130で前記レンダリングイメージを生成する作業は互いに分離されて処理され、前記レンダリング処理命令を生成する作業と、前記レンダリングイメージを生成する作業は、複数のスレッドで処理され得る。
前記レンダリング処理命令生成作業は、レンダリング処理命令の領域の計算とレンダリング処理対象などを確認し、レンダリング処理命令を生成する作業などに計算処理部分が含まれ、前記レンダリングイメージを生成する作業は、レンダリング処理命令に従ってレンダリングイメージを生成する作業に該当する。
図4は、本発明の実施形態に係る多重プロセシングを用いたレンダリング処理方法のスレッド処理方法を説明するための第1の例示図である。
前記図4は、複数のスレッドを用いて作業を処理する場合であって、3つのフレームに対するイメージを処理する場合を説明する例示図である。
前記図4では、レンダリング管理部130は、イメージ1、イメージ2及びイメージ3に対してレンダリングの命令生成作業とレンダリングのイメージ生成作業をそれぞれ計算1、計算2、計算3及びドローイング1、ドローイング2及びドローイング3に区分し、2つのスレッドを用いて処理する。
1つのスレッドを用いて前記作業を処理する場合には、計6個の作業が順次処理される。
しかしながら、2つのスレッドを用いる場合には、第1の処理(計算1)、第2の処理(計算2とドローイング1)、第3の処理(計算3とドローイング2)、第4の処理(ドローイング3)が順次行われ、特定の時点(例えば、第2の処理及び第3の処理 )ではレンダリング命令生成作業とレンダリングイメージ生成作業が2つのスレッドで同時に処理されるため、作業の処理速度が向上する。
一方、イメージの処理速度を更に向上させるために、前記プリレンダリング管理部120で前記レンダリング処理命令を生成する作業は、複数の作業に分割され、分割された複数の作業は、複数のスレッドにより処理され得る。
図5は、本発明の実施形態に係る多重プロセシングを用いたレンダリング処理方法のスレッド処理方法を説明するための第2の例示図である。
前記図5に示すように、レンダリング管理部130は、イメージ1、イメージ2、イメージ3に対するレンダリング命令処理部分を2つに分割し、それぞれ計算1−1、計算1−2、計算2−1、計算2−2、計算3−1及び計算3−2に区分し、レンダリングイメージ生成部分をドローイング1、ドローイング2及びドローイング3に区分した。
このとき、作業(スレッド1)、作業(スレッド2)及び作業(スレッド3)を用いて前記作業を処理すれば、第1の処理(計算1−1)、第2の処理(計算1−2及び計算2−1)、第3の処理(計算3−1、計算2−2、ドローイング1)、第4の処理(計算3−2、ドローイング2)及び第5の処理(ドローイング3)が順次行われる。
特定処理時点では複数のスレッドにより分割された複数のレンダリング処理命令部分と、レンダリングイメージ生成部分が同時に処理されるため、レンダリングの処理速度を更に向上させることができる。
その後、前記生成されたレンダリングイメージは、メモリ部140に格納される。
以下、レンダリングエンジン110を構成するプリレンダリング管理部120とレンダリング管理部130の構成及び機能を更に詳細に説明する。
図6は、本発明の一実施形態に係る多重プロセシングを用いたレンダリング処理装置のプリレンダリング管理部の詳細構成図である。
前記図6に示すように、プリレンダリング管理部120は、プリレンダリングQ121、ロケーションアジャスタ(location adjuster)122、複数のシーングラフ(SG)123、SGマニプレータ124、SGオプティマイザ125及びSGコマンダ126を含む。
前記プリレンダリングQ121は、レンダリング処理要請の入力を受け、これに対応するレンダリング処理命令を生成する機能を行う。前記プリレンダリングQ121に入力されるレンダリングの要請は、大きく3つに分けられる。第一に、エレメントインターフェースを通じて命令が入力され得る。第二に、ディスプレイ上の画面で特定の座標に対する要請が入力されれば、レンダリングエンジン110に含まれているヒットテストマネジャ(hittest manager)(図示せず)から該当座標に対するエレメントに対する命令が入力され得る。また、第三に、ドローイングインターフェースとペインタを含むカンバスモジュールから命令が入力され得る。前記命令は、レンダリング処理の対象に関する情報を含むことができる。
前記ロケーションアジャスタ122は、位置関連情報を処理するためのモジュールであって、レンダリングのための座標系補正処理及び変換を考慮したアップデートレクト(Update Rect)処理を行う。
ロケーションアジャスタ122は、画面上にウィンドウが重なり、後ろに位置するウィンドウのフレームの中で遮られた部分に対しては、レンダリング処理が行われないように、レンダリング処理領域から除外させることができる。
前記シーングラフ123は、レンダリングのために維持しなければならない情報を格納及び管理し、前記シーングラフ123は、深さ優先非循環グラフ(depth first acyclic graph)に該当する。また、シーングラフ123は、ドローイングの順序と包含関係を表し、アップデートされた領域を基準にレンダリングを行わなければならない対象を決定し、決定されたノードからレンダリング処理命令を生成する。
前記SGマニプレータ124は、シーングラフ123のノードの追加、削除、挿入又は移動の作業を処理し、シーングラフ123の内容を変更する機能を行う。
前記SGオプティマイザ125は、シーングラフ123の内容に基づいて最適化を行う。
特に、前記SGオプティマイザ125は、プリレンダリングQ121をスキャンしてフレーム上の同一の座標で同一のイメージ生成に対するレンダリング処理の要請が連続的に入力された場合に、前記複数の処理要請のうち1つの処理要請のみ処理されるように制御できる。
前記SGコマンダ126は、ロケーションアジャスタ122で生成されたアップデート領域を基準にレンダリング処理命令を生成する。
前記ヒットテストマネジャは、ヒットテスト関連情報を処理し、要請した座標を基準にどのエレメントがヒットされたかを求める。また、シーングラフ123を用いるために、プリレンダリングQ121を通じて要請を行い、応答を受けて処理する。
図7は、本発明の一実施形態に係る多重プロセシングを用いたレンダリング処理装置のレンダリング管理部の詳細構成図である。
前記図7に示すように、前記レンダリング管理部130は、レンダリング処理命令を行うためのレンダリングQ(レンダリングキュー、レンダリングキューユニット)131と、ドローイングを行うためのペインタ132と、レンダリングAPI(Application Programming Interface)ライブラリであるVGLib(ライブラリ、ライブラリユニット)133とを含む。
前記ペインタ132は、VGLib133を用いるためのインターフェースを有し、ドローイングバッファに絵を描くためのモジュールに該当する。前記カンバスモジュールを通じてドローイングする場合には、ペインタ132を用いて直接イメージを描くことができる。
本発明の実施形態は、多様な手段を通じて実現され得る。例えば、本発明の実施形態は、ハードウェア、ファームウェア、ソフトウェア又はそれらの結合などにより実現され得る。
ハードウェアによる実現の場合、本発明の実施形態に係る方法は、1つ又はそれ以上のASICs(Application Specific Integrated Circuits)、DSPs(Digital Signal Processors)、DSPDs(Digital Signal Processing Devices)、PLDs(Programmable Logic Devices)、FPGAs(Field Programmable Gate Arrays)、プロセッサ、コントローラ、マイクロコントローラ、マイクロプロセッサなどにより実現され得る。
ファームウェアやソフトウェアによる実現の場合、本発明の実施形態に係る方法は、以上で説明された機能又は動作を行うモジュール、手順又は関数などの形態で実現され得る。ソフトウェアコードは、メモリユニットに格納されてプロセッサにより駆動され得る。前記メモリユニットは、前記プロセッサの内部又は外部に位置し、既に公知となった多様な手段により前記プロセッサとデータをやり取りできる。
一方、前記で説明した多重プロセシングを用いたレンダリング方法は、多様なコンピュータ手段を通じて実行され得るプログラム命令の形態で実現されてコンピュータ読み取り可能な媒体に記録され得る。前記コンピュータ読み取り可能な媒体は、プログラム命令、データファイル、データ構造などを単独で又は組み合わせて含むことができる。前記媒体に記録されるプログラム命令は、本発明のために特に設計され構成されたものであってもよく、コンピュータソフトウェアの当業者に公知となって使用可能なものであってもよい。コンピュータ読み取り可能な記録媒体の例には、ハードディスク、フロッピー(登録商標)ディスク及び磁気テープのような磁気媒体、CD−ROM、DVDのような光気録媒体、フロプティカルディスクのような磁気−光媒体、及びROM、RAM、フラッシュメモリなどのようなプログラム命令を格納し実行するように特別に構成されたハードウェア装置が含まれる。プログラム命令の例には、コンパイラにより作られるもののような機械語コードだけでなく、インタプリタなどを用いてコンピュータによって実行され得る高級言語コードが含まれる。
以上では添付された図面を参照しながら本発明の実施形態について説明したが、本発明は、本発明の精神及び必須の特徴から逸脱しない範囲内で他の特定の形態で具体化され得る。従って、上記の詳細な説明はあらゆる面で制約的に解釈されてはならず、例示的なものとして考慮されるべきである。本発明の範囲は、添付された請求項の合理的な解釈により決定されなければならず、本発明の等価的な範囲内での全ての変更は、本発明の範囲に含まれる。
100 レンダリング処理装置
110 レンダリングエンジン
120 プリレンダリング管理部
130 レンダリング管理部
140 メモリ部
W ウィンドウ
F1〜F3:フレーム

Claims (9)

  1. プリレンダリング管理部がアプリケーション実行ウィンドウをフレーム単位に区分し、フレーム別にイメージをレンダリング処理するためのレンダリング処理命令を生成する段階と、
    前記生成されたレンダリング処理命令に従ってレンダリング管理部がフレームに対するレンダリングイメージを生成する段階と、
    前記生成されたレンダリングイメージをメモリ部に格納する段階と
    を含み、
    前記レンダリング処理命令を生成する段階を行うための作業は、少なくとも1つの作業に分割され、前記レンダリングイメージを生成する段階を行うための作業は、少なくとも1つの作業に分割され、前記分割された作業は、複数のスレッドにより同時に処理され得る
    多重プロセシングを用いたレンダリング処理方法。
  2. 前記フレーム別に前記分割された作業は、順次処理されることを特徴とする請求項1に記載の多重プロセシングを用いたレンダリング処理方法。
  3. 前記イメージは、ビットマップ形式で生成されることを特徴とする請求項1に記載の多重プロセシングを用いたレンダリング処理方法。
  4. 前記レンダリング処理命令を生成する段階は、
    SGオプティマイザがレンダリング処理要請が入力されるプリレンダリングキューをスキャンしてフレーム上の同一の座標で同一のイメージ生成に対する複数の処理要請が連続的に入力された場合に、前記複数の処理要請のうち1つの処理要請のみ処理されるように制御する段階を含むことを特徴とする請求項1に記載の多重プロセシングを用いたレンダリング処理方法。
  5. 請求項1〜4の何れか一項の方法をコンピュータで実行させるためのプログラム。
  6. アプリケーション実行ウィンドウをフレーム単位に区分し、少なくとも1つのフレームのイメージをレンダリング処理するためのレンダリング処理命令を生成するプリレンダリング管理部と、
    前記レンダリング処理命令に従ってフレームに対するレンダリングイメージを生成するレンダリング管理部と、
    前記生成されたレンダリングイメージを格納するためのメモリ部と
    を含み、前記プリレンダリング管理部で前記レンダリング処理命令を生成する作業と、前記レンダリング管理部で前記レンダリングイメージを生成する作業は、それぞれ少なくとも1つの作業に分割され、前記分割された作業は、複数のスレッドにより同時に処理され得る多重プロセシングを用いたレンダリング処理装置。
  7. 前記フレーム別に前記分割された作業は、順次処理されることを特徴とする請求項6に記載の多重プロセシングを用いたレンダリング処理装置。
  8. 前記イメージは、ビットマップ形式で生成されることを特徴とする請求項6に記載の多重プロセシングを用いたレンダリング処理装置。
  9. 前記プリレンダリング管理部は、イメージ処理イベント命令の入力を受けるプリレンダリングキューと、
    前記プリレンダリングキューをスキャンしてフレーム上の同一の座標で同一のイメージ生成に対する複数のレンダリング処理要請が連続的に入力された場合に、前記複数のレンダリング処理要請のうち1つの処理要請のみ処理されるように制御するSGオプティマイザと
    を含むことを特徴とする請求項6に記載の多重プロセシングを用いたレンダリング処理装置。
JP2012207021A 2012-08-13 2012-09-20 多重プロセシングを用いたレンダリング処理装置及び方法 Active JP5466744B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2012-0088229 2012-08-13
KR1020120088229A KR101399472B1 (ko) 2012-08-13 2012-08-13 다중 프로세싱을 이용한 렌더링 처리 장치 및 방법

Publications (2)

Publication Number Publication Date
JP2014038576A true JP2014038576A (ja) 2014-02-27
JP5466744B2 JP5466744B2 (ja) 2014-04-09

Family

ID=50065867

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012207021A Active JP5466744B2 (ja) 2012-08-13 2012-09-20 多重プロセシングを用いたレンダリング処理装置及び方法

Country Status (4)

Country Link
US (1) US8952970B2 (ja)
JP (1) JP5466744B2 (ja)
KR (1) KR101399472B1 (ja)
CN (1) CN103593168B (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102292923B1 (ko) 2014-12-15 2021-08-24 삼성전자주식회사 3d 렌더링 방법 및 장치
CN109891388A (zh) * 2017-10-13 2019-06-14 华为技术有限公司 一种图像处理方法及装置
CN111163345B (zh) * 2018-11-07 2021-11-26 杭州海康威视***技术有限公司 一种图像渲染方法及装置
CN111402349B (zh) * 2019-01-03 2023-09-08 百度在线网络技术(北京)有限公司 渲染方法、渲染装置和渲染引擎
CN111696186B (zh) * 2019-02-27 2023-09-26 杭州海康威视***技术有限公司 界面渲染方法及装置
CN111145323B (zh) * 2019-12-27 2023-09-22 珠海金山数字网络科技有限公司 一种图像渲染方法及装置
CN111210381B (zh) * 2019-12-31 2023-07-25 广州市百果园信息技术有限公司 数据处理方法、装置、终端设备和计算机可读介质
JP2023518026A (ja) 2020-03-10 2023-04-27 ミートカイ・インコーポレイテッド マルチリンガル、マルチターン、マルチドメイン仮想アシスタントを強化するための並列仮説推論
US11995561B2 (en) * 2020-03-17 2024-05-28 MeetKai, Inc. Universal client API for AI services

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08138060A (ja) * 1994-11-04 1996-05-31 Hitachi Ltd 並列プロセッサを用いる表示処理装置
JP2007172454A (ja) * 2005-12-26 2007-07-05 Toshiba Corp 描画装置及び描画方法
JP2010516001A (ja) * 2007-01-10 2010-05-13 クゥアルコム・インコーポレイテッド 3次元グラフィックスパイプラインの自動負荷分散
WO2012086041A1 (ja) * 2010-12-22 2012-06-28 富士通株式会社 同期処理方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5606707A (en) * 1994-09-30 1997-02-25 Martin Marietta Corporation Real-time image processor
ATE282230T1 (de) 1999-09-24 2004-11-15 Sun Microsystems Inc Verfahren und vorrichtung zur schnellen visualisierung von dreidimensionalen szenen
US7075541B2 (en) * 2003-08-18 2006-07-11 Nvidia Corporation Adaptive load balancing in a multi-processor graphics processing system
CN101458634B (zh) * 2008-01-22 2011-03-16 中兴通讯股份有限公司 负载均衡调度方法和装置
US8581916B2 (en) * 2009-06-26 2013-11-12 Intel Corporation Graphics analysis techniques
US8566694B2 (en) * 2011-04-04 2013-10-22 Xerox Corporation Multi-dimensional documents for parallel content display on a single screen for multiple viewers

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08138060A (ja) * 1994-11-04 1996-05-31 Hitachi Ltd 並列プロセッサを用いる表示処理装置
JP2007172454A (ja) * 2005-12-26 2007-07-05 Toshiba Corp 描画装置及び描画方法
JP2010516001A (ja) * 2007-01-10 2010-05-13 クゥアルコム・インコーポレイテッド 3次元グラフィックスパイプラインの自動負荷分散
WO2012086041A1 (ja) * 2010-12-22 2012-06-28 富士通株式会社 同期処理方法

Also Published As

Publication number Publication date
US20140043345A1 (en) 2014-02-13
KR101399472B1 (ko) 2014-06-27
CN103593168A (zh) 2014-02-19
KR20140022969A (ko) 2014-02-25
JP5466744B2 (ja) 2014-04-09
US8952970B2 (en) 2015-02-10
CN103593168B (zh) 2016-10-05

Similar Documents

Publication Publication Date Title
JP5466744B2 (ja) 多重プロセシングを用いたレンダリング処理装置及び方法
JP6001221B1 (ja) グラフィックス処理のための任意の制御ポイントでのフォールトトレラントプリエンプションメカニズム
US10535171B2 (en) Evaluation manager for 3D animation scenes
US20110249002A1 (en) Manipulation and management of links and nodes in large graphs
US10789756B2 (en) Indirect command buffers for graphics processing
JP2014186361A5 (ja)
JP2015125509A (ja) 画像処理装置、画像処理方法およびプログラム
KR101953133B1 (ko) 렌더링 장치 및 그 방법
JP2021531561A (ja) 3d移行
EP3770858A1 (en) Network resource oriented data communication
US10162908B1 (en) Systems and methods for extracting bounding planes of solid models
JP5972733B2 (ja) 多重プロセシングを用いたレンダリング処理装置及び方法
US9965134B2 (en) Method and apparatus for providing a user interface for a file system
US11328470B2 (en) Distributed multi-context interactive rendering
JP2017037416A (ja) 画像処理装置、画像処理方法
JP2012256270A5 (ja)
KR20140077115A (ko) 3d 에서의 객체 그룹들의 정의
WO2017050075A1 (zh) 用于实时滑动显示扫描图像的方法及***
JP2022006180A (ja) 画像の手ぶれ補正方法、装置、電子機器、記憶媒体、コンピュータプログラム製品、路側機およびクラウド制御プラットフォーム
US9710235B2 (en) Generating software code
US20140317538A1 (en) User interface response to an asynchronous manipulation
EP3779865A1 (en) Filling empty pixels
JP5669199B2 (ja) 画像描画装置、画像描画方法、及びプログラム
CN114445537A (zh) 模型处理方法、装置、电子设备和存储介质
JP2010182139A (ja) 描画制御装置

Legal Events

Date Code Title Description
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: 20140110

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140124

R150 Certificate of patent or registration of utility model

Ref document number: 5466744

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250