JP2015022462A - 描画方法、描画装置、および描画プログラム - Google Patents

描画方法、描画装置、および描画プログラム Download PDF

Info

Publication number
JP2015022462A
JP2015022462A JP2013149187A JP2013149187A JP2015022462A JP 2015022462 A JP2015022462 A JP 2015022462A JP 2013149187 A JP2013149187 A JP 2013149187A JP 2013149187 A JP2013149187 A JP 2013149187A JP 2015022462 A JP2015022462 A JP 2015022462A
Authority
JP
Japan
Prior art keywords
mesh
thinning
level
vertex data
data
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
JP2013149187A
Other languages
English (en)
Other versions
JP6199101B2 (ja
Inventor
猛雄 小路
Takeo Komichi
猛雄 小路
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.)
Spansion LLC
Original Assignee
Spansion LLC
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 Spansion LLC filed Critical Spansion LLC
Priority to JP2013149187A priority Critical patent/JP6199101B2/ja
Publication of JP2015022462A publication Critical patent/JP2015022462A/ja
Application granted granted Critical
Publication of JP6199101B2 publication Critical patent/JP6199101B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】3次元画像の描画を部分的に省略しながら、3次元画像の形状を維持すること。【解決手段】描画装置100は、3次元画像の描画データに設定された、3次元画像を形成するメッシュごとの間引きレベルに応じて、メッシュごとに間引き処理を行う。描画装置100は、例えば、間引きレベルに応じて、メッシュをそのまま描画し、メッシュを表す複数の頂点データを削除してメッシュを削除し、またはメッシュ内の2面の共通稜線の端点を表す頂点データを削除して共通稜線を削除する。そして、描画装置100は、間引き処理された3次元画像の描画データに基づいて、3次元画像を描画する。【選択図】図1

Description

