特表2017-532662(P2017-532662A)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ クビティの特許一覧

特表2017-532662ネットワーク転送およびリアルタイムレンダリング用に3Dテクスチャモデルを自動的に最適化するシステム、方法、およびコンピュータプログラム製品
<>
  • 特表2017532662-ネットワーク転送およびリアルタイムレンダリング用に3Dテクスチャモデルを自動的に最適化するシステム、方法、およびコンピュータプログラム製品 図000003
  • 特表2017532662-ネットワーク転送およびリアルタイムレンダリング用に3Dテクスチャモデルを自動的に最適化するシステム、方法、およびコンピュータプログラム製品 図000004
  • 特表2017532662-ネットワーク転送およびリアルタイムレンダリング用に3Dテクスチャモデルを自動的に最適化するシステム、方法、およびコンピュータプログラム製品 図000005
  • 特表2017532662-ネットワーク転送およびリアルタイムレンダリング用に3Dテクスチャモデルを自動的に最適化するシステム、方法、およびコンピュータプログラム製品 図000006
  • 特表2017532662-ネットワーク転送およびリアルタイムレンダリング用に3Dテクスチャモデルを自動的に最適化するシステム、方法、およびコンピュータプログラム製品 図000007
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】特表2017-532662(P2017-532662A)
(43)【公表日】2017年11月2日
(54)【発明の名称】ネットワーク転送およびリアルタイムレンダリング用に3Dテクスチャモデルを自動的に最適化するシステム、方法、およびコンピュータプログラム製品
(51)【国際特許分類】
   G06T 15/04 20110101AFI20171006BHJP
【FI】
   G06T15/04
