IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ ザズル インコーポレイテッドの特許一覧

特表2023-553507特注仕様製品の合成データ表示の高品質レンダリング表示を得るためのシステムおよびその方法
<>
  • 特表-特注仕様製品の合成データ表示の高品質レンダリング表示を得るためのシステムおよびその方法 図1
  • 特表-特注仕様製品の合成データ表示の高品質レンダリング表示を得るためのシステムおよびその方法 図2
  • 特表-特注仕様製品の合成データ表示の高品質レンダリング表示を得るためのシステムおよびその方法 図3
  • 特表-特注仕様製品の合成データ表示の高品質レンダリング表示を得るためのシステムおよびその方法 図4
  • 特表-特注仕様製品の合成データ表示の高品質レンダリング表示を得るためのシステムおよびその方法 図5
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-12-21
(54)【発明の名称】特注仕様製品の合成データ表示の高品質レンダリング表示を得るためのシステムおよびその方法
(51)【国際特許分類】
   G06T 19/00 20110101AFI20231214BHJP
   G06Q 30/0207 20230101ALI20231214BHJP
【FI】
G06T19/00 A
G06Q30/0207 346
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2023539147
(86)(22)【出願日】2021-10-14
(85)【翻訳文提出日】2023-06-26
(86)【国際出願番号】 US2021055089
(87)【国際公開番号】W WO2022086795
(87)【国際公開日】2022-04-28
(31)【優先権主張番号】63/104,362
(32)【優先日】2020-10-22
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】510116679
【氏名又は名称】ザズル インコーポレイテッド
(74)【代理人】
【識別番号】100073184
【弁理士】
【氏名又は名称】柳田 征史
(74)【代理人】
【識別番号】100175042
【弁理士】
【氏名又は名称】高橋 秀明
(74)【代理人】
【識別番号】100163050
【弁理士】
【氏名又は名称】小栗 眞由美
(74)【代理人】
【識別番号】100224775
【弁理士】
【氏名又は名称】南 毅
(72)【発明者】
【氏名】ハーヴィル,ヤング レスリー
【テーマコード(参考)】
5B050
5L049
【Fターム(参考)】
5B050AA10
5B050BA09
5B050BA13
5B050CA07
5B050EA09
5B050EA27
5B050FA02
5B050FA05
5L049BB47
(57)【要約】
実施形態によっては、特注仕様製品の合成データ表示のレンダリング表示を生成するためのデータ処理法において、該データ処理法は、基準となる物的製品の較正品のレンダリング・データ資源を生成する工程を含んでいる場合があり、該工程は、基準となる該物的製品に対応するデジタル・データ資源を得るために受信されたユーザ入力に基づいて、ユーザ主導型の各種設定を生成することで複数の製品オプション媒介変数キー値を獲得すること、および、該複数の製品オプション媒介変数キー値を該デジタル・データ資源に適用することで該較正品のレンダリング・データ資源を生成することにより実施され、該データ処理法は、カバレッジ・バッファおよびカバレッジ・マップを利用して該較正品のレンダリング・データ資源をレンダリング処理で視覚表示することで最終画像を生成する工程と、該最終画像を表示装置に表示させる工程を更に含んでいる。
【特許請求の範囲】
【請求項1】
合成データ表示のレンダリング表示を生成するためのデータ処理法において、
基準となる物的製品の較正品のレンダリング・データ資源を生成する工程であって、該工程は、
基準となる該物的製品に対応するデジタル・データ資源を得るために受信されたユーザ入力に基づいて、ユーザ主導型の各種設定を生成することで複数の製品オプション媒介変数キー値を獲得すること、および、
該複数の製品オプション媒介変数キー値を該デジタル・データ資源に適用することで該較正品のレンダリング・データ資源を生成することにより実施される工程と、
カバレッジ・バッファおよびカバレッジ・マップを利用して該較正品のレンダリング・データ資源をレンダリング処理で視覚表示することで最終画像を生成する工程と、
該最終画像を表示装置に表示させる工程と、
を含むデータ処理法。
【請求項2】
前記最終画像を生成する前記工程は、
前記カバレッジ・バッファを起動することであって、
前記較正品のレンダリング・データ資源の曲面ごとについて、
1つ以上の曲面外観データ資源を該曲面に関連付けすることで、変換処理された曲面を生成し、
該変換処理された曲面を走査することで複数のピクセル・サンプルを生成するとともに、該複数のピクセル・サンプルを前記カバレッジ・バッファに保存し、更に、
該複数のピクセル・サンプルの値を求めることで、前記カバレッジ・マップを生成して更新する、起動することと、
前記カバレッジ・マップを前記最終画像に変換することと、
を含んでいる、請求項1に記載のデータ処理法。
【請求項3】
前記カバレッジ・マップはImplicitTriangleの評価を与え、16×16サブピクセル領域のマップをもたらし、
カバレッジ・バッファは2次元配列の32ビット整数であり、該整数はCоverPix構造のインデックス付きのリストの開始点となる、請求項1に記載のデータ処理法。
【請求項4】
前記較正品のレンダリング・データ資源は、基準となる前記物的製品のデジタル表示を作製することにより生成され、
基準となる前記物的製品は、指定された色および指定された模様を利用して生成され、
該指定された色および該指定された模様はマークアップを含んでおり、
マークアップを使用することで、基準となる前記物的製品のデジタル表示において、ジオメトリ、デザイン領域、マスク、局所曲面シェーディング、大域輝度シェーディングを構築し、
該ジオメトリ、および、該大域輝度シェーディングは、複数の製品オプション媒介変数キー値を利用することで取り込まれる、請求項1に記載のデータ処理法。
【請求項5】
前記複数の製品オプション媒介変数キー値を前記デジタル・データ資源に適用することは、
基材、トリム、および、キー値を、基準となる前記物的製品の色またはテクスチャなどの外観に関連付けられた前記複数の製品オプション媒介変数キー値に設定することを含んでおり、
基材は、基準となる前記物的製品が作られる元の素材に相当し、
色やテクスチャなどの外観は参照により設定され、
トリムは、トリム・ジオメトリ特性およびトリム配置により定義され、
該トリム・ジオメトリ特性および該トリム配置は、フレーミングまたはエッジングを該トリム・ジオメトリ特性に適合させること、および、該フレーミングまたは該エッジングの物理的プロファイルを設定することにより変換される、請求項1に記載のデータ処理法。
【請求項6】
前記複数の製品オプション媒介変数キー値を前記デジタル・データ資源に適用することは、
前記較正品のレンダリング・データ資源に関連付けられた複数のデザイン領域を生成すること、
複数のデザイン領域のうち1つのデザイン領域の画像をレンダリングで視覚表示すること、および、
マークアップで指定されたデザインU-Vジオメトリを使用すること、
を含んでいる、請求項1に記載のデータ処理法。
【請求項7】
前記複数の製品オプション媒介変数キー値を前記デジタル・データ資源に適用することは、
前記較正品のレンダリング・データ資源に関連付けられたジオメトリ特性および配置を変換することにより、前記複数の製品オプション媒介変数キー値を設定することを含んでおり、
前記複数の製品オプション媒介変数キー値の各キーは、製品高さ、製品幅、製品奥行、製品周囲長、デザインの配置、デザインの高さ、デザインの幅などのうち1つ以上を含んでおり、
前記複数の製品オプション媒介変数キー値を設定することは、ジオメトリ変換を特定のデータ表示に設定するとともに、操作現場での変換を設定することを含んでおり、
前記較正品のレンダリング・データ資源のポリゴンごとに、ハイブリッド走査線および暗黙的構造が構築され、
該暗黙的構造の構築は、前記較正品のレンダリング・データ資源について、三角形の各座標点、三角形の差分、および、暗黙的三角形を判定することを含んでいる、請求項1に記載のデータ処理法。
【請求項8】
ラスタ・カバー・コンピュータ・システムは、
メモリ装置と、
1つ以上の演算処理装置と、
ラスタ・カバー・コンピュータと、
を備えており、該コンピュータは、
基準となる物的製品の較正品のレンダリング・データ資源を生成する工程であって、
基準となる該物的製品に対応するデジタル・データ資源を得るために受信されたユーザ入力に基づいて、ユーザ主導型の各種設定を生成することで複数の製品オプション媒介変数キー値を獲得すること、および、
該複数の製品オプション媒介変数キー値を該デジタル・データ資源に適用することで該較正品のレンダリング・データ資源を生成することにより実施される工程と、
カバレッジ・バッファおよびカバレッジ・マップを利用して該較正品のレンダリング・データ資源をレンダリング処理で視覚表示することで最終画像を生成する工程と、
該最終画像を表示装置に表示させる工程と、
を含んでいる、ラスタ・カバー・コンピュータ・システム。
【請求項9】
前記最終画像を生成する前記工程は、
前記カバレッジ・バッファを起動することであって、
前記較正品のレンダリング・データ資源の曲面ごとについて、
1つ以上の曲面外観データ資源を該曲面に関連付けすることで、変換処理された曲面を生成し、
該変換処理された曲面を走査することで複数のピクセル・サンプルを生成するとともに、該複数のピクセル・サンプルを前記カバレッジ・バッファに保存し、更に、
該複数のピクセル・サンプルの値を求めることで、前記カバレッジ・マップを生成して更新する、起動することと、
前記カバレッジ・マップを前記最終画像に変換することと、
を含んでいる、請求項8に記載のラスタ・カバー・コンピュータ・システム。
【請求項10】
前記カバレッジ・マップはImplicitTriangleの評価を与え、16×16サブピクセル領域のマップをもたらし、
前記カバレッジ・バッファは2次元配列の32ビット整数であり、該整数はCоverPix構造のインデックス付きのリストの開始点となる、請求項8に記載のラスタ・カバー・コンピュータ・システム。
【請求項11】
前記較正品のレンダリング・データ資源は、基準となる前記物的製品のデジタル表示を作製することにより生成され、
基準となる前記物的製品は、指定された色および指定された模様を利用して生成され、
該指定された色および該指定された模様はマークアップを含んでおり、
マークアップを使用することで、基準となる前記物的製品のデジタル表示において、ジオメトリ、デザイン領域、マスク、局所曲面シェーディング、大域輝度シェーディングを構築し、
該ジオメトリ、および、該大域輝度シェーディングは、複数の製品オプション媒介変数キー値を利用することで取り込まれる、請求項8に記載のラスタ・カバー・コンピュータ・システム。
【請求項12】
前記複数の製品オプション媒介変数キー値を前記デジタル・データ資源に適用することは、
基材、トリム、および、キー値を、基準となる前記物的製品の色またはテクスチャなどの外観に関連付けられた前記複数の製品オプション媒介変数キー値に設定することを含んでおり、
基材は、基準となる前記物的製品が作られる元の素材に相当し、
色やテクスチャなどの外観は参照により設定され、
トリムは、トリム・ジオメトリ特性およびトリム配置により定義され、
該トリム・ジオメトリ特性および該トリム配置は、フレーミングまたはエッジングを該トリム・ジオメトリ特性に適合させること、および、該フレーミングまたは該エッジングの物理的プロファイルを設定することにより変換される、請求項8に記載のラスタ・カバー・コンピュータ・システム。
【請求項13】
前記複数の製品オプション媒介変数キー値を前記デジタル・データ資源に適用することは、
前記較正品のレンダリング・データ資源に関連付けられた複数のデザイン領域を生成すること、
複数のデザイン領域のうち1つのデザイン領域の画像をレンダリングで視覚表示すること、および、
マークアップで指定されたデザインU-Vジオメトリを使用すること、
を含んでいる、請求項8に記載のラスタ・カバー・コンピュータ・システム。
【請求項14】
前記複数の製品オプション媒介変数キー値を前記デジタル・データ資源に適用することは、
前記較正品のレンダリング・データ資源に関連付けられたジオメトリ特性およびジオメトリ配置を変換することにより、前記複数の製品オプション媒介変数キー値を設定することを含んでおり、
前記複数の製品オプション媒介変数キー値の各キーは、製品高さ、製品幅、製品奥行、製品周囲長、デザインの配置、デザインの高さ、デザインの幅などのうち1つ以上を含んでおり、
前記複数の製品オプション媒介変数キー値を設定することは、ジオメトリ変換を特定のデータ表示に設定するとともに、操作現場での変換を設定することを含んでおり、
前記較正品のレンダリング・データ資源のポリゴンごとに、ハイブリッド走査線および暗黙的構造が構築され、
該暗黙的構造の構築は、前記較正品のレンダリング・データ資源について、三角形の各座標点、三角形の差分、および、暗黙的三角形を判定することを含んでいる、請求項8に記載のラスタ・カバー・コンピュータ・システム。
【請求項15】
1つ以上のシーケンスの命令を保存している1つ以上のコンピュータ読み出し可能な持続的データ記憶媒体において、該命令は、1つ以上のコンピュータ演算処理装置により実行されると、該1つ以上の演算処理装置に、
基準となる物的製品の較正品のレンダリング・データ資源を生成する工程であって、該工程は、
基準となる該物的製品に対応するデジタル・データ資源を得るために受信されたユーザ入力に基づいて、ユーザ主導型の各種設定を生成することで複数の製品オプション媒介変数キー値を獲得すること、および、
該複数の製品オプション媒介変数キー値を該デジタル・データ資源に適用することで該較正品のレンダリング・データ資源を生成することにより実施される工程と、
カバレッジ・バッファおよびカバレッジ・マップを利用して該較正品のレンダリング・データ資源をレンダリング処理で視覚表示することで最終画像を生成する工程と、
該最終画像を表示装置に表示させる工程と、
を実行させる、1つ以上のコンピュータ読み出し可能な持続的データ記憶媒体。
【請求項16】
前記最終画像を生成する前記工程は、
前記カバレッジ・バッファを起動することであって、
前記較正品のレンダリング・データ資源の曲面ごとについて、
1つ以上の曲面外観データ資源を該曲面に関連付けすることで、変換処理された曲面を生成し、
該変換処理された曲面を走査することで複数のピクセル・サンプルを生成するとともに、該複数のピクセル・サンプルを前記カバレッジ・バッファに保存し、更に、
該複数のピクセル・サンプルの値を求めることで、前記カバレッジ・マップを生成して更新する、起動することと、
前記カバレッジ・マップを前記最終画像に変換することと、
を含んでいる、請求項15に記載の1つ以上のコンピュータ読み出し可能な持続的データ記憶媒体。
【請求項17】
前記カバレッジ・マップはImplicitTriangleの評価を与え、16×16サブピクセル領域のマップをもたらし、
前記カバレッジ・バッファは2次元配列の32ビット整数であり、該整数はCоverPix構造のインデックス付きのリストの開始点となる、請求項15に記載の1つ以上のコンピュータ読み出し可能な持続的データ記憶媒体。
【請求項18】
前記較正品のレンダリング・データ資源は、基準となる前記物的製品のデジタル表示を作製することにより生成され、
基準となる前記物的製品は、指定された色および指定された模様を利用して生成され、
該指定された色および該指定された模様はマークアップを含んでおり、
マークアップを使用することで、基準となる前記物的製品のデジタル表示において、ジオメトリ、デザイン領域、マスク、局所曲面シェーディング、大域輝度シェーディングを構築し、
該ジオメトリ、および、該大域輝度シェーディングは、複数の製品オプション媒介変数キー値を利用することで取り込まれる、請求項15に記載の1つ以上のコンピュータ読み出し可能な持続的データ記憶媒体。
【請求項19】
前記複数の製品オプション媒介変数キー値を前記デジタル・データ資源に適用することは、
基材、トリム、および、キー値を、基準となる前記物的製品の色またはテクスチャなどの外観に関連付けられた前記複数の製品オプション媒介変数キー値に設定することを含んでおり、
基材は、基準となる前記物的製品が作られる元の素材に相当し、
色やテクスチャなどの外観は参照により設定され、
トリムは、トリム・ジオメトリ特性およびトリム配置により定義され、
該トリム・ジオメトリ特性および該トリム配置は、フレーミングまたはエッジングを該トリム・ジオメトリ特性に適合させること、および、該フレーミングまたは該エッジングの物理的プロファイルを設定することにより変換される、請求項15に記載の1つ以上のコンピュータ読み出し可能な持続的データ記憶媒体。
【請求項20】
前記複数の製品オプション媒介変数キー値を前記デジタル・データ資源に適用することは、
前記較正品のレンダリング・データ資源に関連付けられた複数のデザイン領域を生成すること、
複数のデザイン領域のうち1つのデザイン領域の画像をレンダリングで視覚表示すること、および、
マークアップで指定されたデザインU-Vジオメトリを使用すること、
を含んでいる、請求項15に記載の1つ以上のコンピュータ読み出し可能な持続的データ記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本件開示の1つの技術分野は、共同する各種コンピュータ・プラットフォームによって監視および追跡されるユーザ・アクションに基づいて特注仕様製品の各種オプションを自動的に構成する手法である。もう1つ別の技術分野は、ユーザ・アクションを追跡することで、共同するコンピュータ・プラットフォームから入手できる製品を特注仕様に誂えるための各種オプションを生成し、該オプションに基づいて特注仕様製品の合成データ表示の高品質レンダリング表示を生成することである。
【背景技術】
【0002】
本項で説明する上記の手法は、達成に向けて続行できる手法ではあるが、先行して既に考案され、追求されてきた手法であるとは限らない。したがって、別段の示唆がない限り、本項で説明する手法いずれも、本項に含まれているというだけの理由で従来技術と限定していると想定すべきではない。
【0003】
市場には、特注仕様の属性がある製品を注文する機会をユーザに提供するように構成されたシステムが数多くある。例えば、写真、デジタル画像、アートワーク、それ以外のフレーミング処理できる各種製品などのような、特注仕様で製作されるフレーミング処理物の場合、該システムは、特注仕様の寸法および色の各種の画像とフレームを注文する機会をユーザに提供することがある。
【0004】
特注仕様可能なパラメータを多数有する上記製品を特注仕様に誂えることは、非常に難易度が高いと推察される。特注仕様化値の選択が最終特注仕様製品の外観に影響し、また、最終特注仕様製品をレンダリングする方法にも影響すると思われる。従って、上記システムはしばしば、ユーザが製品を注文する前に特注仕様製品の描写、すなわち、合成データ表示を画面に映す諸機能を提供している。
【0005】
一般に、合成データ表示は、コンピュータ・ベースの表示装置上に映される各種オブジェクトのデジタル描写である。製品をデジタル特注仕様に誂えるという文脈では、製品が製作される前にその合成データ表示をレンダリングするのが有用である。これによりユーザは、実際に製品を注文する前に、製品の特徴や装飾を視覚的にチェックすることができる。合成データ表示は、デジタル写真に由来する画像を組み合わせたものであることが多い。合成データ表示としては、例えば、各種オブジェクトの2次元ジオメトリ(座標データ表示)、2.5次元ジオメトリ、および、3次元ジオメトリから派生したデジタル・マークアップ(付加コード)や合成レンダリング・データ表示などが挙げられる。
【0006】
ジオメトリの高品質デジタル・レンダリング表示を得るためのアルゴリズムはこれまでかなりの期間、調査・研究されてきた。アルゴリズムは光、テクスチャ(肌理・質感)、および、色のシミュレーションを利用するのが通例である。この技術の主要発展例として次のものを利用した著作品が挙げられるが、すなわち、スキャンライン・レンダリング、バイナリ・スペース・パーティショニング、zBuffer、aBuffer、Pixar(ピクサー・アニメーション・スタジオ)のReyes(レイエス)レンダリング・システム(RenderManツールでシリーズ絶頂に達する)、OpenGLおよびDirect3Dをサポートする広範な有用性を備えるハードウェア、例えばIntel(インテル)のEmbree(エムブリー)レンダリング・システムに実装されているようなハードウェア支援型レイトレーシング(光線逆探知処理)の各種改良版を利用した著作品が挙げられる。
【0007】
通常、合成デジタル・レンダリング法は、アプリケーション分野、レンダリング速度、および、品質のニーズに基づいて分類することができる。例えば、シミュレーション用およびゲーム用のリアルタイム・レンダリング・アプリケーションは、慎重に設計されたコンテンツと、OpenGLおよびDirect3Dを利用してハードウェア上で最適化された空間分割を実行しながらレンダリングされたジオメトリとを使用するのが通例である。リアルタイム・レンダリング・アプリケーションにおける1フレームに要するレンダリング時間は高速でなければならず、通常は、アプリケーションとのユーザのやり取りを支援する間の待ち時間が、鍵となる障壁であると思われる。
【0008】
娯楽産業においては、映画および印刷物の画像の製作には、通常、品質およびクリエイティブ・コントロール(最終編集権統制)について厳しい要件がある。場合によっては、高品質要件と芸術性要件を満たすことが難しい場合がある。但し、これらの要件が満たされたとしても、諸要件成就に画像ごとのレンダリング時間が長期化するという犠牲を払うことになる。
【発明の概要】
【発明が解決しようとする課題】
【0009】
特注仕様製品を得るための合成データ表示をレンダリングするのに、上記2つのアプリケーションに迷った挙句どっちもどっち状態に陥る。このようなレンダリング表示は、ゲーム・アセット(データ資源)を最適化するのに発生する費用をかけずに作る必要があり、ユーザが製品とやりとりする際に、Twitch(ツイッチ)ゲームよりは長いが、映画の1フレームよりは遥かに短い時間で実行する必要がある。したがって、特注仕様製品の合成データ表示をレンダリングするための、比較的待ち時間が短い高品質レンダリング技術を提供する必要がある。
【図面の簡単な説明】
【0010】
図1】或る幾つかの実施形態による、ユーザ・アクションに基づいて特注仕様製品の各種オプションを自動的に構成する方法を実現するための具体例のシステムを描いた図。
図2】或る幾つかの実施形態による、合成データ表示をレンダリングするための具体例の処理フロー図。
図3】或る幾つかの実施形態による、製品を特注仕様に誂えるシステムのユーザ・インターフェイスの一例を描いた図。
図4】或る幾つかの実施形態による、合成データ画像をレンダリングするための具体例の処理フロー図。
図5】本件の各種技術を実装するのに利用するコンピュータ・システムを例示したブロック図。
【発明を実施するための形態】
【0011】
説明することを目的とした後段以降の記載では、本発明の完全な理解を提供するために、多数の特定の詳細を明示している。しかしながら、これら特定の詳細がなくても、本発明を実施することができるのは明白となるだろう。それら以外の例では、本発明を不必要に分かりにくくすることを避けるために、周知の構造および装置がブロック図の形式で示されている。
【0012】
本明細書では、以下の概要に従って実施形態を説明する:
1.0 概要
2.0 構造と機能の概要
3.0 合成データ表示のレンダリング要件
4.0 合成データ表示のレンダリング処理過程
4.1 較正品のレンダリング・データ資源の生成
4.2 製品オプションキー値のユーザ主導型設定の較正品のレンダリング・データ資源への適用
4.3 レンダリング・アプリケーションの起動
4.4 データ資源のレンダリング
4.5 データ資源の映し出し
5.0 カバレッジ・マップ・サービス
6.0 カバレッジ・バッファ・サービス
7.0 特注仕様製品の合成データ表示の高品質レンダリング表示を得るための具体例の方法
8.0 具体例のレンダリングの流れ
9.0 製造
10.0 実装機構―ハードウェア概要
11.0 拡張機能と代替例
【0013】
1.0 概要
実施形態によっては、製品を特注仕様に誂える処理過程を改良するための各種技術を説明している。より詳細には、これら技術は、製品を特注仕様に誂える処理過程により使用される、ユーザ製品のレンディング・プログラムを改良することを意図しているとともに、高品質のサブピクセル・レンダリングに基づいて製品のレンダリング・データ表示を生成することを意図している。製品を特注仕様に誂える処理過程の一例は、例えば、米国特許第8,175,931B2号明細書に記載されており、これには具体例のユーザ製品のレンダリング・プログラム、すなわち、図1B(要素109b)、図1C(要素124)、および、図2(要素134)の説明が含まれている。しかしながら、米国特許第8,175,931 B2号明細書に記載の製品を特注仕様に誂える処理過程は、高品質のサブピクセル・レンダリングの手法を開示してはいない。
【0014】
本件記載の技術は、高品質のサブピクセル・レンダリングが重要な要件の1つである、特注仕様の製品の高品質のサブピクセル・レンダリングのための新規かつ改良された方法を提供している。
【0015】
本件に提示したシステムおよび方法を使用することで、どのような特別仕様製品の合成データ表示の高品質レンダリングをも提供することができる。このシステムおよび方法は、ソフトウェア、ハードウェア、または、ハードウェアとソフトウェアを組み合わせた状態で実装することができ、また、クライアント-サーバ・システム、ウェブサーバ、端末、ピア・ツー・ピア・システムなどで実現することができるため、このシステムおよび方法は特定の実施例に限定されない。
【0016】
2.0 構造の概要
図1は、或る幾つかの実施形態による、特注仕様製品の合成データ表示を高品質レンダリングするための方法を実現するための具体例のシステムを示している。本件開示における図1、それ以外の各図面、および、詳細な説明全体と特許請求の範囲全体が、専用の分散型コンピュータ・システム設計を利用して、特別にプログラムされたコンピュータが以前は入手できなかった諸機能を実行することで機械学習モデルの開発、検証、および、配備という問題に電算技術を実務的に適用できるようにした応用技術システムおよび応用技術的方法を提案、開示、および、特許請求することを意図している。このように、本件開示は応用技術問題に対する応用技術的解決策を提示しているのであって、本件開示または特許請求の範囲を解釈するにあたり、抽象観念、精神機能、人的活動を体系化する方法、または、数学的アルゴリズムなどのような特許適格性から司法上逸脱している事例を対象に含めようとする解釈は何であれ、本件開示においては裏付けを欠いており、誤りである。
【0017】
図示の例は、例証を目的として提示されている。それら以外の各種実施例は、図1に示されているものとは異なる構成要素の構成を含んでいることもある点に留意するべきである。
【0018】
図示の例では、製品の合成データ表示レンダリング・プラットフォーム101は、製品オプションモジュール102、特注仕様の製品104、レンダリング・エンジン106、ユーザ・インターフェイス108、製品オプションセレクタ110、合成データ表示生成器112、製品のデータ定義114、製品オプションエンジン116、および、製品オプション・フレームワーク120から構成されている。それ以外の各種実装例には、図1に示されていないまた別な構成要素が含まれていることがある。更に別な各種実装例は、図1に示されているものよりも構成要素の数が少ない場合もある
製品オプションモジュール102は、製品を特注仕様に誂えるための製品オプションを生成する機能、修正する機能、および、統合する機能を提供するよう構成されているとよいが、その場合、製品オプションはレンダリング処理に備えて、合成データ表示レンダリング・プラットフォーム101の合成データ表示生成器112に送信することができる。製品オプションモジュール102は、製品オプション・フレームワークを含んでいてもよい。
【0019】
実施形態によっては、製品オプション・フレームワーク120は、製品オプションを扱うためのフレームワークを提供するよう構成されているとよい。これはまた、属性のうち、それ以外の属性の値に依存しているものの処理をサポートする論理を提供するバンドリング(束化)・フレームワークへのアクセスを容易にすることもできる。このフレームワークにより、或る付属物類が特定の製品に適合しない場合もあるという事実を考慮することができるようになる。このフレームワークにより、製品の製造と、表示装置上で視覚化すなわちレンダリングされる製品のデジタル画像の各種能力の両方に関して和合性を判断できるようにもなる。
【0020】
実施形態によっては、製品オプションモジュール102はバンドリング・フレームワークを含んでいる。バンドリング・フレームワークは、組み合わされた製品のどのデータ表示が有効であるか、すなわち、どれをグラフィカル・ユーザ・インターフェイスやその他の表示装置に表示するべきかを判定することにより、束ねられた各製品の正確なレンダリングをサポートするための論理を備えている。一般に、バンドリング(束化)論理は、製品が1つのバンドル(束)に追加されると、各製品を検査し、前述したようなフィルタに基づいて各製品を選別し、フィルタの一致に基づいて1つ以上の生成されたデータ表示を選択して整理するよう構成されている。
【0021】
特注仕様の製品104は、特注仕様の製品データを製品の合成データ表示レンダリング・プラットフォーム101に保存するよう構成されているとよい。例えば、特注仕様の製品104が取り込むデータは、製品合成データ表示レンダリング・プラットフォーム101を利用してユーザが製品を特注仕様に誂える際にユーザが選択した特注仕様オプションと、製品のその特注仕様オプションによりユーザが制作進路を方向づける際にユーザが行った選択とを表している。
【0022】
レンダリング・エンジン106は、レンダリング論理を実行するよう構成されているとよい。レンダリング論理は、製品オプションとバンドルを調整するよう構成されているとよい。一実施形態では、レンダリング論理は、純粋なプログラミングよりはむしろ宣言文を使用して、レンダリング・ファイルを定義し、レンダリング論理に要素を追加することをサポートする。データ表示の各種属性は、レンダリング処理過程を操るための構成ファイルとして作用するレンダリング・ファイルで宣言することができる。一実施形態では、レンダリング論理の各種能力は、後述する他の宣言文および照合構文により、製品のバンドルと突合わせされる。。
【0023】
ユーザ・インターフェイス108は、レンダリング・プラットフォーム101とユーザとの間の対話を容易にするよう構成されているとよい。一実施形態では、製品バンドルは、グラフィカル・ユーザ・インターフェイスで一緒に視覚化することができるうえに和合性がある2つ以上の製品の連合、或いは、一緒に使用するために一緒に注文することができる、または、組合せの特注仕様製品で使用するために一緒に注文することができる2つ以上の製品の連合と定義される。
【0024】
製品オプションセレクタ110は、製品の合成データ表示レンダリング・プラットフォーム101上で実行されるアプリケーションによって操縦されるユーザ・インターフェイスによりユーザが制作進路を方向づける際に、ユーザによって選択されたオプションを追跡するための諸機能を提供するよう構成されているとよい。
【0025】
合成データ表示生成器112は、本件に提示している特注仕様製品の合成データ表示の高品質レンダリングのためのシステムおよびその方法を実現するための諸機能を提供するよう構成されているとよい。
【0026】
製品データ定義114は、製品の定義および該製品の多様な特注仕様オプションを保存および提供するよう構成されているとよい。製品データ定義は、後で説明する、属性エンジンとキー値ペアとを利用して処理することができる。
【0027】
製品オプションエンジン116は、ユーザに提供される製品の多様なオプションとオプション構成とを管理するための諸機能を提供するよう構成されているとよい。
【0028】
3.0 合成データ表示のレンダリング要件
実施形態によっては、製品を特注仕様に誂える処理過程によりユーザは、ユーザ・インターフェイスにより利用できるようになる諸機能を使って、製品を特注仕様にえることができるようになるものもある。このインターフェイスは、ユーザの表示装置上に1つ以上のウェブページを生成して画面に映し出すよう実装されているとよい。ユーザ・インターフェイスは、例えば、以下でより詳細に説明するが、製品を構成している二次元パターン片に色、タイル画像、および、写真またはデザイン画像(例えば、ユーザ自作のデザイン画像)をユーザが対話式で適用できるよう構成されているとよい。
【0029】
ユーザ・インターフェイスによって生成されるデータには、ユーザアカウント・データ、製品説明(ユーザの特注仕様製品を説明する)、ユーザ画像のデザイン(ユーザ・コンテンツを含む)、選ばれた色(ユーザが選択した色)、選ばれた素材(特注仕様製品の素材の種類)、および、選ばれた仕上げ(特注仕様製品に対してユーザが選択した仕上げ処理)が含まれる。その情報に基づいて、ユーザ・インターフェイスは1組の命令をアセンブリ言語に翻訳することができるが、該命令は、ユーザのデザインを記述して、最終製品の画像を例えばユーザ製品のレンダリング・プログラム等から要求することができる。その結果として生じる対話は、リアルタイム(実時間)で実行することができる。
【0030】
実施形態によっては、ユーザ・アクションに応答して唯一無二の製品の合成データ表示をレンダリングする処理過程は、固有の1組の要件を備えているものもある。通常、要件は実時間媒体レンダリングまたは実働媒体レンダリングとは別のものである。要件の例としては、次の各要件が挙げられる:
1.個々のリクエストごとに新しいアセット(データ資源)が必要な場合があるため、グラフィックス・ハードウェアでテクスチャ(肌理・質感)をキャッシュ・メモリに保存するのに待ち時間が長引くという損失が付随する恐れがある。
2.リクエストごとに、レンダリングを最適化するためのフレーム間のコヒーレンス(一貫性)戦略を破棄する。
3.特注仕様製品ごとに異なるグラフィック特性があるため、ゲームやシミュレーションで使用される特殊状況向けのレンダリングとチューニングの効果が低下する。
4.レンダリング時間またはパイプライン待ち時間の要件は製品の閲覧タイミングを根拠としているのであって、速やかな画面書換え速度を裏付けるものではないし、ムービー・フレームのレンダリング最適化に基づくものでもない。通常、製品データ表示に要するレンダリング時間は、シミュレーションに要する1/60秒のレンダリング時間よりも長く、長編映画の1フレームに要する典型的な20分のレンダリング時間よりは遥かに短いことがある。容認できる待ち時間は1/15秒から1/2秒の範囲であると思われる。
5.画像描写は特注仕様製品に対するユーザの認識に直接影響を与えるため、画質は高いことが期待される。
6.複雑な製品ジオメトリ(座標データ表示)と透明性を解決するには、高品質のサブピクセル・サンプリング処理を利用したレンダリングが必要となる。
【0031】
実施形態によっては、本件記載のシステムおよび方法は、少なくとも最終要件群についての、すなわち、高品質サブピクセル・レンダリング要件についての高品質レンダリングについての要件諸問題を解決するものもある。この解決策は、複雑な製品ジオメトリと透明性の問題解決を見越している。この解決策は、とりわけ、サブピクセル・ジオメトリをサンプリング処理するための新規な方法を提案している。
【0032】
本件提示のシステムおよび方法は先行技術のレベルの低いレンダリングブ随所の各種制約を克服しているが、先行技術のレンダリングは随所で(Embreeの手法でやるように)暗黙的な曲面検出を利用し、(Reyes手法でやるように)或るピクセル寸法の方眼のマス目(バケツ)へ明示的に細分割することを利用し、更にまた、(Catmull(キャットマル)ピクサー初代社長の1978年式手法でやるように)ジオメトリの明示的な走査変換を利用するなどの傾向がある。
【0033】
Embreeは、x86CPUで実施される効率的なレイトレーシング(光線逆探知処理)のための核心機能プログラムのフレームワークである。Embreeは、ジオメトリが酷く複雑である場面や間接照明下の場面が例外ではなく当たり前である、プロフェッショナル向けのレンダリング環境を対象としている。これに対処するために、Embreeは、多様なISAベクター幅、多様な作業負担(例えば、一貫性のある光線分布と一貫性の無い光線分布、静的場面と動的場面など)、および、多様なアプリケーション固有の優先事項 (例えば、最大性能または最小メモリ使用量など) について最適化された1組のよく使う核心機能プログラムを提供している。これら核心機能プログラムに基づいて構築された各種レンダリング・プログラムは、多くのCPUまたはGPU上で作用する既存の方法に匹敵する、境界を含む閉空間階層(BVH)ビルドと光線走査性能とを達成することができる。
【0034】
Reyes(レイエス)は、Lucasfilm Ltd.(ルーカスフィルム・リミティッド)で開発され、目下、Pixar(ピクサー)で使用されている画像レンダリング・システムである。Reyesは、複雑な動画場面の高速・高品質レンダリングのために最適化されたシステム構成、すなわち、長編映画並みの長さの映画を約1年のうちに電算処理することができるようにしたシステム構成を提供している。これは、実写の映画撮影とほとんど区別がつかない高品質な手段と、実場面と同じくらい視覚的に豊かな複雑な手段とを提供している。
【0035】
Catmullの手法でやるような、ジオメトリの明示的な走査変換は、アンチエイリアシング(空間折返し歪み排除処理)を付随する隠れ曲面アルゴリズムを実装している。エイリアシング(空間折返し歪み)の諸問題には、通常、ギザギザのエッジ、連続するフレームで画面に突如現れたり消えたりする小さなオブジェクト、周期的な画像をレンダリングする際の干渉縞の繰り返し模様、精細部の崩壊などが含まれる。この問題が発生するのは主として、画像空間がピクセルに対応している離散点でサンプリングされることが原因である。Catmullの隠れ曲面アルゴリズムに含まれているのは、何よりもまず、「y軸方向の」最高値で全ポリゴンを並べ替え、アクティブ状態のポリゴン・リストを初期化して空にし、更にまた、走査線ごとに以下のことを反復する処理であり、すなわち、y軸方向リストに由来するポリゴンのうち該当走査線に入るポリゴンをアクティブ状態のポリゴン・リストに追加し、x軸方向マス目(バケツ)を初期化して走査線配列を空にして背景化し、各ポリゴンに対して特定の切抜き操作、置換操作、および、並べ替え操作を実施することにより、アクティブ状態のポリゴン・リストにある各ポリゴンに片端から反復命令のループを実行する。
【0036】
実施形態によっては、本件提示のシステムおよび方法はサブピクセル透明性を扱う技術または空間折返し歪み排除のための技術の制約を克服しているものもあり、累積ジッター変動式ランダム・サンプリング処理、マイクロポリゴンの蓄積処理、または、修正されたReyesを利用することで透明性データおよび色データをAバッファに保存する処理を含んでいる。
【0037】
Aバッファ(すなわち、空間折返し歪みを排除し、領域平均化された蓄積バッファ)は、中規模の仮想メモリ・コンピュータに好適な一般的な隠れ曲面機構である。これは、不透明オブジェクト、透明オブジェクト、および、交差するオブジェクトの任意の集合体間の可視性を成分分解する。計算が簡単なフーリエ変換のための窓関数を利用することで、コスト増加はほどほどながら、実効画像解像度はZバッファの何倍にも向上させている。
【0038】
実施形態によっては、本件提示のシステムおよび方法は、例えば、カバレッジ(対象範囲の網羅率)データを保存するためにAバッファ・アルゴリズムを利用することにより、コンピュータ・メモリの可用性に関しては、他の各種方法の制約を克服しているものもある。
【0039】
実施形態によっては、本件記載のシステムおよび方法はハイブリッド手法を採用しているものもあるが、これは明示的には走査変換に依存しているが、暗黙的には、最新のスカラー命令を使用してサブピクセルのカバレッジを派生させることに依存し、暗黙的な計算処理を実行するために慎重に構築されたカバレッジ・データセットに依存している。
【0040】
4.0 合成データ表示レンダリング処理過程
図2は、いくつかの実施形態による、合成データ表示をレンダリングするための具体例の処理フロー図を示している。図2に記載の各工程は、図1で説明した、製品の合成データ表示レンダリング・プラットフォーム101の各種構成要素を使用して実行することができる。
【0041】
4.1 較正品のレンダリング・データ資源の生成
工程202では、合成データ表示のレンダリング・データを生成する処理過程は、較正品のレンダリング・データ資源を生成することから始まる。較正品のレンダリング・データ資源は、基準となる物的製品のデジタル表現を作成することによって生成される。基準となる物的製品は、指定された色やパターンを使用して製作されることもある。色や模様は一般に「マークアップ(付加コード)」と呼ばれることがある。
【0042】
マークアップは、ジオメトリ、デザイン領域、マスク、局所曲面シェーディング(陰影付け)、および、大域輝度シェーディングを構築する目的で認識され使用される。ジオメトリ、輝度写像、色写像は、通常、製品オプションのキー値に関連付けられる。
【0043】
4.2 製品オプションキー値のユーザ主導型設定の較正品のレンダリング・データ資源への適用
工程202Aでは、較正品のレンダリング・データ資源の生成の一部として、製品オプションキー値のユーザ主導型設定が、較正品のレンダリング・データ資源に適用される。これには、色やテクスチャなどの外観に関連付けられた、基材、トリム(装飾・外形調整)、または、それ以外のキー値の設定が含まれる場合がある。基材は、製品が作られる元の素材である。例えば、ポスターの基材は紙であり、Tシャツの基材は綿布、電話ケースの基材はポリカーボネートである、等々。実施形態によっては、テクスチャアのデータ資源および色写像は参照して設定することができるものもある。
【0044】
実施形態によっては、製品オプションキー値を適用することは、キー値によって関連付けられたデザイン領域を設定することも含む場合がある。これには、例えば、レンダリングで視覚化するべき画像をマークアップで指定されたデザインU-Vジオメトリで視覚表示することにより、デザイン領域基準を設定することが含まれる場合がある。
【0045】
実施形態によっては、製品オプションキー値を適用することは、また、製品の媒介変数キー値を設定することも含んでいる場合もある。これには、ジオメトリ特性およびジオメトリ配置の変換が含まれている場合がある。或る特定の製品のキーの例としては、製品の高さ、製品の幅、製品の奥行き、製品の周囲長、デザインの配置、デザインの高さ、デザインの幅などが挙げられる。
【0046】
実施形態によっては、トリムのジオメトリ特性およびジオメトリ配置が変換されるものもある。変換には、フレーミングまたはエッジングをジオメトリ特性に適合させること、および、フレーミングまたはエッジングの物理的プロファイルを設定することが含まれる場合がある。
【0047】
実施形態によっては、データ表示の媒介変数が設定される。これには、特定のデータ表示へのジオメトリ変換の設定が含まれる場合がある。これには、また、操作現場での変換の設定も含まれる場合がある。
【0048】
4.3 レンダリング・アプリケーションの起動
工程202Bで、レンダリング・アプリケーションが起動される。この工程では、CоverageMap(カバレッジ・マップ)サービスが起動される。CоverageMapサービスについては後述する。
【0049】
4.4 データ資源のレンダリング
工程208で、データ資源がレンダリングされる。この工程では、カバレッジ・バッファ・サービスが起動される。カバレッジ・バッファ・サービスについては後述する。
【0050】
次に、較正品レンダリング・データ資産の曲面ごとについて、次の処理が実施される。すなわち、工程208Aで、曲面外観データ資産が対応する色、テクスチャ、デザイン、媒介変数シェーディングなどに紐付け(関連付け)される。
【0051】
次に、工程208Bで、較正品のレンダリング・データ資源のポリゴンごとに、ハイブリッド走査線および暗黙的構造が構築される。これには、三角形の各座標点、三角形のデルタ(差分)、および、ImplicitTriangle(インプリシット・トライアングルまたは暗黙的三角形)の判定が含まれている場合がある。
【0052】
工程208Cで、変換された曲面が走査されて明示的なピクセル・サンプルが生成され、暗黙的にピクセル・サンプルの値が求められてCоverageMapを生成する。
【0053】
実施形態によっては、各三角形を、以下の処理を実施することにより走査変換するものもある。すなわち、当該走査像のピクセルのX,Y座標ごとについて、CоverageMapサービスを利用して、ImplicitTriangleの値が求められる。ピクセルのX,Y座標が完全にポリゴンの内側にある場合は、デフォルトの完全なCоverageMapが設定される。しかし、ピクセルのX,Y座標の一部だけがポリゴンの内側にある場合は、CоverageMapの計算が行われる。続いて、当該ピクセルがカバレッジ・バッファに設定される。当該ピクセルは、視認可能ならば、陰影付け処理される。
【0054】
ステップ208Dで、カバレッジ・バッファが最終画像に変換される。これについては後で詳しく説明する。
【0055】
4.5 データ資源の映し出し
図3は、或るいくつかの実施形態による、製品を特注仕様に誂えるシステムのユーザ・インターフェイス130の一例を示している。図示の例は、レンダリング処理した画像134の一例を示しており、これは、図2に例示した米国特許第8,175,931B2号明細書のレンダリング処理した画像134と一致している。
【0056】
ユーザ・インターフェイスは、ユーザまたは消費者が画像表示部134において製品画像データ表示とデザイン画像データ表示の間で選択を行えるようにする画像データ表示オプション部132を含んでいるとよい。画像データ表示部はまた、製品画像データ表示部に表示されるようにした各種画像データ表示(甲部、外側面、外側つま先、べろ革など)の中からユーザまたは消費者が選択を行えるようにする画像データ表示セレクタ134aも有している。ユーザ・インターフェイスはまた、ユーザが画像データ表示の一部を置換または削除し(点線で描いたボックスツール)、画像データ表示を拡大・縮小し(虫眼鏡ツール)、画像データ表示部内で一対の製品を一緒に閲覧することができるようにし、または、その各種組合せを行うことができるようにした画像データ表示ツール部136を含んでいることもある。
【0057】
ユーザ・インターフェイスは、ユーザが多様な(デザイン領域の色やパターンとアクセサリー類の色やパターンなどのような)製品オプションの選択を行えるようにする製品オプションタブ137(この例の製品はKeds(ケッズ)シューズであるため、Kedsシューズ・オプションタブ)と、以下でより詳細に説明するように、ユーザ・コンテンツを用いてユーザが製品を特注仕様に誂えることができるようにする「カスタマイズしよう!」タブ138とを更に備えている。図示のように、製品オプションタブ(ここでは製品は片方の靴である)は、特定の製品の概要を表示する製品概要部137a、ユーザが製品の適切なサイズの選択を行えるようにするサイズ部137b、特注仕様に誂えた製品と一緒に購入する追加の靴紐の選択をユーザが行えるようにする追加靴紐部137c、製品の各部(当該靴の例では、甲部、べろ革、内側面、中底、かかと、および、外側面)の色、柄、または、その両方の選択をユーザが行えるようにする色とプリント部137d、ユーザが製品の特定のトリムおよび細部の選択を行えるようにするトリムと細部ユーザ・インターフェイス137e、および、購入する製品の数量の選択をユーザが行えるようにし、製品の累算価格を明示し、更に、特注仕様に誂えた製品を電子ショッピングカートにユーザが追加を行えるようにするコマース部137fを更に備えているとよい。
【0058】
5.0 カバレッジ・マップ・サービス
本件提示の手法の中核は、CoverageMapサービスである。CoverageMapサービスは、ImplicitTriangleの値評価を提供し、例えば、16×16サブピクセル領域のカバレッジ・マップを提供する。CoverageMapサービスは多数の方法で実現することができる。以下は、CoverageMapサービスの1つの考えられる実装例である。この実施形態は特定のスカラー命令セットに合わせて調整されているため、それ以外の命令セットには別の実施形態が必要になる可能性があることに留意するべきである。
【0059】
実施形態によっては、CoverageMap構造は、ポリゴンの1つのエッジを表すように、また、任意のX,Yピクセルについての当該エッジの16×16バイナリ・カバレッジの値を評価するように設計されている。該構造には以下のものが含まれていることがある:
1.カバレッジ 16×16カバレッジ・マップを含む256ビットベクター
2.セントロイド カバレッジ領域に対応しているCoverageMapのサンプリング点を含んでいる4つの単精度浮動小数点値を含む128ビットベクター。
【0060】
CoverageMapサービスは、1つのエッジに対してX,Yピクセルの値を求めることができ、当該エッジは、128ビットベクターの4つの単精度浮動小数点値がエッジの保有点a、b、c、dを記述しているエッジで表すことができるが、この場合、aとbは2次元エッジの法線であり、cはこのエッジについて法線から0,0座標までの補正値、dはピクセルの左上隅からその中心までの距離である。
【0061】
一実装例では、CoverageMapサービスを代表するものとしては、AVX2命令セットで定義されたIntel_m256iレジスタがある(Intel(登録商標)アーキテクチャ固有関数のimminitrin.hメタヘッダ・ファイルを参照のこと)。
【0062】
一実装例では、図心は、SSE4.1命令セットで参照されるIntel_m128レジスタで表される(Intel(登録商標)アーキテクチャ固有関数のメタヘッダ・ファイルであるsmminitrin.hを参照のこと)。
【0063】
一実装例では、エッジは、SSE4.1命令セットで参照されるIntel_m128レジスタで表される(Intel(登録商標)アーキテクチャ固有関数のメタヘッダ・ファイルであるsmminitrin.hを参照のこと)。
【0064】
CoverageMapの一実装例の擬似コードの具体例を以下に示す。
【0065】
【0066】
【0067】
【0068】
CoverageMapにおけるブーリアン領域演算、交差、結合、および、差分は、単一のクロックサイクルを要する単一のスカラー命令によって実行されることに留意しなければならない。これにより、サブピクセルでレンダリング処理された領域の非常に高速な計算が行えるようになる。また、該領域はスカラー命令のpоpcnt()演算処理を利用して計算することができ、これにより、どのカバレッジ領域も不透明に高速に変換することができることにも留意しなければならない。
【0069】
16×16のサブピクセル配列に存在し得るエッジの数は比較的少ない。一実施形態では、存在し得るエッジ全部の配列は、256個の角と配列の左上隅から512サブピクセルの距離によって表される。一実施形態では、距離代わりのピクセル距離はsqrt(2.0)/512.0であり、角度単位は(2.0×PI())/256.0である。
【0070】
この配列を(固有値を求めるのにembree::math.h利用して)構築する一実装例の擬似コードの具体例を以下に提示する。
【0071】
【0072】
【0073】
ピクセル座標は、_m128レジスタによっても表すことができる。ピクセルがx,y,1,1の形式である場合、エッジ構造との点乗積が当該エッジからの距離を生じるように変換されるとよい。
【0074】
或るエッジに対する値評価のために所与の整数X,Yピクセルを迅速に準備することは有用である。
【0075】
この変換について可能な実装例の擬似コードの具体例を以下に記載する。
【0076】
ここでは、変換されたピクセルの値を暗黙的に求めるのに、点乗積を用いて迅速にエッジによって実行することができる。これは、_mm_dp_ps()固有関数を使用すると、1.5クロックサイクルで完了することができる。
【0077】
ピクセルの値を求めてCоverageMapを返すという考えられる実装例の擬似コードの具体例を以下に示す。
【0078】
ほとんどのピクセル評価値が完全にエッジ内にある場合もあるし、エッジの外にある場合もあるため、固有のスカラー点乗積命令を利用した高速評価を適用することができる点には注目するべきである。ImplicitTriangleの評価は、3点乗積エッジ評価を実行して迅速な承認または拒否を得ることにより、最適化されるとよい。
【0079】
6.0 カバレッジ・バッファ・サービス
三角形の走査変換されたピクセルが肯定的に評価されると、CоverageMapをカバレッジ・バッファに追加することができる。
【0080】
一実装例では、カバレッジ・バッファは2次元配列の32ビットの整数であり、これら整数がCoverPix構造のインデックス付きリストの開始点となる。起動すると同時に、配列はレンダリングで視覚表示される画像のサイズに設定され、その値は空であることを示す-1に設定される。
【0081】
CoverPixはシェーディング処理されたピクセルの中間表現であり、シェーディング・データと曲面データ、CоverageMapに付すインデックス、曲面ID、および、複合情報を保有している。
【0082】
CoverPixの考えられる実装例の疑似コードの具体例を以下に示す。
【0083】
【0084】
実施形態によっては、カバレッジ・バッファは、サイズ変更自在な配列のCoverPixとCоverageMapを保有している。シェーディング処理されたピクセルがカバレッジ・バッファに追加されると、(必要に応じて) CoverPixとCоverageMapが当該ピクセル割り当てられ、当該ピクセルはカバレッジ・バッファのz軸方向順序付き連結リストに置かれる。
【0085】
カバレッジ・バッファ構造の考えられる実装例の擬似コードの具体例を以下に示す。
【0086】
【0087】
この実装例では、CoverPixおよびCoverageMapは、「x軸方向の」走査線ごとの配列として割り当てられる。これは、走査線領域による画像のマルチスレッド式レンダリングが行えるようにすることを目的としている。シェーディング処理済みの走査変換されたピクセルが配置されて写像が生成されて、カバレッジ・バッファのピクセルが空であると判定された場合は、そこが割り当てられて確定されるだけである。新たなピクセルが写像内の完全に不透明な別のピクセルの背後にある場合、そのピクセルは無視されてもよい。新たなピクセルが同じ曲面IDを持ち、カバレッジ・バッファにおいて或るピクセルの「z軸方向の」深度に一致している場合、そのピクセルはその曲面の既存のCоverPixに結合されてもよい。上記のいずれにも当てはまらない場合は、新たなCоverPixが割り当てられ、そのインデックスは並べ替えにより、そのX,Y位置のCоverPix IDの連結リストに入れられる。
【0088】
ピクセルのシェーディング処理は最も経費の嵩む単一操作であるため、ピクセルがレンダリングに寄与することになりそうな場合にのみ実行される。
【0089】
カバレッジ・バッファ::集合関数にヘルパー関数を付随させた実装例の擬似コードの具体例を、以下に説明する。
【0090】
【0091】
【0092】
【0093】
【0094】
【0095】
【0096】
【0097】
ピクセルが同一曲面上にある場合、カバレッジに基づいた区分的フィッティングが実行される。区分的フィッティングは、CоverageMapサービスにより提供されるブーリアン演算を使用して実行される。これらの計算、交差、差分、結合は、単一のインライン・スカラー命令を利用して実行できる。「z軸方向の」連結リストは、画像データ表示から最も遠いものから最も近いものの順に並べ替えられることに留意しなければならない。これにより、オクルージョン(掩蔽)を直ちに拒否することができるようになり、ピクセルが複合されてゆくのと同じ順序になる。
【0098】
全てのポリゴンが走査変換されてしまい、カバレッジ・バッファが完全に確定されると、そこをトラバース走査して複合して最終画像に合成することができる。これは、各ピクセルの連結リストを漏れなく辿り、連結された順に複合物を当て嵌めることによって行われる。
【0099】
カバレッジ・バッファに対するこの複合処理の1つの考えられる実装例の擬似コードの具体例を以下に記載する。
【0100】
【0101】
【0102】
実施形態によっては、シェーディングで求められた全ての値にアルファを掛けて事前乗算し、最も高いピクセルのカバレージ×アルファが、シェーディングで求められたPixCоverの値を適用するための結合スカラーとして使用される。
【0103】
実施形態によっては、区分的フィッティングについて説明した技術に類似した技術を採用して、区分的曲面オクルージョンを利用することで、複雑な場面を合成することができる。
【0104】
実施形態によっては、上記の複合操作は列挙型の定義で記述できるものもある。一例を以下に記載する。
【0105】
本件に提示された高品質レンダリング手法を利用してレンダリングした後、レンダリング処理された画像は、図3に記載された要素134として示されるが、これは、異なる手法を利用して生成された、米国特許第8,175,931B2号明細書の図2に示されている画像(要素134)に一致している。レンダリングのうちサブピクセル・レンダリング部は、仮想16倍線形解像度をもたらしはするが、レンダリング時間が約20%増加することは注目に値する。
【0106】
7.0 特注仕様製品の合成データ表示の高品質レンダリング表示を得るための具体例の方法
実施形態によっては、特注仕様に誂えた製品の合成データ表示の高品質レンダリングのための方法は、特注仕様に誂えた製品の画像をレンダリングすることを含んでいるものもあるが、その場合、製品を製作するための命令が、1組の制約されたキー値から構成されているPrоductOptiоnsフレームワークにより提供される。
【0107】
実施形態によっては、製品オプションは、キーと値のペアとして表すことができるものがある。キー値のペアは、個々の製品にまたがっているとともに或る分類の製品表す標識である。各ペアを構成するキーには、素材の種類、色、サイズなどが含まれる場合がある。
【0108】
キー値のペアの値は、製作命令を定めている特定の離散値または連続値である。離散(列挙型)値の具体例としては、綿布、綿とポリエステルの混合布、シルク布などのような個別の種類の生地が挙げられる。離散値には、白、紺、黒などのような特定の色が含まれていてもよい。
【0109】
キー値のペアの連続値の具体例には、長さまたはリボン形状などのような単一要素、印刷用のフレームのサイズ(幅(単位インチ)または高さ(単位インチ))などのようなベクター、または、EU向けの箱のサイズ (幅 (単位ミリメートル)、高さ (単位ミリメートル)、奥行き (単位ミリメートル)) などのような、欧州諸国向けの箱のサイズなどのようなベクターが含まれることもある。
【0110】
上記値は、例えば、Tシャツのデザイン用画像、上着の背面の刺繍ファイル、腕輪の彫刻デザインなど、既知のファイル形式を参照する場合もある。
【0111】
実施形態によっては、キー値ペアの値は、画像、線、円、長方形、テキスト、グループなどのようなデザイン用の1組のグラフィックの基本要素を含んでいてもよいものもある。
【0112】
製品オプションのキー値にはデフォルト値があってもよい。デフォルト値は、特注仕様に誂える処理によりキー値のペアを変更せずに製品を作製することになる事前設定値である。キー値は、変更されると、製品オプションのフレームワーク事象連鎖を生じることがある。製品オプションのフレームワーク事象連鎖とは、時間内に順序付けされたキー値変更ごとの更新記録である。
【0113】
製品種類はそれ自体、製品オプションのキー値で表される。このオプション 種類を利用すると、既によく知っている関係により、或る1つの製品種類をもう1つ別の製品種類と関連付けすることができる。製品オプションのフレームワーク事象連鎖は1つ以上の製品を含んでいることもあり、連鎖は或る事象を代表している、または、記念していることもある。各製品が或る事象を代表または記念しているようにしてもよい。事象の具体例としては、招待状、特別な日の記録カード、誕生日カード、誕生日プレゼント、記念日カード、出産のお知らせ、出欠返事カード、祝祭日カード、祝祭日ギフト、お礼カード、お見舞いカードなどが挙げられる。
【0114】
PrоductOptiоnキー値の各ペアは、インターフェイスをユーザに自動提示するために使用することができる。PrоductOptiоnキー値の各ペアは、ユーザが提供するアクションすなわち入力に基づいて設定または変更することができる。
【0115】
実施例によっては、較正品のレンダリング・データ資源は、キー値のペアを適用することにより、特注仕様に誂えた製品の画像としてレンダリング処理される。キー値のペアは以下のもののうち少なくとも1つを決めることができるが、すなわち、レンダリング・データ資源の色または色マップ、レンダリング・データ資源のテクスチャまたはテクスチャ曲面、製品の装飾または模様を表している画像、レンダリング・データ資源のジオメトリのサイズ関係など。
【0116】
本件で提示されている高品質レンダリング法は、ピクセル解像度での走査変換ジオメトリを利用する。更に、サブピクセルのカバレッジは、点乗積スカラー命令によって実行されるエッジ評価を利用して値が求められる。更に、サブピクセルのカバレッジは、スカラー命令を利用して、少なくとも16×16のバイナリ配列を使用して値が求められる。
【0117】
8.0 具体例のレンダリングの流れ
図4は、いくつかの実施形態による、合成画像をレンダリングするための具体例の処理フローを示している。この処理過程により、ユーザがデザインした製品を製造することができるようになるが、該処理過程はユーザが作成した色やデザインを、例えば、布地の平面型紙の各断片から作り上げられ縫い合わされる製品に適用することを含んでいる。図4で説明した工程は、例えば、図1で説明した製品合成データ表示レンダリング・プラットフォーム101に実装された、製品を特注仕様に誂えるシステムによって実行することができる。
【0118】
工程402で、製品を特注仕様に誂えるシステムは、特注仕様に誂えた製品を取り込んだデータを受信する。製品を特注仕様に誂えるシステムはユーザが製品を特注仕様にすることができるように、例えば、ユーザ・インターフェイスを提供するとよい。ここでは、製品を特注仕様に誂えるプラットフォームは、特注仕様製品を取り込んだデータを、ユーザ・インターフェイスを介して受信することができる。インターフェイスは1つ以上のウェブページとして実装することができる。ユーザ・インターフェイスにより、色、タイル画像、写真またはデザインされた画像などを、製品を構成している2次元型紙の各断片にユーザは対話式に適用することができる。ユーザ・インターフェイスによって生成されるデータには、ユーザアカウント・データ、製品説明(ユーザの特注仕様製品を説明している)、ユーザ画像デザイン(ユーザ・コンテンツを含む)、選ばれた色(ユーザが選択した色)、選ばれた素材(特注仕様製品の素材の種類)、選ばれた仕上げ(特注仕様製品に対してユーザが選択した仕上げ)などが含まれている。ユーザ・インターフェイスは、ユーザデザインを記述する1組の命令をアセンブリ言語に翻訳するように、更にまた、ユーザ製品レンダリング・プログラムから最終製品の画像を要求するように構成されているとよい。
【0119】
工程404で、製品を特注仕様に誂えるシステムは、本件で提示されている高品質レンダリング手法を実現するユーザ製品レンダリング・プログラムを利用して、ユーザのための特注仕様製品をレンダリングにより視覚表示する。ユーザ製品レンダリング・プログラムは、(ユーザ・インターフェイス部とのユーザのやり取りに基づいた)2次元型紙の各断片のデータ・情報・説明を受信するとともに、それ以外のユーザの好みを受信するが、ここでは例えば、反映モジュールにより供給される情報を利用する。反射モジュールは、製品の画像を生成するために使用される較正品のレンダリング・データ資源(ジオメトリ、輝度マップ、色マップ、および、安全領域カバレッジ・マップを含む)に対する較正色マップおよび校正輝度マップを生成するよう構成されているとよい。次に、レンダリング・プログラムはカット・アンド・ステッチ(切り抜いて縫い付ける処理)で製作された最終製品の画像を合成し、次いでその画像がユーザまたは消費者に表示される。
【0120】
工程406で、製品を特注仕様に誂えるシステムは、本件に提示されている高品質レンダリング手法を実装する製品製造用レンダリング・プログラムを使用して、特注仕様製品を製造業者のためにレンダリング処理する。製品製造用レンダリング・プログラムは、2次元型紙の各断片のデータ・情報・説明を受信するとともに、それ以外の、反映モジュールにより供給されるユーザの好みおよび情報を受信し、更にまた、製造モジュールによって使用される画像型紙ファイル、裁断ファイル、および、オペレータの指示を準備することができる。
【0121】
工程408で、製品を特注仕様に誂えるシステムは、特注仕様製品を製造業者に送信し、製造業者は、製造設備を使用して特注仕様製品を製造する。製造には、例えば以下の処理過程が含まれる。すなわち、1)画像型紙ファイルと裁断ファイルを使用して平面型紙の各断片を製作する、2)オペレータの指示に基づいて型紙の各断片を縫い合わせる、3)仕上げ工程を実施する、4)オペレータの指示に基づいて製品を出荷する、5)例えば、ひな形撮像処理の多様なタスクを実行することができるひな型撮像処理コンポーネントに入力される、反映部の製品情報(模様、較正マークアップを付随している基準製品、色サンプルおよび素材サンプル、または、これらの各種組合せを含む)を収集する、または、これら項目を各種組合せて行う。
【0122】
工程410で、製品を特注仕様に誂えるシステムは、反映モジュールを使用して反映処理過程を実行する。反射モジュールは、該システムの他の各部にフィードバックを提供するシステムの一部であってもよい。反映モジュールは、例えば、以下の各種タスクを実行することができる。すなわち、1)更新された製品型紙を製品製造用レンダリング・プログラム部(較正型紙および可視領域レイアウト)に提供する、2)ユーザ製品レンダリング・プログラム部(較正型紙および可視領域レイアウト)により使用される基準製品を製造する、3)製造業者の基準製品を使用して型紙位置を較正する、4)基準製品の較正写真基準をユーザ製品レンダリング・プログラム部に提供する、5)ユーザ製品レンダリング・プログラム部のための較正反射率・色マッピング(較正色マップおよび較正輝度マップ)を提供する、または、これら項目の各種組合せを行う。
【0123】
9.0 製造
製造処理過程は、物的製品の製造は元よりデジタル製品の製造に関連していてもよい。製品を生成するための製造命令は、製品のデジタル設計のためのキー値の複数ペアに基づいて生成されるせいで、状況によっては、物的製品の製造は元より、デジタル製品の製造にも同じ製造命令が使用される場合がある。
【0124】
実施形態によっては、製品オプション・フレームワークは、OutputStyleと呼ばれるキー値のペアのインターフェイスを構築しているものもある。OutputStyleキーのインターフェイスにより、デザイナー(または、その他の共同作業者)が対話型設計を提示するための媒体の値を選択することができるようになる。選ばれるものの例として、JPEG_Image、GIFF_Image、および、H264_Videоが挙げられる。
【0125】
デザイナーがGIFF_Imageオプションを選択した場合、製品オプション・フレームワークは、KeyValueJournalのキー値と、各キーのキー値の1つ1つをトラバース走査するようにとの命令を製造システムに送信し、ユーザ製品レンダリング・プログラムを使用することで、変更を加えた特注仕様の物的製品の状態をレンダリング処理してsRGB32ビットRGBA形式の画像として映し出すことができる。その後、製造システムはレンダリング・データ表示をローカル画像キャッシュに保存することができる。
【0126】
次に、製造システムは、ローカル画像キャッシュに保存された各画像をトラバース走査し、その画像集合に最適な色パレットを判定することができる。
【0127】
続いて、製造システムは、ローカル画像キャッシュの各画像を32ビットRGBA形式から8ビットのインデックス付きの色に変換することができる。
【0128】
ここで、製造システムは、8ビットのインデックス付きカラー画像キャッシュの入力KeyValueJournalのUUIDをコード化する電子透かしを埋め込むことができる。
【0129】
次に、製造システムは、画像ファイルのコード化を開始することができる。例えば、製造システムがヘッダのバイトを書き出し、論理画面記述子のバイトを書き出し、見つかった色パレットをgifグローバル・カラー・テーブルとして書き出し、gif8ビット文字のアプリケーション名を書き出し、更に、入力KeyValueJournalのUUIDをコード化するコメント (または、透かし) としてメタデータを埋め込む。
【0130】
製造システムがすべてのフレームを処理してしまうと、製造システムはファイル・ターミネータ(ゼロのASCIIコードなどのような)を画像ファイルに書き出して、製作されたGIF製品を出力する。
【0131】
この時点で、製品を製造するための製造命令の実行が終了し、製品の製造が完了する。
【0132】
10.0 実装機構―ハードウェア概要
一実施形態によれば、本明細書で説明される技術は、1つ以上の専用電算装置により実装される。専用電算装置は、これらの技術を実施するように配線で接続されていてもよいし、1つ以上の特定用途向け集積回路(ASIC)やフィールド・プログラマブル・ゲート・アレイ(FPGA)などのような、上記技術を実施するよう持続的にプログラム制御されているデジタル電子デバイスを備えていてもよいし、或いは、ファームウェア、メモリ、それ以外の記憶装置、または、これらの何らかの組合わせに在中しているプログラム命令に従って上記技術を実施するようにプログラムされた1つ以上の汎用ハードウェア演算処理装置を備えていても構わない。このような専用電算装置は、特注仕様のハードウェアに組込まれた論理、ASIC、または、FPGAを特注仕様のプログラミングと組み合わせることで、上記技術を実現するようにしても構わない。専用電算装置は、デスクトップ・コンピュータ・システム、ポータブル・コンピュータ・システム、ハンドヘルド・デバイス、ネットワーク・デバイス、またはこれら以外の何であれ、上記技術を実現するためのハードウェアに組込まれた論理、プログラム論理、または、その両方の論理を組み入れている装置であってもよい。
【0133】
例えば、図5はコンピュータ・システム500を例示しているブロック図である。コンピュータ・システム500は、情報を通信するためのバス502またはそれ以外の通信機構と、情報を処理するためにバス502に接続されたハードウェア演算処理装置504を備えている。ハードウェア演算処理装置504は、例えば、汎用マイクロプロセッサであってもよい。
【0134】
コンピュータ・システム500は、演算処理装置504によって実行される情報および命令を保存するためにバス502に接続された、ランダム・アクセス・メモリ(RAM)または、それ以外の動的記憶装置などのような、メインメモリ506も備えている。メインメモリ506は、演算処理装置504によって実行される命令の実行中に、一時変数またはそれ以外の中間情報を保存するために使用することもできる。そのような命令は、演算処理装置504にアクセス可能な持続的な記憶媒体に保存されると、コンピュータ・システム500を、それら命令で指定されている操作を実行するよう特別に誂えた専用マシンへと変える。
【0135】
コンピュータ・システム500はバス502に接続されたリード・オンリ・メモリ(ROM)508またはそれ以外の静的記憶装置を更に備えていることで、演算処理装置504への静的情報および命令を記憶するようにしている。磁気ディスクや光ディスクなどのような記憶装置510が設けられて、バス502に接続されていることで、情報および命令を記憶するようにしている。
【0136】
コンピュータ・システム500はバス502を介して陰極線管(CRT)などのような表示装置512に接続されていることで、コンピュータ・ユーザに情報を表示して見せることができる。英数字キーとそれ以外のキーを備えている入力装置514はバス502に接続されていることで、情報および選ばれたコマンドを演算処理装置504に通信するようにしている。もう1つ別のタイプのユーザ入力装置は、マウス、トラックボール、または、カーソル方向キーなどのようなカーソル制御516であり、方向情報および選ばれたコマンドを演算処理装置504に伝達し、また、表示装置512上のカーソルの移動を制御するためにある。入力装置は、第1軸(例えば、x軸)と第2軸(例えば、y軸)の2軸で自由度が2であるのが典型的であるが、このことにより、入力装置は平面内の位置を指定できる。
【0137】
コンピュータ・システム500は本件記載の各技術を実現するにあたり、特注仕様のハードウェアに組込まれた論理、1つ以上のASICまたはFPGA、ファームウェア、コンピュータ・システムと組み合わせてコンピュータ・システム500を専用マシンに変える、もしくは、そうなるようにコンピュータ・システム500をプログラム制御するプログラム論理、または、これらの各種組合せを利用することができる。一実施形態によれば、本件の技術は、演算処理装置504がメインメモリ506に在中している1つ以上の命令からなる1つ以上のシーケンスを実行するのに応答して、コンピュータ・システム500により実施される。上記のような命令は、もう1つ別の記憶媒体、例えば、記憶装置510からメインメモリ506に読み出されるようにしてもよい。メインメモリ506に在中している各シーケンスの命令が実行されることで、演算処理装置504が本件記載の各処理工程を実行する。これに代わる実施形態では、ソフトウェア命令の代わりに、または、ソフトウェア命令と組み合わせて、配線で接続された回路を使用するようにしてもよい。
【0138】
「記憶媒体」なる表現は、本件で使用される場合、機械を特定の態様で作動させるデータ、命令、または、その両方を保存するのであれ何であれ、持続的媒体を指すものとする。このような記憶媒体は、不揮発性媒体、揮発性媒体、または、その両方から構成されていてもよい。不揮発性媒体の例としては、例えば、記憶装置510などのような光ディスクまたは磁気ディスクが挙げられる。揮発性媒体には、メインメモリ506などのような動的メモリが含まれる。記憶媒体の一般的な形態としては、例えば、フロッピー・ディスク、フレキシブル・ディスク、ハードディスク、ソリッド・ステート・ドライブ、磁気テープまたはこれ以外の磁気データ記憶媒体、CD-ROM、何であれそ例外の光学データ記憶媒体、何であれ、色々な模様に配置された穴が設けられた物的媒体、RAM、PROMおよびEPROM、フラッシュEPROM、NVRAM、何であれ上記以外のメモリ・チップまたはメモリカートリッジが挙げられる。
【0139】
記憶媒体は、伝送媒体とは別個であるが、伝送媒体と組み合わせて使用することもできる。伝送媒体は、記憶媒体間の情報の転送に関与している。例えば、伝送媒体には、同軸ケーブル、銅線、および、バス502を構成しているワイヤを含む光ファイバが挙げられる。伝送媒体は、電波通信中および赤外線データ通信中に生成される音波または光波の形態をとることもある。
【0140】
1つ以上の命令の1つ以上のシーケンスを演算処理装置504に伝搬して実行させるようにするのに、様々な形態の媒体が関与し得る。例えば、命令は最初、リモート ・コンピュータの磁気ディスクまたはソリッド・ステート・ドライブに保有されている場合がある。リモート・コンピュータは命令を動的メモリにロードし、モデムを使用して電話回線経由で命令を送信することができる。コンピュータ・システム500にとってローカルなモデムは、電話回線上のデータを受信し、赤外線送信機を使用してデータを赤外線信号に変換することができる。赤外線検出器は赤外線信号で搬送されてくるデータを受信することができ、適切な回路がそのデータをバス502上に渡すことができる。バス502はデータをメインメモリ506に搬送し、そこから演算処理装置504が命令を取り出して実行する。メインメモリ506によって受信された命令は、選択的に、演算処理装置504による実行の前または後のいずれかに記憶装置510に保存するされる。
【0141】
コンピュータ・システム500は、バス502に接続された通信インターフェイス518も備えている。通信インターフェイス518は、ローカル・ネットワーク522に接続されたネットワーク・リンク520に連結して、双方向データ通信を提供する。例えば、通信インターフェイス518は、総合デジタル通信網(ISDN)カード、ケーブル・モデム、衛星モデム、または、対応するタイプの電話回線へのデータ通信接続を提供するモデムであるとよい。もう1つ別の例として、通信インターフェイス518は、互換性のあるLANへのデータ通信接続を提供するローカル・エリア・ネットワーク(LAN)カードであってもよい。無線リンクが実装されていてもよい。このような実装形態では、通信インターフェイス518は、多様な種類の情報を表すデジタル・データ・ストリームを搬送する電気信号、電磁信号、または、光信号を送受信する。
【0142】
ネットワーク・リンク520は、通常、1つ以上のネットワークを介して他のデータ・デバイスにデータ通信を提供する。例えば、ネットワーク・リンク520は、ローカル・ネットワーク522を介して、ホスト・コンピュータ524またはインターネット・サービス・プロバイダ(ISP)526によって運営されるデータ設備への接続を提供することができる。ISP526は、延いては、目下のところ一般に「インターネット」528と呼称されている世界規模のパケット・データ通信ネットワークを通じてデータ通信サービスを提供している。ローカル・ネットワーク522およびインターネット528は両方とも、デジタル・データ・ストリームを伝搬する電気信号、電磁信号、または、光信号を使用する。コンピュータ・システム500との間でデジタル・データを搬送する、多様なネットワークを介する信号、ネットワーク・リンク520上の信号、および、通信インターフェイス518を介する信号は、伝送媒体の具体的な形態例である。
【0143】
コンピュータ・システム500は、ネットワーク(1つまたは複数)、ネットワーク・リンク520、および、通信インターフェイス518を介して、メッセージを送信し、プログラムコードを含むデータを受信することができる。インターネットの例では、サーバ530がアプリケーション・プログラムに対して要求されたコードを送信するとすれば、インターネット528、ISP526、ローカル・ネットワーク522、および、通信インターフェイス518を経由して送信することになると思われる。
【0144】
受信されたコードは、受信されたときに演算処理装置504により実行され、後で実行するために記憶装置510もしくはそれ以外の不揮発性記憶装置に保存され、または、その両方が行われる。
【0145】
11.0 拡張機能と代替例
前述の明細書では、本発明の各実施形態を、実装ごとに異なってくる可能性がある多くの特定の詳細に言及しながら説明してきた。従って、発明が何であるか、また、出願人は発明がどうであると意図しているのかを示す唯一かつ排他的な指標は特許請求の範囲の請求項一式であり、これら請求項は本願から発生し、それぞれの発生由来となる特定の形態を取っているが、そこには何であれ、後発の修正も含んでいる。かかる請求項に包含されている各用語について本明細書に明示されている定義が、かかる用語が特許請求の範囲で使用された場合の意味に適用されるものとする。従って、どの1つの請求項であれ、そこに明示的に記載されていない限定、要素、特性、特徴、利点、または、属性は、いかなる態様であれそのような請求項の範囲を限定するものではない。従って、明細書および図面は、限定的な視座ではなく、例示的な視座で見るべきである。
【符号の説明】
【0146】
100 コンピュータ・システム
101 製品合成データ表示レンダリング・プラットフォーム
106 レンダリング・エンジン
108 ユーザ・インターフェイス
112 合成データ表示生成器
120 製品オプション・フレームワーク
202 較正品レンダリング・データ資源を生成する処理過程
500 コンピュータ・システム
図1
図2
図3
図4
図5
【国際調査報告】