本発明は、描画方法、描画装置、および描画プログラムに関する。
従来、3次元画像をディスプレイ上に描画したり、ディスプレイ上に描画した3次元画像を拡大・縮小して描画したり、ディスプレイ上に描画した3次元画像を視線方向を変更して描画したりすることが行われている。また、描画処理にかかる負荷を抑えるために、3次元画像の描画を部分的に省略する技術がある。
関連する技術としては、例えば、オブジェクトを本来の三次元形状として描画するか、平面形状に簡略化して描画するか、線分形状に簡略化して描画するか、描画を省略(または点として描画)するかを決定するものがある。具体的には、コンピュータが、各オブジェクトについて、画面上に描画した際にx,y,z方向が夫々最大何ドットで表されるかを計算し、夫々に対応する所定の基準値Lx,Ly,Lzとの大小関係を判別し、どのように描画するかを決定する。
特開2002−216164号公報
しかしながら、上述した従来技術では、3次元画像をディスプレイに描画する際に、描画処理にかかる負荷を抑えるために3次元画像の描画を部分的に省略するとき、3次元画像の形状を特徴付ける部分の描画が省略されて、3次元画像の形状が大きく崩れてしまう場合がある。例えば、3次元画像の中で寸法が小さいオブジェクトであっても、3次元画像の形状を特徴付ける部分を形成するオブジェクトである場合、オブジェクトの描画を省略すると3次元画像の形状が大きく崩れてしまう。
1つの側面では、本発明は、3次元画像の描画を部分的に省略しながら、3次元画像の形状を維持することができる描画方法、描画装置、および描画プログラムを提供することを目的とする。
本発明の一側面によれば、3次元画像を形成するメッシュに設定された、前記メッシュを表す複数の頂点データの削除度合いを示す間引きレベルに応じて、前記メッシュに対する間引き処理を行い、前記間引き処理された前記メッシュの頂点データに基づいて、前記3次元画像の描画処理を行う描画方法、描画装置、および描画プログラムが提案される。
本発明の一態様によれば、3次元画像の描画を部分的に省略しながら、3次元画像の形状を維持することができるという効果を奏する。
図1は、描画装置100の描画処理の具体例を示す説明図である。 図2は、実施の形態にかかる描画装置100のハードウェア構成例を示すブロック図である。 図3は、描画データ300のデータ構造の一例を示す説明図である。 図4は、描画装置100の機能的構成例を示すブロック図である。 図5は、描画装置100の描画処理の内容を示す説明図である。 図6は、描画装置100の描画処理手順の一例を示すフローチャートである。 図7は、描画装置100の間引き処理手順の一例を示すフローチャートである。 図8は、描画装置100の面削除処理手順の一例を示すフローチャートである。
以下に添付図面を参照して、本発明にかかる描画方法、描画装置、および描画プログラムの実施の形態を詳細に説明する。
(描画装置100の描画処理の具体例)
図1は、描画装置100の描画処理の具体例を示す説明図である。
図1において、描画装置100は、3次元画像の描画データを有し、描画データに対して間引き処理を行い、間引き処理された描画データに基づいて3次元画像を描画するコンピュータである。ここで、描画データとは、3次元画像を形成する複数のメッシュの各々のメッシュを表す複数の頂点データを含むデータである。メッシュとは、1または複数の面の集合である。頂点データとは、頂点のX座標値、Y座標値、およびZ座標値のデータである。
また、描画データとは、3次元画像を形成する複数のメッシュの各々のメッシュの間引きレベルが設定されたデータである。間引きレベルとは、頂点データの削除度合いを示すデータである。間引きレベルとは、例えば、メッシュを削除しない、すなわち、そのまま描画するレベル、メッシュを削除するレベル、およびメッシュに含まれる2つの面に共通する稜線を削除するレベルである。
以下の説明では、メッシュを削除しない、すなわち、メッシュをそのまま描画するレベルを「レベル1」と表記する場合がある。また、以下の説明では、メッシュを削除するレベルを「レベル2」と表記する場合がある。ここで、レベル2が設定されたメッシュの削除は、常に行ってもよいし、メッシュの面積が閾値よりも小さい場合にのみ行ってもよい。レベル2が設定されたメッシュが複数ある場合、複数のメッシュのすべてを削除してもよいし、複数のメッシュのうちの一部を選択して削除してもよいし、複数のメッシュからランダムに選ばれたメッシュを削除してもよい。
また、以下の説明では、メッシュに含まれる2つの面に共通する稜線を削除するレベルを「レベル3」と表記する場合がある。ここで、レベル3が設定されたメッシュにおける稜線の削除は、常に行ってもよいし、メッシュの面積が閾値よりも小さい場合にのみ行ってもよい。レベル3が設定されたメッシュが複数ある場合、複数のメッシュのすべてにおいて稜線を削除してもよいし、複数のメッシュのうちの一部を選択して稜線を削除してもよいし、複数のメッシュからランダムに選ばれたメッシュの稜線を削除してもよい。メッシュに含まれる2つの面に共通する稜線を削除することは、EdgeCollapseと呼ばれる。
図1の例では、描画装置100は、3次元画像「りんご」の描画データに基づいて、3次元画像「りんご」を形成する複数のメッシュの各々のメッシュに対して間引き処理を行う。ここで、描画データの作成者によって、3次元画像「りんご」のうちの「葉っぱ」の部分を形成するメッシュには、3次元画像の形状を特徴付ける部分を形成するメッシュの形状を維持するために、間引きレベルとしてレベル1が設定されている。
また、描画データの作成者によって、3次元画像「りんご」のうちの「胴体」の部分を形成するメッシュには、3次元画像の形状を特徴付ける部分ではない部分の描画を省略するために、間引きレベルとしてレベル3が設定されている。また、描画データの作成者によって、3次元画像「りんご」のうちの「底面」の部分を形成するメッシュには、間引きレベルとしてレベル2が設定されている。
描画装置100は、例えば、3次元画像「りんご」のうちの「葉っぱ」の部分を形成するメッシュに対して間引き処理を行う。この場合、描画装置100は、メッシュの間引きレベルにレベル1が設定されているため、メッシュを表す頂点データを削除せずに、そのままにする。
また、描画装置100は、例えば、3次元画像「りんご」のうちの「胴体」の部分を形成するメッシュに対して間引き処理を行う。この場合、描画装置100は、メッシュの間引きレベルにレベル3が設定されているため、メッシュに含まれる2つの面に共通する稜線を削除する。ここでは、描画装置100は、面Cと面Gとに共通する稜線V1−V2を削除する。描画装置100は、具体的には、頂点V1の頂点データと、頂点V2の頂点データと、を削除し、頂点V1と頂点V2との中間頂点Vの頂点データを追加する。
また、描画装置100は、3次元画像「りんご」のうちの「底面」の部分を形成するメッシュに対して間引き処理を行う。この場合、描画装置100は、メッシュの間引きレベルにレベル2が設定されているため、ディスプレイ上でのメッシュの面積が閾値以下になる場合、メッシュを表す複数の頂点データを削除する。
これにより、描画装置100は、3次元画像の形状を維持しつつ、3次元画像を描画する際の頂点データの数を低減して、3次元画像の描画効率を向上することができる。このため、描画装置100は、3次元画像の描画にかかる処理負荷を低減するとともに、3次元画像の描画にかかる時間を短縮することができる。結果として、3次元画像の閲覧者は、3次元画像を違和感なく閲覧することができる。また、描画装置100は、3次元画像の描画データの作成者がメッシュごとに設定した間引きレベルに基づいて、3次元画像の形状を維持するため、作成者の意図を考慮して3次元画像の描画効率を向上することができる。
ここでは、3次元画像を形成するすべてのメッシュに間引きレベルが設定されている場合について説明したが、これに限らない。例えば、3次元画像を形成するメッシュのうち間引きレベルが設定されていないメッシュがあってもよい。この場合、描画装置100は、例えば、間引きレベルが設定されていないメッシュを、間引きレベルがレベル1に設定されたメッシュとして扱ってもよい。
また、ここでは、間引きレベルが上述したレベル1〜レベル3のである場合について説明したが、これに限らない。例えば、間引きレベルには、メッシュを点として描画するレベル、すなわちメッシュを表す頂点データをひとつ残して、他の頂点データを削除するレベルがあってもよい。また、間引きレベルには、メッシュを線として描画するレベル、すなわちメッシュを表す頂点データを2つ残して、他の頂点データを削除するレベルがあってもよい。
(描画装置100のハードウェア構成例)
図2は、実施の形態にかかる描画装置100のハードウェア構成例を示すブロック図である。図2において、描画装置100は、CPU(Central Processing Unit)201と、ROM(Read Only Memory)202と、RAM(Random Access Memory)203と、グラフィックスサブシステム(Graphics Subsystem)204と、ディスプレイ205と、を有する。また、各構成部はバス200によってそれぞれ接続されている。
ここで、CPU201は、描画装置100の全体の制御を司る。ROM202は、ブートプログラムなどのプログラムを記憶している。ROM202は、3次元画像の描画データを記憶している。RAM203は、CPU201のワークエリアとして使用される。
グラフィックスサブシステム204は、ディスプレイ205に対する画像表示を行うための一連のシステムである。グラフィックスサブシステム204は、3次元エンジン(Three−Dimensional Engine)206と、VRAM207と、ディスプレイコントローラ(Display Controller)208と、を有する。
3次元エンジン206は、3次元画像の描画データを、ディスプレイ205に対する表示データに変換して、VRAM207に記憶する。VRAM207は、ディスプレイ205に対する表示データを記憶する。ディスプレイコントローラ208は、表示データをVRAM207から読み出して映像信号に変換してディスプレイ205に供給する。
ディスプレイ205は、3次元画像を表示する。また、ディスプレイ205は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ205は、例えば、液晶ディスプレイ、プラズマディスプレイなどを採用することができる。また、描画装置100は、さらに、磁気ディスクドライブ、キーボード、マウス、スキャナ、およびプリンタの少なくともいずれか1つを有してもよい。
(描画データ300のデータ構造)
次に、図3を用いて、描画データ300のデータ構造の一例について説明する。描画データ300は、例えば、図2に示したRAM203に記憶される。描画データ300の具体例については、図5を用いて後述する。
図3は、描画データ300のデータ構造の一例を示す説明図である。図3に示すように、描画データ300は、メッシュ最大個数のデータ301を有する。ここで、メッシュ最大個数とは、3次元画像を形成するメッシュの数である。また、描画データ300は、メッシュのデータを、メッシュの数分有する。メッシュのデータは、メッシュ内頂点数のデータ302を有する。ここで、メッシュ内頂点数とは、メッシュを表す頂点の数である。また、メッシュのデータは、間引きレベルのデータ303を有する。
また、メッシュのデータは、頂点データを、頂点の数分有する。頂点データは、X座標値のデータ304、Y座標値のデータ305、およびZ座標値のデータ306を有する。ここで、X座標値とは、メッシュを表す頂点の座標値のうちのX軸の座標値である。Y座標値とは、メッシュを表す頂点の座標値のうちのY軸の座標値である。Z座標値とは、メッシュを表す頂点の座標値のうちのZ軸の座標値である。
(描画装置100の機能的構成例)
次に、図4を用いて、描画装置100の機能的構成例について説明する。図4は、描画装置100の機能的構成例を示すブロック図である。描画装置100は、間引き部401と描画部402とを含む。間引き部401と描画部402とは、例えば、図2に示したROM202、RAM203などの記憶装置に記憶されたプログラムをCPU201に実行させることにより、その機能を実現する。
間引き部401は、3次元画像を形成するメッシュに設定された、メッシュを表す複数の頂点データの削除度合いを示す間引きレベルに応じて、メッシュに対する間引き処理を行う。間引き部401は、例えば、メッシュの間引きレベルが上述したレベル1、レベル2、およびレベル3のいずれであるかに応じて、メッシュに対する間引き処理を行う。
レベル1とは、上述したように、メッシュを表す複数の頂点データを削除せずメッシュをそのまま描画するレベルである。レベル2とは、上述したように、メッシュを表す複数の頂点データを削除するレベルである。レベル3とは、上述したように、メッシュに含まれる2つの面に共通する稜線を削除するレベルである。
以下の説明では、メッシュの間引きレベルが上述したレベル1である場合にメッシュに対して行われる間引き処理を「第1の間引き処理」と表記する場合がある。また、以下の説明では、メッシュの間引きレベルが上述したレベル2である場合にメッシュに対して行われる間引き処理を「第2の間引き処理」と表記する場合がある。また、以下の説明では、メッシュの間引きレベルが上述したレベル3である場合にメッシュに対して行われる間引き処理を「第3の間引き処理」と表記する場合がある。
<第1の間引き処理>
間引き部401は、メッシュの間引きレベルがレベル1である場合、メッシュを表す複数の頂点データを残しておく。間引き部401は、例えば、ROM202から描画データ300を読み出して、読み出した描画データ300の複製データのうちのメッシュ内頂点数のデータ、X座標値のデータ、Y座標値のデータ、およびZ座標値のデータを残しておく。これにより、間引き部401は、3次元画像の形状を維持することができる。
<第2の間引き処理>
間引き部401は、メッシュの間引きレベルがレベル2である場合、複数の頂点データを削除する。間引き部401は、例えば、ROM202から描画データ300を読み出して、読み出した描画データ300の複製データのうちのメッシュ内頂点数のデータ、X座標値のデータ、Y座標値のデータ、およびZ座標値のデータを削除する。これにより、間引き部401は、3次元画像を描画する際の頂点データの数を低減して、3次元画像の描画効率を向上することができる。
また、間引き部401は、表示画面上のメッシュの面積を算出し、面積が閾値以下であって、メッシュの間引きレベルがレベル2である場合、複数の頂点データを削除してもよい。間引き部401は、表示画面上のメッシュの面積を算出し、面積が閾値以下ではなく、メッシュの間引きレベルがレベル2である場合、複数の頂点データを削除しない。これにより、間引き部401は、3次元画像を描画する際の頂点データの数を低減して、3次元画像の描画効率を向上することができる。
<第3の間引き処理>
間引き部401は、メッシュの間引きレベルがレベル3である場合、複数の頂点データのうちの稜線の端点となる2つの頂点データを削除し、2つの頂点データの中間を示す頂点データを追加する。間引き部401は、例えば、ROM202から描画データ300を読み出して、読み出した描画データ300の複製データのうちの稜線の端点となる2つの頂点データの各座標値の平均値を算出して、新たな頂点データを作成して追加する。また、間引き部401は、2つの頂点データを削除する。これにより、間引き部401は、3次元画像を描画する際の頂点データの数を低減して、3次元画像の描画効率を向上することができる。間引き処理された頂点データは、例えば、RAM203などの記憶領域に記憶される。
描画部402は、間引き処理されたメッシュの頂点データに基づいて、3次元画像の描画処理を行う。描画部402は、グラフィックスサブシステム204を用いて、間引き処理された3次元画像の描画データ300に基づいて、ディスプレイ205に、3次元画像を描画する。これにより、描画部402は、3次元画像をディスプレイ205に描画して、閲覧者に3次元画像を閲覧させることができる。
(描画装置100の描画処理の内容)
次に、図5を用いて、描画装置100の描画処理の内容について説明する。
図5は、描画装置100の描画処理の内容を示す説明図である。図5において、描画装置100は、間引き処理前の描画データ300を、ROM202から読み出す。ここで、ROM202には、元々の描画データ300が残っている。
図5の例では、読み出した描画データ300の複製データを、間引き処理前の描画データ501とする。間引き処理前の描画データ501は、メッシュ1のデータと、メッシュ2のデータと、メッシュ3のデータと、を含む。
メッシュ1のデータは、間引きレベル「レベル2」を含む。また、メッシュ1のデータは、3個の頂点データを含む。メッシュ1の3個の頂点データは、座標値(−0.9,0.6928,0)を示すデータ、座標値(−0.9,−0.6928,0)を示すデータ、および座標値(−1,0,0)を示すデータである。
メッシュ2のデータは、間引きレベル「レベル1」を含む。また、メッシュ2のデータは、3個の頂点データを含む。メッシュ2の3個の頂点データは、座標値(−0.8,0.6928,0)を示すデータ、座標値(−0.8,−0.6928,0)を示すデータ、および座標値(0.6,0,0)を示すデータである。
メッシュ3のデータは、間引きレベル「レベル3」を含む。また、メッシュ3のデータは、10個の頂点データを含む。メッシュ3の10個の頂点データは、座標値(0.928,−0.04754,0)を示すデータ、座標値(0.679,−0.17241,0)を示すデータ、・・・、および座標値(0.973,−0.61348,0)を示すデータである。
描画装置100は、メッシュ1について、間引きレベルがレベル2であるため、メッシュ1のデータを削除する。また、描画装置100は、メッシュ2について、間引きレベルがレベル1であるため、メッシュ2のデータを削除しない。
描画装置100は、メッシュ3について、間引きレベルがレベル3であるため、10個の頂点データのうちの稜線の端点となる2つの頂点データを特定する。ここでは、描画装置100は、2つの頂点データとして、末尾側にある座標値(0.948,−0.2894,0)を示すデータと座標値(0.973,−0.61348,0)を示すデータとを特定する。
次に、描画装置100は、特定したデータの各座標値の平均値を算出し、中間を示す頂点データ(0.96,−0.45144,0)を作成して、追加する。このように、描画装置は、間引き処理前の描画データ501を、間引き処理後の描画データ502に変換する。
これにより、描画装置100は、3次元画像の形状を維持しつつ、3次元画像を描画する際の頂点データの数を低減して、3次元画像の描画効率を向上することができる。このため、描画装置100は、3次元画像の描画にかかる処理負荷を低減するとともに、3次元画像の描画にかかる時間を短縮することができる。結果として、3次元画像の閲覧者は、3次元画像を違和感なく閲覧することができる。また、描画装置100は、3次元画像の描画データの作成者がメッシュごとに設定した間引きレベルに基づいて、3次元画像の形状を維持するため、作成者の意図を考慮して3次元画像の描画効率を向上することができる。
(描画装置100の描画処理手順の一例)
次に、図6を用いて、描画装置100の描画処理手順の一例について説明する。
図6は、描画装置100の描画処理手順の一例を示すフローチャートである。図6に示すように、描画装置100は、ROM202に記憶された描画データ300を読み出して、読み出した描画データ300からメッシュ最大個数を抽出する(ステップS601)。
次に、描画装置100は、変数MESH_MAXに、抽出したメッシュ最大個数を代入するとともに、変数NEW_MESH_MAXに、抽出したメッシュ最大個数を代入する(ステップS602)。そして、描画装置100は、変数nに1を代入する(ステップS603)。
次に、描画装置100は、読み出した描画データ300からn番目のメッシュの間引きレベルを抽出する(ステップS604)。そして、描画装置100は、図7を用いて後述する間引き処理を行う(ステップS605)。
次に、描画装置100は、変数nにn+1を代入する(ステップS606)。そして、描画装置100は、nがMESH_MAXより大きいか否かを判定する(ステップS607)。ここで、MESH_MAX以下である場合(ステップS607:No)、描画装置100は、ステップS604の処理に戻る。
一方で、MESH_MAXより大きい場合(ステップS607:Yes)、描画装置100は、NEW_MESH_MAXを、間引き処理された描画データ300のメッシュ最大個数に上書きする(ステップS608)。
次に、描画装置100は、変数nに1を代入する(ステップS609)。そして、描画装置100は、間引き処理された描画データ300のn番目のメッシュを描画する(ステップS610)。次に、描画装置100は、変数nにn+1を代入する(ステップS611)。そして、描画装置100は、nがNEW_MESH_MAXより大きいか否かを判定する(ステップS612)。ここで、NEW_MESH_MAX以下である場合(ステップS612:No)、描画装置100は、ステップS610の処理に戻る。
一方で、NEW_MESH_MAXより大きい場合(ステップS612:Yes)、描画装置100は、描画処理を終了する。これにより、描画部402は、3次元画像をディスプレイ205に描画して、閲覧者に3次元画像を閲覧させることができる。
(描画装置100の間引き処理手順の一例)
次に、図7を用いて、ステップS605に示した、描画装置100の間引き処理手順の一例について説明する。
図7は、描画装置100の間引き処理手順の一例を示すフローチャートである。図7に示すように、描画装置100は、間引きレベルがいくつかを判定する(ステップS701)。ここで、間引きレベルがレベル1である場合(ステップS701:レベル1)、描画装置100は、メッシュのデータを、そのままRAM203に格納し(ステップS702)、間引き処理を終了する。
一方で、間引きレベルがレベル2である場合(ステップS701:レベル2)、描画装置100は、メッシュの面積を算出する(ステップS703)。次に、描画装置100は、面積が閾値以下であるか否かを判定する(ステップS704)。
ここで、閾値より大きい場合(ステップS704:No)、描画装置100は、ステップS702の処理に移行する。一方で、閾値以下である場合(ステップS704:Yes)、描画装置100は、メッシュのデータをRAM203に格納せず(ステップS705)、変数NEW_MESH_MAXにNEW_MESH_MAX−1を代入する(ステップS706)。そして、描画装置100は、間引き処理を終了する。
また、ステップS701において、間引きレベルがレベル3である場合(ステップS701:レベル3)、描画装置100は、図8を用いて後述する面削除処理を行い(ステップS707)、間引き処理を終了する。これにより、描画装置100は、3次元画像の形状を維持しつつ、3次元画像を描画する際の頂点データの数を低減して、3次元画像の描画効率を向上することができる。
(描画装置100の面削除処理手順の一例)
次に、図8を用いて、ステップS707に示した、描画装置100の面削除処理手順の一例について説明する。
図8は、描画装置100の面削除処理手順の一例を示すフローチャートである。図8に示すように、描画装置100は、QEM(Quadric Error Metrics)手法を適用する、稜線の端点を頂点ペアとして登録する(ステップS801)。QEM手法については従来技術のため詳細な説明を省略する。
次に、描画装置100は、登録した頂点ペアを共有するポリゴンから、4×4行列を算出する(ステップS802)。そして、描画装置100は、行列に基づいて、頂点ペアごとに、コストを算出する(ステップS803)。
次に、描画装置100は、頂点ペアを縮退した縮退頂点の座標値を算出する(ステップS804)。そして、描画装置100は、最小コストの頂点ペアを削除して、最小コストの頂点ペアについて算出した縮退頂点の座標値を追加する(ステップS805)。
次に、描画装置100は、メッシュに含まれる面の数が所定数以下であるか否かを判定する(ステップS806)。ここで、所定数より大きい場合(ステップS806:No)、描画装置100は、縮退頂点の座標値を追加した後における頂点ペアを特定し、頂点ペアのコストを算出して(ステップS807)、ステップS805の処理に戻る。
一方で、所定数以下である場合(ステップS806:Yes)、描画装置100は、縮退頂点の座標値を追加したメッシュのデータをRAM203に格納して(ステップS808)、面削除処理を終了する。
以上説明したように、描画方法によれば、3次元画像を形成するメッシュに設定された間引きレベルに応じて、メッシュに対する間引き処理を行うことができる。これにより、描画方法は、3次元画像の形状を維持しつつ、3次元画像を描画する際の頂点データの数を低減して、3次元画像の描画効率を向上することができる。このため、描画装置100は、3次元画像の描画にかかる処理負荷を低減するとともに、3次元画像の描画にかかる時間を短縮することができる。結果として、3次元画像の閲覧者は、3次元画像を違和感なく閲覧することができる。また、描画装置100は、3次元画像の描画データの作成者がメッシュごとに設定した間引きレベルに基づいて、3次元画像の形状を維持するため、作成者の意図を考慮して3次元画像の描画効率を向上することができる。
また、描画方法によれば、描画レベルがレベル2の場合、メッシュを表す複数の頂点データを削除することができる。これにより、描画方法は、3次元画像の形状を維持しつつ、3次元画像を描画する際の頂点データの数を低減して、3次元画像の描画効率を向上することができる。
また、描画方法によれば、メッシュの面積が閾値以下であって、描画レベルがレベル2の場合、メッシュを表す複数の頂点データを削除することができる。これにより、描画方法は、メッシュの面積が大きいためにメッシュを描画しないと閲覧者に違和感を与えうる場合は、メッシュを描画することができる。一方で、描画方法は、メッシュの面積が小さいためにメッシュを描画しなくても閲覧者に違和感を与えない場合は、3次元画像の形状を維持しつつ、3次元画像を描画する際の頂点データの数を低減して、3次元画像の描画効率を向上することができる。
また、描画方法によれば、描画レベルがレベル3の場合、メッシュに含まれる2つの面に共通する稜線の端点となる2つの頂点データの中間の頂点データを作成し、2つの頂点データを削除することができる。これにより、描画方法は、3次元画像の形状を維持しつつ、3次元画像を描画する際の頂点データの数を低減して、3次元画像の描画効率を向上することができる。
なお、本実施の形態で説明した描画方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本描画プログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVD等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また本描画プログラムは、インターネット等のネットワークを介して配布してもよい。
上述した実施の形態に関し、さらに以下の付記を開示する。
(付記1)コンピュータが、
3次元画像を形成するメッシュに設定された、前記メッシュを表す複数の頂点データの削除度合いを示す間引きレベルに応じて、前記メッシュに対する間引き処理を行い、
前記間引き処理された前記メッシュの頂点データに基づいて、前記3次元画像の描画処理を行う、
処理を実行することを特徴とする描画方法。
(付記2)前記間引き処理を行う処理は、前記メッシュの間引きレベルが前記複数の頂点データを削除することを示すレベルである場合、前記複数の頂点データを削除することを特徴とする付記1に記載の描画方法。
(付記3)前記コンピュータが、
表示画面上の前記メッシュの面積を算出する処理を実行し、
前記間引き処理を行う処理は、前記メッシュの間引きレベルが前記複数の頂点データを削除することを示すレベルであり、前記面積が閾値以下である場合、前記複数の頂点データを削除することを特徴とする付記2に記載の描画方法。
(付記4)前記間引き処理を行う処理は、前記メッシュの間引きレベルが前記複数の頂点データを削除することを示すレベルであるが、前記面積が閾値以下でない場合、前記複数の頂点データを削除しないことを特徴とする付記3に記載の描画方法。
(付記5)前記間引き処理を行う処理は、前記メッシュの間引きレベルが前記メッシュに含まれる2つの面に共通する稜線を削除することを示すレベルである場合、前記複数の頂点データのうちの前記稜線の端点となる2つの頂点データを削除し、前記2つの頂点データの中間を示す頂点データを追加することを特徴とする付記1〜4のいずれか一つに記載の描画方法。
(付記6)前記間引き処理を行う処理は、前記メッシュの間引きレベルが前記複数の頂点データを削除しないことを示すレベルである場合、前記複数の頂点データを削除しないことを特徴とする付記1〜5のいずれか一つに記載の描画方法。
(付記7)前記間引き処理を行う処理は、3次元画像を形成するメッシュごとに設定された、当該メッシュを表す複数の頂点データの削除度合いを示す間引きレベルに応じて、当該メッシュに対する間引き処理を行い、
前記描画処理を行う処理は、前記間引き処理された前記メッシュごとの頂点データに基づいて、前記3次元画像の描画処理を行うことを特徴とする付記1〜6のいずれか一つに記載の描画方法。
(付記8)3次元画像を形成するメッシュに設定された、前記メッシュを表す複数の頂点データの削除度合いを示す間引きレベルに応じて、前記メッシュに対する間引き処理を行う間引き部と、
前記間引き処理された前記メッシュの頂点データに基づいて、前記3次元画像の描画処理を行う描画部と、
を有することを特徴とする描画装置。
(付記9)コンピュータに、
3次元画像を形成するメッシュに設定された、前記メッシュを表す複数の頂点データの削除度合いを示す間引きレベルに応じて、前記メッシュに対する間引き処理を行い、
前記間引き処理された前記メッシュの頂点データに基づいて、前記3次元画像の描画処理を行う、
処理を実行させることを特徴とする描画プログラム。
100 描画装置
401 間引き部
402 描画部