【審査請求】未請求
【予備審査請求】未請求
【全頁数】17
(21)【出願番号】特願2017-513811(P2017-513811)
(86)(22)【出願日】2015年9月9日
(85)【翻訳文提出日】2017年3月7日
(86)【国際出願番号】EP2015070613
(87)【国際公開番号】WO2016038091
(87)【国際公開日】20160317
(31)【優先権主張番号】14306405.3
(32)【優先日】2014年9月12日
(33)【優先権主張国】EP
(81)【指定国】 AP(BW,GH,GM,KE,LR,LS,MW,MZ,NA,RW,SD,SL,ST,SZ,TZ,UG,ZM,ZW),EA(AM,AZ,BY,KG,KZ,RU,TJ,TM),EP(AL,AT,BE,BG,CH,CY,CZ,DE,DK,EE,ES,FI,FR,GB,GR,HR,HU,IE,IS,IT,LT,LU,LV,MC,MK,MT,NL,NO,PL,PT,RO,RS,SE,SI,SK,SM,TR),OA(BF,BJ,CF,CG,CI,CM,GA,GN,GQ,GW,KM,ML,MR,NE,SN,TD,TG),AE,AG,AL,AM,AO,AT,AU,AZ,BA,BB,BG,BH,BN,BR,BW,BY,BZ,CA,CH,CL,CN,CO,CR,CU,CZ,DE,DK,DM,DO,DZ,EC,EE,EG,ES,FI,GB,GD,GE,GH,GM,GT,HN,HR,HU,ID,IL,IN,IR,IS,JP,KE,KG,KN,KP,KR,KZ,LA,LC,LK,LR,LS,LU,LY,MA,MD,ME,MG,MK,MN,MW,MX,MY,MZ,NA,NG,NI,NO,NZ,OM,PA,PE,PG,PH,PL,PT,QA,RO,RS,RU,RW,SA,SC,SD,SE,SG,SK,SL,SM,ST,SV,SY,TH,TJ,TM,TN,TR,TT,TZ,UA,UG,US
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.ANDROID
(71)【出願人】
【識別番号】517080430
【氏名又は名称】クビティ
(74)【代理人】
【識別番号】110001173
【氏名又は名称】特許業務法人川口國際特許事務所
(72)【発明者】
【氏名】ドゥルプラス,バランタン
(72)【発明者】
【氏名】ゴラ,ロマン
(72)【発明者】
【氏名】マルシャル,クレマン
(72)【発明者】
【氏名】セッチア,シルバン
(72)【発明者】
【氏名】ショーナー,ニコラ
(72)【発明者】
【氏名】バスール,ニコラ
【テーマコード(参考)】
5B080
【Fターム(参考)】
5B080AA14
5B080BA02
5B080CA03
5B080CA04
5B080CA05
5B080DA06
5B080FA09
5B080GA22
(57)【要約】
ネットワーク転送およびリアルタイムレンダリング用の3Dテクスチャモデルを自動的に最適化する方法を記述する。本方法は、いかなるユーザーも3Dテクスチャモデルのリアルタイムレンダリングを透過的に得られるようにする2次関数的簡素化アルゴリズムに基づいている。本アルゴリズムは、所定の経験則を用いて実行され、3Dモデルの複数の簡素化されたバージョンに関連付けられていて、各々簡素バージョンはユーザー固有の環境に適合された所定の詳細レベルに関連付けられている。
【特許請求の範囲】
【請求項1】
目標アプリケーションにおけるネットワーク転送およびリアルタイムレンダリング用の3Dテクスチャモデルを自動最適化するコンピュータ実装された方法であって、
−3Dテクスチャモデルの3Dデータコンテンツおよび目標アプリケーションに関連付けられた複数の目標パラメータを受信するステップと、
−前記データコンテンツから、ジオメトリおよび複数のテクスチャを抽出するステップと、
−前記複数の目標パラメータの第1の組を用いることにより、前記ジオメトリに対して集約アルゴリズムを適用して集約されたジオメトリを得て、続いて集約されたジオメトリに対して簡素化アルゴリズムを適用して複数の簡素化されたジオメトリバージョンを得るステップと、
−前記複数の目標パラメータの第2の組を用いて、前記複数のテクスチャに対して縮退アルゴリズムを適用して複数の縮退されたテクスチャバージョンを得るステップと、
−前記複数の簡素化されたジオメトリバージョンを前記複数の縮退されたテクスチャバージョンと共に直列化することにより直列化された最適化された3Dデータコンテンツを得るステップとを含む方法。
【請求項2】
前記簡素化ステップが、経験的および/または2次関数的簡素化を適用するものである、請求項1に記載の方法。
【請求項3】
簡素化されたジオメトリバージョンに各々の詳細レベルが関連付けられている、請求項2に記載の方法。
【請求項4】
前記集約ステップが、3Dデータコンテンツのオブジェクトにランク付けするステップを含んでいる、請求項3に記載の方法。
【請求項5】
前記直列化ステップが、1個の簡素化されたジオメトリバージョンを1個の縮退されたテクスチャバージョンにより直列化するものである、請求項1〜4のいずれか1項に記載の方法。
【請求項6】
前記縮退ステップが更に、前記直列化ステップの前に、前記縮退されたテクスチャバージョンを変換するステップを含んでいる、請求項1〜5のいずれか1項に記載の方法。
【請求項7】
前記直列化ステップが、少なくとも1個の簡素化されたジオメトリバージョンを少なくとも1個の変換且つ縮退されたテクスチャバージョンにより直列化するものである、請求項6の方法。
【請求項8】
前記直列化されたバージョンに関連付けられた3Dデータを格納するステップを更に含んでいる、請求項1〜7のいずれか1項に記載の方法。
【請求項9】
適当なコンピュータ装置上で実行された場合に、請求項1〜8のいずれか1項に記載の方法のステップを実行する命令を含むコンピュータプログラム。
【請求項10】
請求項1〜8のいずれか1項に記載の方法のステップを実行するのに適した手段を含むシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、多次元デジタルデータ処理の分野に関し、より具体的にはネットワーク転送およびリアルタイムレンダリング用にテクスチャ3Dモデルを自動的に最適化するシステム、方法、およびコンピュータプログラム製品に関する。
【背景技術】
【0002】
コンピュータグラフィックスは、益々複雑になる3次元的表現の見栄えを含む複雑な画像の生成を可能にしている。3Dコンピュータグラフィックスにおいて、3Dモデリングは、専用ソフトウェアを介して物体(無生物または生物)の任意の3次元の表面に数学的表現を生成する処理である。その成果物は3Dモデルと呼ばれる。3Dモデルは、3Dレンダリングと呼ばれる処理を通じて2次元画像としてのコンピュータ画面に表示すること、または物理的現象のコンピュータシミュレーションで利用することができる。3Dレンダリングは、オプションとして素材を設定可能な3Dワイヤフレームモデルをコンピュータ上での3Dの写実的または非写実的レンダリングにより2D画像に自動的に変換する3Dコンピュータグラフィック処理である。3Dモデルは自動的にまたは手動で生成されてよい。モデリングアプリケーションまたはモデラーと呼ばれる3Dモデリングソフトウェアは、3Dモデルの作成に用いる3Dコンピュータグラフィックスソフトウェアのクラスである。
【0003】
ゲームおよびシミュレーション等の対話型3D用のレンダリングは、毎秒約20〜120フレームの速度でリアルタイムで計算および表示される。リアルタイムレンダリングの究極的目標は、数分の1秒で目が処理できる程度の情報を示すことである。1フレームにおいて、毎秒30フレームの場合、フレームのアニメーションは一般に30分の1秒間にわたる。従って、人間の目に動きを感じさせるために最低限必要な毎秒24フレームに通常設定されている受容可能な最低レンダリング速度で可能な限り高いレンダリング品質を実現するために主な妥協がなされる。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】国際公開第2016/038090号
【非特許文献】
【0005】
【非特許文献1】M.Garland,“Quadric−based Polygonal Surface Simplification Michael Garland School of computer sciences Carnegie Mellon University”
【発明の概要】
【発明が解決しようとする課題】
【0006】
3Dのウェブアプリケーションまたはモバイル機器、スマートフォン等との一体化が進むにつれて、3次元的表現の専用家でない多くのユーザーが自身の3D体験を他者と対話的に簡単に共有できることが必要である。
【0007】
しかし、表面を簡素化する問題は増加しつつある問題であり、今日簡単な解決策は存在しない。ユーザーによるパラメータ化を一切必要とすることなく、任意の3Dモデルを自動的に簡素化する透明的な方法に対するニーズがある。
【0008】
更に、非専用家のエンドユーザーが3Dモデルを生成、アクセス、操作、および共有するニーズもある。
【0009】
従って、3Dモデルのリアルタイムレンダリングを扱うための改良されたシステム、方法、および、コンピュータプログラム製品が必要とされている。本発明は、このニーズに対する解決策を提供する。
【課題を解決するための手段】
【0010】
従って、本発明の目的は、非標準または歪んだテクスチャ座標を有するあらゆる種類のジオメトリ(幾何学的形状)、すなわち平坦、有機物等に対して実施可能な多様な解決策を提供することである。提案する方式はユーザーにとって透過的であり、ユーザーは3Dモデリングに関する特定の専用知識を有していなくてよい。
【0011】
有利な特徴として、当該処理により高速且つ原モデルの簡素化が可能になる。
【0012】
有利な特徴として、本方法により、1回の操作でユーザーに簡素化モデルを数秒で表示し、当該簡素化モデルは最適化された最終レンダリングを有している。
【0013】
上述の目的を実現するために、添付の独立請求項1に、9および10に詳述するようなシステム、方法、およびコンピュータプログラム製品を提供する。
【0014】
特に、目標アプリケーションにおけるネットワーク転送およびリアルタイムレンダリング用の3Dテクスチャモデルを自動最適化するコンピュータ実装された方法は以下のステップ、すなわち
−3Dテクスチャモデルの3Dデータコンテンツおよび目標アプリケーションに関連付けられた複数の目標パラメータを受信するステップと、
−3Dデータコンテンツから、ジオメトリおよび複数のテクスチャを抽出するステップと、
−複数の目標パラメータの第1の組を用いて、ジオメトリに対して集約および簡素化アルゴリズムを適用して複数の簡素化されたジオメトリバージョンを得るステップと、
−複数の目標パラメータの第2の組を用いて、複数のテクスチャに対して縮退アルゴリズムを適用して複数の縮退されたテクスチャバージョンを得るステップと、
−複数の簡素化されたジオメトリバージョンを複数の縮退されたテクスチャバージョンと共に直列化することにより直列化された3Dデータコンテンツを得るステップとを含んでいる。
【0015】
一実施形態において、簡素化ステップは、経験的および/または2次関数的簡素化を適用するものである。別の実施形態において、簡素化されたジオメトリバージョンに各々の詳細レベルが関連付けられている。
【0016】
一代替案において、集約ステップは、3Dデータコンテンツのオブジェクトにランク付けするステップを含んでいる。
【0017】
更に、直列化ステップは、1個の簡素化されたジオメトリバージョンを1個の縮退されたテクスチャバージョンにより直列化するものである。
【0018】
一実施形態において、縮退ステップは更に、直列化ステップの前に、縮退されたテクスチャバージョンを変換するステップを含んでいる。別の実施形態において、直列化ステップは、少なくとも1個の簡素化されたジオメトリバージョンを少なくとも1個の変換且つ縮退されたテクスチャバージョンにより直列化するものである。
【0019】
一実施形態において、直列化されたバージョンに関連付けられた3Dデータは、ローカルデータベースに格納される。
【0020】
本発明はまた、本方法のステップを実行すべく適合された手段を含むシステムを提供する。
【0021】
本発明はまた、非一時的計算機可読記憶媒体を含むコンピュータプログラム製品、および計算機可読記憶媒体に格納されたプログラムコードとして提供され、実行時に、プロセッサに本方法のステップを動作させるべく構成されていてよい。
【0022】
本発明の更なる態様について、好適な実装および例を通じて、添付図面を参照しながら以下に述べる。
【0023】
本発明の上述およびその他の項目、特徴および利点について、本発明の以下のより具体的な記述を図面を参照しながら読解することにより理解が深まるであろう。
【図面の簡単な説明】
【0024】
図1】本発明を実行する一般的コンピュータ環境を示す。
図2】本発明の一実施形態によるレンダリングプロセスの一般的フロー図である。
図3】本発明の一実施形態による一括化処理の詳細フロー図である。
図4】本発明の一実施形態による間引き処理の詳細フロー図である。
図5】3Dモデルを最適化する処理の代替的な実施形態のフロー図である。
【発明を実施するための形態】
【0025】
全ての図面を通じて同一要素を同一番号で示すことを理解されたい。
【0026】
本発明の実施形態は一般に、コンピュータ装置におけるネットワーク転送およびリアルタイムレンダリング用に3Dテクスチャモデルを自動的に最適化するシステム、方法、およびコンピュータプログラム製品を目的とする。
【0027】
図1を参照するに、本発明を実行するコンピュータ装置100を示す。コンピュータ装置は、少なくとも1個のプロセッサ102、および当該少なくとも1個のプロセッサ102に接続されたメモリ104を含んでいる。メモリ104は、ランダムアクセスメモリ(RAM)、および他の任意の補助的レベルのメモリ、例えばキャッシュメモリ、不揮発性またはバックアップメモリ(例:プログラム可能またはフラッシュメモリ)、読出し専用メモリ等であってよい。また、メモリ104は、例えばマイクロプロセッサ内の任意のキャッシュメモリ等の物理的メモリストレージ、あるいは、例えば、大容量記憶装置またはコンピュータ装置100に接続された別のコンピュータに格納された仮想メモリとして用いる任意の記憶容量を含んでいると考えてよい。
【0028】
コンピュータ装置100は、ユーザーまたは操作者とのインターフェースとして、1個以上のユーザー入出力装置、例えばキーボード、位置指示装置、ディスプレイ、プリンタ等が組み込まれたユーザーインターフェース106を含んでいてよい。あるいは、任意の通信回路網に接続されたネットワークインターフェース108を介して別のコンピュータとの間でデータ通信を行うことができる。コンピュータ装置100は、例えば内蔵ハードディスク記憶装置、外部ハードディスク記憶装置、外部データベース、ストレージエリアネットワーク装置等、1個以上の大量記憶装置と通信状態にあってよい。
【0029】
コンピュータ装置はまた、3Dコンテンツの最終レンダリングを計算してコンピュータディスプレイに表示させるために送信すべく、ビデオランダムアクセスメモリ(VRAM)を有するグラフィックスカード110を含んでいる。
【0030】
コンピュータ装置100は典型的に、オペレーティングシステム103の制御下で動作し、各種のコンピュータソフトウェアアプリケーション、コンポーネント、プログラム、オブジェクト、モジュール、エンジン、データ構造等を実行するかまたはこれらに依存する。特に、コンポーネントおよびアプリケーションは、入力3Dコンテンツコンポーネント120、ジオメトリ集約コンポーネント122、ジオメトリ簡素化コンポーネント124、テクスチャ縮退コンポーネント126、テクスチャ形式変換コンポーネント128、および直列化コンポーネント130を含んでいてよい。
【0031】
入力3Dコンテンツコンポーネント120は、例えば3Dモデルを提供するGoogle Sketch Up(登録商標)アプリケーションまたはBlender(登録商標)アプリケーション等のローカルネイティブアプリケーションからの3Dモデルを含んでいてよい。
【0032】
コンピュータ装置100はまた、例えば、3Dレコードデータベース、目標パラメータ、および最適パラメータデータベースを含む1個以上のデータベース132を含んでいてよい。3Dレコードデータベースは、3Dデータを格納および編成するデータおよび対応データ構造を含んでいてよい。特に、3Dレコードデータベースは、リレーショナルデータベース、階層型データベース、ネットワークデータベース、および/またはこれらの組合せを含むがこれらに限定されない任意のデータベース編成および/または構造に構成されていてよい。コンピュータ装置100の処理装置上で命令として動作するコンピュータソフトウェアアプリケーション形式のデータベース管理システムを用いて、データベース132に格納された情報、パラメータ、またはデータにアクセスすることができる。
【0033】
コンピュータ装置は、遠隔サーバおよび/またはいわゆるクラウドコミュニティのコンピュータとの間で3Dモデルの通信、転送、交換を可能にする専用および/または公共ネットワーク、例えばインターネット等のネットワークに接続されていてよい。
【0034】
本願出願人により同日に出願された特許出願「System, Method and Computer Program Product for injecting directly into a web browser commands and/or contents created on local desktop applications of a computer device, and vice−versa」(国際公開第2016/038090A1号パンフレット)に、3D最適化されたモデルのローカルウェブブラウザまたは遠隔サーバへの転送を可能にする各種の実施形態の詳細な記述が開示されている。
【0035】
図2に、本発明の一実施形態のワークフローの一例の全般的概要を示す。一般に、本方法は、3Dデータコンテンツおよび目標アプリケーションに関連付けられた複数の目標パラメータを受信するステップと、当該3Dデータコンテンツからジオメトリおよび複数のテクスチャをから抽出するステップと、複数の目標パラメータの第1の組を用いることにより、ジオメトリに対して集約アルゴリズムを適用して集約されたジオメトリを得て、続いて集約されたジオメトリに対して簡素化アルゴリズムを適用して簡素化済みの集約されたジオメトリバージョンの複数バージョンを得るステップと、複数の目標パラメータの第2の組を用いることにより、複数のテクスチャに対して縮退アルゴリズムを適用して複数の縮退されたテクスチャバージョンを得るステップと、複数の縮退されたテクスチャバージョンにより、複数の簡素化済みの集約されたジオメトリバージョンを直列化して直列化された3Dデータコンテンツを得るステップとを含んでいる。
【0036】
以下に詳述するように、3Dモデル、例えばカプセル化または分析対象のモデルがステップ202で受信される。3Dモデルは一般に、ジオメトリ面を画定または近似する多角形メッシュにより一般的に表現される3D形状を含んでいる。湾曲面について、近似の精度は表現に用いる多角形の個数に比例する。有利な特徴として、所定の閾値を超える個数の頂点を有するモデルを処理用に分割してGPU計算を最適化することができる。実装に際して、モデルの頂点の最大個数の閾値は65536の頂点に制限されている。
【0037】
受信したデータから、以下に詳述するように、一方が3Dモデルのジオメトリの処理(ステップ204〜212)、他方が3Dモデルのテクスチャの処理(ステップ214〜220)である2系統のステップが好適には高速処理の目的で並列に実行されるが、逐次的に実行されてもよい。
【0038】
ステップ204において3Dモデルから3Dジオメトリが抽出される。いくつかのアルゴリズムは他より高速であり得るため、摘出ステップは複数の仕方で実行することができる。摘出ステップは、受信した複数のモデルについて繰り返すことができる。1個以上の受信したモデルから1個以上のジオメトリが抽出された後で、更なるステップ206は、異なるジオメトリを集約(一括化とも呼ぶ)するものであってよい。一実施形態において、複数のジオメトリは複数のオブジェクトまたはユニットあるいはサブユニットに分解することができ、1個のオブジェクトまたはユニット、サブユニットは、オブジェクトまたはサブユニットの融合/併合を可能にする所定の粒度レベルにある。大域的3Dシーンの集約206または再配置あるいは構成は、「目標パラメータ」201(例えば経験則)により誘導または制御することができる。
【0039】
3Dシーンが任意選択的に最適化された後で、更なるステップ208は、シーンを簡素化するものである。図4を参照しながら更に詳述する簡素化または間引きステップ212もまた最適化することができる。例えば、受信した3Dモデルからの各オブジェクトの大多数が併合されている場合、再構築されたシーンを過度に簡素化しないことに関心を持ってよい。例えば、レンダリング装置(コンピュータ、スマートフォン)の処理能力に応じて、更なる計算のために大域的3Dシーンを最適化することができる。目標パラメータは、これらの側面を考慮に入れることができる。一実施形態において、目標パラメータは、ランキングスコアおよび付随する閾値の管理に関連付けられている。特に、3Dシーンは、例えば、求められる詳細レベルに応じて扱い方が異なっていてよい(210)。詳細レベル(LOD)は、シーンを動的に見ている場合に、レンダリング効率の向上を図るものである。モデルの詳細バージョンは、通常は画像サイズにより決定される現在のビュー内での物体の重要度に応じて、シーンデータベースとの間でスワップイン/アウトすることができる。例えば、画面が小さくて帯域幅および処理能力(例えば可動性)が限られるスマートフォンは、強力な家庭用メディアサーバ(HDTVでのインターネット閲覧および家庭向け光ファイバアクセス)よりも低い詳細レベルで済む。エンドユーザー機器の構成は、3Dシーンのレンダリングおよび探索に最適なパラメータを決定する。
【0040】
ドローコール(描画呼び出し)の回数を最小化して間引きレンダリングを最適化すべく、有利な特徴として、使用する目標パラメータは、素材、距離、およびサイズに関係している。一括化は、値の順に応じて分類されるメッシュノードのペアによりプルキュー(取り出しキュー)を生成するものである。各ペアの値は、ノード同士で共通の素材、ノード間の距離、およびノードのサイズに応じて計算される。
【0041】
ステップ214において、3Dモデルから複数のテクスチャが抽出される。得られたテクスチャは次いでステップ216で縮退される。縮退ステップは例えばデータ圧縮ステップを含んでいてよい。縮退ステップは、目標パラメータ201により制御することができる。テクスチャは次いで特定の形式に変換され(218)、ステップ220において縮退または変換されたテクスチャが得られる。
【0042】
モデルからのジオメトリおよびテクスチャ抽出の後、直列化ステップ222が実行される。得られたジオメトリおよびテクスチャは集約または組立あるいは併合または関連付けられる。集約および/または簡素化された3Dモデルは従って縮退および/または変換されたテクスチャに関連付けられる。
【0043】
ステップ224において、受信した複数の3Dモデルに関して、テクスチャおよびジオメトリが変更済みの最適化された3Dモデルが得られる。最適化された3Dモデルはまた、例えば初期目標パラメータを含むメタパラメータ226に関連付けられており、最適パラメータは、テクスチャとジオメトリとの間の妥協、および他のメタデータについて決定されている。
【0044】
図3、4は、受信した3Dシーンに関連付けられたジオメトリおよびテクスチャの扱いの詳細事項の更にいくつかを示す。
【0045】
図3に、集約ステップ204(一括化とも呼ぶ)の詳細を示す。一般に、本方法は、M.Garlandにより“Quadric−based Polygonal Surface Simplification Michael Garland School of computer sciences Carnegie Mellon University”において提案された公知の2次関数的簡素化アルゴリズムから導かれたものである。本発明の目的のために、点の畳み込みペア用の局所的畳み込み演算子、および上面誤差量を用いる。3Dメッシュ化は、2個の点を1個で代替し、次いで縮退面を削除して新たな隣接関係を更新することにより簡素化される。更に詳述するように、汎用アルゴリズムは、原モデルの各上面に2次関数を設定し、次いで、頂点により接続されているかまたはジオメトリ的に閉じた隣接上面の全てのペアを識別するステップを含んでいる。各ペアに対して、畳み込みに最適な点および付随する誤差を計算し、次いで当該ペアを誤差ランキングの優先順位リストに挿入して、最上位ペアを縮退させる。当該処理は、一定個数の面または画定された最大の誤差を得るまで繰り返される。有利な特徴として、2次関数アルゴリズム処理に特定の経験則を追加することにより、本発明の方法を簡素化計算を表面の属性、モデルの境界、および異なるテクスチャ間の境界に適合させることができる。
【0046】
従って、以下に詳述するように、ジオメトリはステップ300において分解されるかまたは複数のオブジェクトに構成される。オブジェクトの1個以上のペアが当該モデルで決定され、1個のペアとは、所定の閾値を考慮することによりいくつかのオブジェクトを同化したものと言うことができる。当該処理は、ステップ302において、考慮するペアが集約に適しているか否かを判定することができる。適している場合、併合対象であるオブジェクトの傾向に基づいてペアランクが計算される(304)。ペアランクは次いで、ステップ306でランキングリストに追加される。次いで、3Dシーンから導かれたオブジェクトの複数のペアに対してステップ302〜306が繰り返され、ランキング動作が完了する。当該処理は、ステップ308において、ランクリストが空であるか否かを判定することができる。yesの場合は、一括化処理が終了し、得られた集約ジオメトリ318を(図4を参照しながら詳述するように)簡素化処理に更に用いる。yesでない場合、オブジェクトの最高ランクのペアからのオブジェクトを併合(310)して新たな1個の集約されたオブジェクトを得る。ステップ312において、オブジェクトのペアからのオブジェクトの1個1個のインスタンスが新たな集約されたオブジェクトで代替される。そしてステップ314において、ランキングが更新される。オプションとして、新たな集約されたオブジェクトは新たな集約には適していない。3Dシーンを構成する複数のオブジェクトがランク付けおよび併合された後で、最終的な集約ジオメトリがステップ318で得られる。
【0047】
図4に、簡素化ステップ208(間引とも呼ぶ)の詳細を示す。ステップ318で既に得られた集約ジオメトリは、メッシュ簡素化アルゴリズムを用いて、オプションとしてステップ402で簡素化することができる。メッシュ簡素化は、原メッシュのトポロジまたは形状に忠実なまま、メッシュ内の多角形の個数を減らす。簡素化動作は、2次関数的誤差を用いて、および簡素化エンベロープまたは並列メッシュ簡素化、分散簡素化、詳細または並列視点依存メッシュ改良の並列的且つ階層的なレベルを用いて、1個以上の頂点を組み合わせることにより1個以上のエッジを縮退させるステップを含んでいる。モバイル機器およびタブレット向けのレンダリングを対象とする特定の実装において、簡素化ステップは、一括化されたモデルを間引いて200万個の三角形をフィットさせることを意図している。
【0048】
当該処理は、簡素化が最適であるか否かを判定(404)することができる。可能な都度、目標パラメータに関して最適な簡素化モード406が実行され、改良された簡素化がステップ408で保存される。終了時点410で、1個以上の詳細レベル(412)に関連付けられた1個以上の最適簡素化(414)が得られる。
【0049】
図5へ進み、3Dモデルを最適化する処理の別の実施形態について以下に述べる。
【0050】
当該処理は、小さく且つ高密度のDモデルの処理を対象とする2ステップの事前フェーズ、すなわち事前間引きフェーズおよび事前一括化フェーズから始まる。事前間引きステップ502は、モデルを密度に応じてソートするものであり、所定の閾値にわたり多数の三角形を有する3Dモデル、すなわち重いモデルの場合、メッシュ衝突を最小限に抑えるべく当該モデルは事前間引きされる。事前一括化している動作504は、シーン内の小さい孤立したオブジェクトを処理するものである。例えば、テーブル、複数の皿、および植木鉢を含む3Dシーンの場合、植木鉢は1個の小さい(三角形の個数の観点から)孤立した(単一インスタンスの観点から)オブジェクトと思われる。小さい孤立したオブジェクトは、一括化されて、新たなオブジェクトを生成すべく別の小さいオブジェクトと組み合わされる。
【0051】
次のステップ506は、初期3Dモデルの三角形の総個数が所定の閾値を超えた場合、較正された間引きを適用することができる。所定の閾値は、3Dモデルのレンダリングの目標装置に依存する目標パラメータとして定義される。
【0052】
あるアプリケーションにおいて、三角形の最大個数は200万個のオーダーである。本発明の処理は、連続的なステップにより、3Dモデルをタブレットおよびモバイル機器上でリアルタイム表示させるべく三角形の個数を200万個まで間引くことができる。本出願において、較正された間引きステップを適用する際の閾値は、三角形200万個に設定されている。
【0053】
較正された間引きにより、三角形の個数を制限すべく削除する三角形を決定することができる。三角形の個数、孤立したインスタンスであるか否かの属性に応じて、各モデルについて重みが計算される。テーブルおよび多数の皿を含むシーンの例で言えば、当該処理は、皿よりもテーブルの方に大きい重みを割り当て、三角形の個数を15%減らすべきならば、当該処理は次のステップ508で、皿の三角形のいくつかを間引く一方、最終レンダリングの品質を維持するためテーブルは間引かない。較正された間引きステップでは、各モデルに対して、削除する三角形の個数を表す間引きの値を生成することができる。
【0054】
次いで、次のステップ508では、重み計算の結果を適用したモデルに対する間引き動作が可能である。新たな間引きモデルが生成される。
【0055】
次のステップ510では、素材に応じてモデルを分類することができる。当該処理では更に、モデルが複数の素材からなるか否かを判定することができる。先の皿の例で皿が2個の異なる素材からなる場合、当該処理は、上面の素材および底面の異なる素材に応じて分類すべく皿を拡張することができる。当該皿のために2個のモデルが生成される。
【0056】
次に、当該処理では、分類されたモデルに一括化ステップ512を適用して、先行ステップの結果に応じてグループ化すべきモデルを判定することができる。ドローコールの回数の所定の目標パラメータを満たすべく一括化が実行される。ドローコールの都度グラフィックスAPIが重要な動作をするため、ドロー呼び出往々にして高負荷であり、CPU側で性能オーバーヘッドを生じさせる。本発明の一括化ステップにより、GPUメモリ使用状況を改善することができる。
【0057】
市販アプリケーションにおいて、GPUに対するドローコールの最大回数は、3Dモデルをタブレットおよびモバイル機器上でリアルタイムに表示可能にすべく、500ドローコール未満となっている。次いで、本出願では、一括化ステップのドローコール目標パラメータを、素材数を500素材インスタンスまで減らすことによりモデルを一括化すべく500ドローコール未満に設定している。
【0058】
最後に、ウェブブラウザ内でリアルタイム3Dのレンダリングを行う間、一括化されたモデルの生成が行われる。
【0059】
次のステップ514では、テクスチャ最適化動作を適用することができる。テクスチャ最適化処理は、テクスチャの元のサイズを変更(テクスチャ形式変換)する動作を実行する。好適には、サイズの上限は1024×1024ピクセルである。次いで、全てのテクスチャのサイズを、16×16、32×32、64×64、128×128、256×256、512×512および1024×1024のように最小値が16ピクセルである一辺が2のベキ乗個のピクセルからなる正方形単位に変更する。
【0060】
このように、上述のテクスチャサイズにより、GPUメモリを最大化して計算時間を短縮することができる。テクスチャの寸法が2のベキ乗であることを保証することにより、グラフィックスパイプラインは、例えば2のベキ乗の除算および乗算の方が高速である等、2のベキ乗を扱うことによる効率に関する最適化を利用することができる。更に有利な特徴として、2のベキ乗を扱うことでミップマップの計算および使用等、パイプライン内での動作が簡素化される。すなわち2のベキ乗である数は常に等分されるため、ミップマップ寸法の切り上げ/切り捨てが必要なシナリオを扱う必要が無いことを意味する。
【0061】
従って、テクスチャ最適化ステップは、テクスチャ目標パラメータを用いて目標レンダリングを満たすことを意図するものである。一つのテクスチャ目標パラメータとしてテクスチャの個数がある。市販アプリケーションにおいて、上限が128メガバイトに設定されている。別のテクスチャ目標パラメータは、最終テクスチャのサイズとの紐付けである。最終テクスチャのサイズは、3Dモデルで適用された表面と全表面との比較に依存する。例えば、75×49ピクセルのテクスチャが3Dモデルの全表面の50%を表す場合、テクスチャのサイズは64×64に変更される。しかし、同じテクスチャが3Dモデルの全表面の1%を表す場合、当該処理では16×16へのサイズ変更が可能である。この結果を得るには、素材に応じて表面が計算され、モデルの全表面およびメモリ制限に応じて各素材の全表面に重み付けがなされる。
【0062】
テクスチャサイズを最適化する一実施形態において、アルファチャネルが抽出される。アルファチャネルを含むPNG画像形式はJPEG形式に圧縮される。アルファチャネルは1ピクセル毎にバイナリ形式で格納される。次いで、モバイル機器上でJPEG形式がIOS用のPVRTC形式またはAndroid用のETC1形式に符号化される。有利な特徴として、符号化動作により、メモリ制限に関してテクスチャの個数を最適化することができる。
【0063】
最後に、次のステップ516で、ステップ222で上述したようにバイナリデータの直列化を行うことができる。
【0064】
図5を参照しながら述べてきた実施形態により、間引き動作をモデルの決定にのみ適用することでより速く間引きを行うことができる。更に、一括化動作によりモデルを記述するファイルが小さくなるため、ファイルの転送が大幅に改善される。
【0065】
本発明は特に、3Dプログラミングの専門家ではないエンドユーザーの関心を引くのである。有利な特徴として、本発明が提案する簡単な方式により、これらのユーザーは、特定のリアルタイム環境に対するモデルの影響を評価可能にするために対話型モデルが必要とされる、都市化、建築、ゲーム等のあらゆる商業分野、または他の任意の産業領域等、自身の特定の環境内で容易に3Dモデルを導入することができる。
【0066】
有利な特徴として、本発明は、複雑な3Dモデルの簡素化アルゴリズムを提供する最終的な最適化されたレンダリングモデルをユーザーとの一切の対話無しに自動的に生成することができ、モデルの生成は現在にコンテキストに合わせて決定された適当な詳細レベルを有している。更に、提案する簡素化アルゴリズムにより、すなわち平面境界、テクスチャ、複合オブジェクト、角度等のコンテキストの不連続性が維持される。
【0067】
当業者には、上述の実施形態は図示および説明目的で提示するものであって、網羅的ではなく、且つ本発明が開示した形式に限定されるものではない点を理解されよう。当業者には多くの変更および変形が明らかになろう。上述の実施形態は本発明の原理、現実的な用途を最も分かりやすく説明すると共に、考察する特定の用途に適した各種の変更と共に各種の実施形態を通じて本発明を当業者に理解いただけるよう選択および記述されている。
【0068】
本発明について特に好適な実施形態に関して図示および記述してきたが、本発明の概念および範囲から逸脱することなくその形式および詳細に対し各種の変更を行うことができる点を理解されたい。本発明は、コンピュータまたは任意の対話型実行システムにより、またはこれらと組み合わせて用いられるプログラムコードを提供するコンピュータ可用またはコンピュータ可読媒体からアクセスできるコンピュータプログラム製品の形式であってよい。ここで記述した内容を実行すべく、コンピュータ可用またはコンピュータ可読媒体は、命令実行システム、装置、または機器により、またはこれらと組み合わせて用いられるプログラムを包含、格納、伝送、伝播、または輸送可能な任意の有形装置であってよい。媒体は、電子、磁気、光、電磁気、赤外線または半導体システム(または装置あるいは機器)または伝搬媒体であってよい。コンピュータ可読媒体の例として半導体または固体メモリ、磁気テープ、着脱可能コンピュータディスケット、ランダムアクセスメモリ(RAM)、読出し専用メモリ(ROM)、固定磁気ディスクおよび光ディスクが含まれていてよい。光ディスクの現行例としてコンパクトディスク−読出し専用メモリ(CD−ROM)、コンパクトディスク−読出し/書込み(CD−R/W)およびDVDが含まれる。
図1
図2
図3
図4
図5
【国際調査報告】