Claims (8)

  1. コンピュータが、
    3次元画像を形成するメッシュに設定された、前記メッシュを表す複数の頂点データの削除度合いを示す間引きレベルに応じて、前記メッシュに対する間引き処理を行い、
    前記間引き処理された前記メッシュの頂点データに基づいて、前記3次元画像の描画処理を行う、
    処理を実行することを特徴とする描画方法。
  2. 前記間引き処理を行う処理は、前記メッシュの間引きレベルが前記複数の頂点データを削除することを示すレベルである場合、前記複数の頂点データを削除することを特徴とする請求項1に記載の描画方法。
  3. 前記コンピュータが、
    表示画面上の前記メッシュの面積を算出する処理を実行し、
    前記間引き処理を行う処理は、前記メッシュの間引きレベルが前記複数の頂点データを削除することを示すレベルであり、前記面積が閾値以下である場合、前記複数の頂点データを削除することを特徴とする請求項2に記載の描画方法。
  4. 前記間引き処理を行う処理は、前記メッシュの間引きレベルが前記複数の頂点データを削除することを示すレベルであるが、前記面積が閾値以下でない場合、前記複数の頂点データを削除しないことを特徴とする請求項3に記載の描画方法。
  5. 前記間引き処理を行う処理は、前記メッシュの間引きレベルが前記メッシュに含まれる2つの面に共通する稜線を削除することを示すレベルである場合、前記複数の頂点データのうちの前記稜線の端点となる2つの頂点データを削除し、前記2つの頂点データの中間を示す頂点データを追加することを特徴とする請求項1〜4のいずれか一つに記載の描画方法。
  6. 前記間引き処理を行う処理は、前記メッシュの間引きレベルが前記複数の頂点データを削除しないことを示すレベルである場合、前記複数の頂点データを削除しないことを特徴とする請求項1〜5のいずれか一つに記載の描画方法。
  7. 3次元画像を形成するメッシュに設定された、前記メッシュを表す複数の頂点データの削除度合いを示す間引きレベルに応じて、前記メッシュに対する間引き処理を行う間引き部と、
    前記間引き処理された前記メッシュの頂点データに基づいて、前記3次元画像の描画処理を行う描画部と、
    を有することを特徴とする描画装置。
  8. コンピュータに、
    3次元画像を形成するメッシュに設定された、前記メッシュを表す複数の頂点データの削除度合いを示す間引きレベルに応じて、前記メッシュに対する間引き処理を行い、
    前記間引き処理された前記メッシュの頂点データに基づいて、前記3次元画像の描画処理を行う、
    処理を実行させることを特徴とする描画プログラム。
JP2013149187A 2013-07-18 2013-07-18 描画方法、描画装置、および描画プログラム Active JP6199101B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013149187A JP6199101B2 (ja) 2013-07-18 2013-07-18 描画方法、描画装置、および描画プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013149187A JP6199101B2 (ja) 2013-07-18 2013-07-18 描画方法、描画装置、および描画プログラム

Publications (2)

Publication Number Publication Date
JP2015022462A true JP2015022462A (ja) 2015-02-02
JP6199101B2 JP6199101B2 (ja) 2017-09-20

Family

ID=52486867

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013149187A Active JP6199101B2 (ja) 2013-07-18 2013-07-18 描画方法、描画装置、および描画プログラム

Country Status (1)

Country Link
JP (1) JP6199101B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108364356A (zh) * 2018-02-28 2018-08-03 辽宁科技大学 一种牙齿三维网格模型的自动分割方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10172003A (ja) * 1996-12-13 1998-06-26 Sony Corp 形状データの近似化方法及び描画装置
JPH11339061A (ja) * 1998-05-22 1999-12-10 Fujitsu Ltd 階層化ポリゴンデータを用いた3次元ポリゴン表示装置
JP2000242807A (ja) * 1999-02-23 2000-09-08 Fujitsu Ltd 3次元ポリゴン表示装置
JP2002140374A (ja) * 2000-11-02 2002-05-17 Suzuki Motor Corp 曲面上メッシュデータ作成方法及び装置並びに曲面上メッシュデータ作成用プログラムを記憶した記憶媒体
JP2011185650A (ja) * 2010-03-05 2011-09-22 Omron Corp モデル作成装置およびモデル作成プログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10172003A (ja) * 1996-12-13 1998-06-26 Sony Corp 形状データの近似化方法及び描画装置
JPH11339061A (ja) * 1998-05-22 1999-12-10 Fujitsu Ltd 階層化ポリゴンデータを用いた3次元ポリゴン表示装置
JP2000242807A (ja) * 1999-02-23 2000-09-08 Fujitsu Ltd 3次元ポリゴン表示装置
JP2002140374A (ja) * 2000-11-02 2002-05-17 Suzuki Motor Corp 曲面上メッシュデータ作成方法及び装置並びに曲面上メッシュデータ作成用プログラムを記憶した記憶媒体
JP2011185650A (ja) * 2010-03-05 2011-09-22 Omron Corp モデル作成装置およびモデル作成プログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
狩野仁美, 外2名: ""面情報を用いた形状簡略化に関する一考察"", 映像情報メディア学会誌, vol. 第56巻, 第2号, JPN6017013923, 1 February 2002 (2002-02-01), JP, pages 307 - 314, ISSN: 0003620049 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108364356A (zh) * 2018-02-28 2018-08-03 辽宁科技大学 一种牙齿三维网格模型的自动分割方法
CN108364356B (zh) * 2018-02-28 2021-08-27 辽宁科技大学 一种牙齿三维网格模型的自动分割方法

Also Published As

Publication number Publication date
JP6199101B2 (ja) 2017-09-20

Similar Documents

Publication Publication Date Title
US10650495B2 (en) High resolution style transfer
JP6266656B2 (ja) 画像をサイズ変更するためのシステム及び方法
EP2887305B1 (en) Resizing an image
KR102646818B1 (ko) 그래픽스 파이프라인에서의 인덱스들의 압축 및 압축 해제
KR20130097886A (ko) 렌더링 장치 및 그 방법
JPH11339061A (ja) 階層化ポリゴンデータを用いた3次元ポリゴン表示装置
JP6199101B2 (ja) 描画方法、描画装置、および描画プログラム
US20150242988A1 (en) Methods of eliminating redundant rendering of frames
JP4827659B2 (ja) 画像処理装置、画像処理方法、及びコンピュータプログラム
CN111133474B (zh) 图像处理设备、图像处理方法和计算机可读记录介质
JP2002298153A (ja) 4ピクセル・テクスチャ・パイプラインにおけるパースペクティブ補正テクスチャ座標のための偏導関数生成
KR101582578B1 (ko) 그래픽 처리 장치 및 방법
CN111951348A (zh) 确定框选区域的方法、装置及电子设备
US8605112B2 (en) Graphics drawing apparatus, method, and program and recording medium on which the program is recorded
JP2019121237A (ja) プログラム、画像処理方法、及び画像処理装置
US10593111B2 (en) Method and apparatus for performing high throughput tessellation
JP2021144428A (ja) データ処理装置、データ処理方法
JP7456553B2 (ja) 画像処理装置、方法およびプログラム
JP2021086251A (ja) 動画データの生成方法、動画データ生成装置、及びプログラム
JP5719271B2 (ja) 画像処理方法、画像処理装置及び画像処理プログラム
WO2023037447A1 (ja) 画像処理装置、方法およびプログラム
JP5640545B2 (ja) 情報処理装置およびプログラム
JP7303340B2 (ja) プログラム、画像処理方法、及び画像処理装置
US20240054665A1 (en) Image processing apparatus, method, and program
JP2011097474A (ja) 画像処理装置および画像処理方法

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20160118

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160706

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170410

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170420

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170718

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170823

R150 Certificate of patent or registration of utility model

Ref document number: 6199101

Country of ref document: JP

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