JPWO2017158734A1 - テクスチャマッピング装置およびテクスチャマッピングプログラム - Google Patents

テクスチャマッピング装置およびテクスチャマッピングプログラム Download PDF

Info

Publication number
JPWO2017158734A1
JPWO2017158734A1 JP2017555736A JP2017555736A JPWO2017158734A1 JP WO2017158734 A1 JPWO2017158734 A1 JP WO2017158734A1 JP 2017555736 A JP2017555736 A JP 2017555736A JP 2017555736 A JP2017555736 A JP 2017555736A JP WO2017158734 A1 JPWO2017158734 A1 JP WO2017158734A1
Authority
JP
Japan
Prior art keywords
texture
atlas
information
image
mapping
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
JP2017555736A
Other languages
English (en)
Other versions
JP6271107B1 (ja
Inventor
智史 櫻井
智史 櫻井
誠 大津留
誠 大津留
博康 根岸
博康 根岸
下谷 光生
光生 下谷
晴彦 若柳
晴彦 若柳
健史 清水
健史 清水
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Application granted granted Critical
Publication of JP6271107B1 publication Critical patent/JP6271107B1/ja
Publication of JPWO2017158734A1 publication Critical patent/JPWO2017158734A1/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/001Texturing; Colouring; Generation of texture or colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/203Drawing of straight lines or curves

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Image Generation (AREA)

Abstract

第1のメモリ(902)は、テクスチャ画像群(130)が記憶されるメインメモリである。第2のメモリ(912)は、テクスチャ画像群からコピーされた1つ以上のテクスチャ画像が配置された第1のテクスチャアトラス(170)と、新たに生成される第2のテクスチャアトラス(170)とが記憶されるVRAMである。テクスチャコピー部(119)は、第1のテクスチャアトラスに配置された少なくともいずれかのテクスチャ画像を、第1のテクスチャアトラスから第2のテクスチャアトラスにコピーする。

Description

本発明は、テクスチャマッピングに関するものである。
コンピュータグラフィックスにおいて、描画内容のプリミティブとしてポリゴンが多用されている。また、一般的に、描画内容の質感を表現するために、テクスチャと呼ばれる2次元画像がポリゴンにマッピングされる。
テクスチャがポリゴンにマッピングされる場合、マッピングされるテクスチャが指定された後にポリゴンが描画される。また、テクスチャを変更する処理は、時間がかかることが知られている。そのため、複数のポリゴンにそれぞれ異なるテクスチャがマッピングされると、処理時間が長くなる。
この課題を解決する手法として、複数のテクスチャが結合されたテクスチャアトラスを用意して、テクスチャアトラスに含まれる各テクスチャをポリゴンにマッピングする手法が知られている。この手法により、複数のポリゴンにそれぞれ異なるテクスチャを高速にマッピングすることができる
特許文献1には、テクスチャアトラスを動的に高速かつ低負荷で生成する方法が開示されている。
しかし、テクスチャアトラスにテクスチャが入りきらなくなった場合には、テクスチャアトラスを破棄して新たなテクスチャアトラスを生成する必要がある。そして、破棄されたテクスチャアトラスに含まれるテクスチャのうち、まだ使用するものは、新たなテクスチャアトラスにコピーする必要がある。テクスチャのコピーはメインメモリからVRAMへのデータのコピーを意味するが、そのようなコピーは一般的に時間がかかる。
また、描画処理は段数が多いパイプラインで実行されることが多いが、テクスチャアトラスを破棄して新たなテクスチャアトラスを生成する際に、パイプラインを止める必要がある。そのため、描画速度が低下してしまう。
特開2013−206094号公報
本発明は、テクスチャマッピングにおける描画速度の低下を抑えることを目的とする。
本発明のテクスチャマッピング装置は、
1つ以上のテクスチャ画像であるテクスチャ画像群が記憶される第1の記憶部と、
前記テクスチャ画像群からコピーされた1つ以上のテクスチャ画像が配置された第1のテクスチャアトラスと、新たに生成される第2のテクスチャアトラスとが記憶される第2の記憶部と、
前記第1のテクスチャアトラスに配置された少なくともいずれかのテクスチャ画像を、前記第1のテクスチャアトラスから前記第2のテクスチャアトラスにコピーするテクスチャコピー部とを備える。
本発明によれば、第2の記憶部内で、第1のテクスチャアトラスから第2のテクスチャアトラスへのテクスチャ画像のコピーが行われる。
その結果、第1の記憶部内のテクスチャ画像群から第2の記憶部内の第2のテクスチャアトラスにコピーされるテクスチャ画像が少なくなる。
したがって、記憶部間で行われるテクスチャ画像のコピーが減るため、描画速度の低下を抑えることができる。
実施の形態1におけるテクスチャマッピング装置100の構成図。 実施の形態1におけるテクスチャマッピング方法のフローチャート。 実施の形態1におけるテクスチャアトラス生成処理(S110)のフローチャート。 実施の形態1における第1の配置情報テーブル140を示す図。 実施の形態1における第1のテクスチャアトラス170を示す図。 実施の形態1におけるテクスチャマッピング処理(S120)のフローチャート。 実施の形態1における第1のマッピング情報データ150を示す図。 実施の形態1におけるテクスチャ画像131とテクスチャ132との関係図。 実施の形態1における第2のマッピング情報データ150を示す図。 実施の形態1におけるポリゴン画像160を示す図。 実施の形態1におけるテクスチャコピー処理(S130)のフローチャート。 実施の形態1における第2の配置情報テーブル140を示す図。 実施の形態1における第3のマッピング情報データ150を示す図。 実施の形態1における第2のテクスチャアトラス170を示す図。 実施の形態におけるテクスチャマッピング装置100のハードウェア構成図。
実施の形態1.
テクスチャマッピング装置100について、図1から図14に基づいて説明する。
***構成の説明***
図1に基づいて、テクスチャマッピング装置100の構成について説明する。
テクスチャマッピング装置100は、第1のプロセッサ901と第1のメモリ902と補助記憶装置903と第2のプロセッサ911と第2のメモリ912とディスプレイ908いったハードウェアを備えるコンピュータである。
第1のプロセッサ901は、信号線を介して第1のメモリ902と補助記憶装置903と第2のプロセッサ911と接続されている。
第2のプロセッサ911は、信号線を介して第1のプロセッサ901と第2のメモリ912とディスプレイ908と接続されている。
第1のプロセッサ901および第2のプロセッサ911は、プロセッシングを行うIC(Integrated Circuit)であり、他のハードウェアを制御する。具体的には、第1のプロセッサ901はCPUであり、第2のプロセッサ911はGPUである。CPUはCentral Processing Unitの略称であり、GPUはGraphics Processing Unitの略称である。
第1のメモリ902および第2のメモリ912は揮発性の記憶装置である。具体的には、第1のメモリ902はメインメモリであり、第2のメモリ912はVRAM(Video RAM)である。RAMは、Random Access Memoryの略称である。
補助記憶装置903は不揮発性の記憶装置である。具体的には、補助記憶装置903は、ROM、HDDまたはフラッシュメモリである。ROMはRead Only Memoryの略称であり、HDDはHard Disk Driveの略称である。
ディスプレイ908は、データを表示する表示装置である。具体的には、ディスプレイ908は液晶ディスプレイである。
テクスチャマッピング装置100は、アプリケーション部110と受付部111とテクスチャアトラス生成部112と情報変換部113とテクスチャコピー部119と描画部121といった「部」を機能構成の要素として備える。「部」の機能はソフトウェアで実現される。「部」の機能については後述する。
補助記憶装置903には、「部」の機能を実現するプログラムが記憶されている。「部」の機能を実現するプログラムは、第1のメモリ902および第2のメモリ912にロードされて、第1のプロセッサ901および第2のプロセッサ911によって実行される。
さらに、補助記憶装置903にはOS(Operating System)が記憶されている。OSの少なくとも一部は、第1のメモリ902にロードされて、第1のプロセッサ901によって実行される。
つまり、第1のプロセッサ901は、OSを実行しながら、「部」の機能を実現するプログラムを実行する。
「部」の機能を実現するプログラムを実行して得られるデータは、メモリ(902、912)、補助記憶装置903、プロセッサ(901、911)内のレジスタまたはプロセッサ(901、911)内のキャッシュメモリといった記憶装置に記憶される。これらの記憶装置は、データを記憶する記憶部として機能する。第1のメモリ902は第1の記憶部191として機能し、第2のメモリ912は第2の記憶部192として機能する。
第1のメモリ902および第2のメモリ912には、テクスチャマッピング装置100で使用、生成、入出力または送受信されるデータが記憶される。
具体的には、第1のメモリ902には、テクスチャ画像群130、配置情報テーブル140およびマッピング情報データ150等が記憶される。また、第2のメモリ912には、ポリゴン画像160およびテクスチャアトラス170等が記憶される。第1のメモリ902および第2のメモリ912に記憶されるデータの内容については後述する。
ディスプレイ908はデータを表示する表示部193として機能する。
第1のプロセッサ901と第1のメモリ902と補助記憶装置903とをまとめたハードウェア、および、第2のプロセッサ911と第2のメモリ912とをまとめたハードウェアを「プロセッシングサーキットリ」という。
「部」は「処理」または「工程」に読み替えてもよい。「部」の機能はファームウェアで実現してもよい。
「部」の機能を実現するプログラムは、磁気ディスク、光ディスクまたはフラッシュメモリ等の不揮発性の記憶媒体に記憶することができる。
***動作の説明***
テクスチャマッピング装置100の動作はテクスチャマッピング方法に相当する。また、テクスチャマッピング方法の手順はテクスチャマッピングプログラムの手順に相当する。
図2に基づいて、テクスチャマッピング方法について説明する。
ステップS101において、アプリケーション部110は、追加画像群またはマッピング情報データ150を出力する。
アプリケーション部110は、ポリゴン画像160に対する画像処理を行うためのアプリケーションプログラムを実行する機能である。
ポリゴン画像160は、テクスチャ132が描画されるポリゴン161が含まれる画像であり、表示部193によって表示される。
追加画像群は、1つ以上のテクスチャ画像131である。
テクスチャ画像131は、1つ以上のテクスチャが含まれる画像である。
マッピング情報データ150は、1つ以上のマッピング情報151を含んだデータである。
マッピング情報151は、ポリゴン情報152と、テクスチャ画像識別子153と、テクスチャ情報154とを含む。
ポリゴン情報152は、ポリゴン画像160のうちの描画の対象となるポリゴン161が位置する部分を特定する情報である。
テクスチャ画像識別子153は、描画の対象となるテクスチャ132が含まれるテクスチャ画像131を識別する識別子である。
テクスチャ情報154は、テクスチャ画像識別子153で識別されるテクスチャ画像131のうちの描画の対象となるテクスチャ132が含まれる部分を特定する情報である。
受付部111は、アプリケーション部110から出力される追加画像群またはマッピング情報データ150を受け付ける。
追加画像群が受け付けられた場合、第1の記憶部191は追加画像群をテクスチャ画像群130に加えて、処理はステップS110に進む。
マッピング情報データ150が受け付けられた場合、第1の記憶部191はマッピング情報データ150を記憶し、処理はステップS120に進む。
ステップS110はテクスチャアトラス生成処理である。
ステップS110において、テクスチャアトラス生成部112は、受け付けられた追加画像群を、第1のテクスチャアトラス170に配置する。
第1のテクスチャアトラス170は、使用中のテクスチャアトラス170であり、1つ以上のテクスチャ画像131が配置されたテクスチャアトラス170である。
テクスチャアトラス生成処理(S110)の詳細については後述する。
ステップS120はテクスチャマッピング処理である。
ステップS120において、描画部121は、受け付けられたマッピング情報データ150を用いて、ポリゴン画像160内の描画の対象となるポリゴン161に、描画の対象となるテクスチャ132を描画する。
テクスチャマッピング処理(S120)の詳細については後述する。
図3に基づいて、テクスチャアトラス生成処理(S110)の手順を説明する。
ステップS111において、テクスチャアトラス生成部112は、第1のテクスチャアトラス170に、必要な空き領域があるかを判定する。必要な空き領域は、受け付けられた追加画像群を配置するために必要な空き領域である。受け付けられた追加画像群は、ステップS101で受け付けられた追加画像群である。
具体的には、テクスチャアトラス生成部112は、必要な空き領域の有無を以下のように判定する。
まず、テクスチャアトラス生成部112は、第1の配置情報テーブル140を用いて、配置個数を数える。第1の配置情報テーブル140は、第1のテクスチャアトラス170に対応する配置情報テーブル140である。配置個数は、第1のテクスチャアトラス170に配置されたテクスチャ画像131の個数である。配置情報テーブル140の内容については後述する。
次に、テクスチャアトラス生成部112は、最大個数と配置個数とを用いて、空き個数を算出する。空き個数は、最大個数から配置個数を引いた個数である。最大個数は、空のテクスチャアトラス170に配置することが可能なテクスチャ画像131の個数である。
そして、テクスチャアトラス生成部112は、追加画像数を空き個数と比較する。追加画像数は、受け付けられた追加画像群に含まれるテクスチャ画像131の個数である。
テクスチャ画像131の個数が空き個数より多い場合、必要な空き領域はない。
必要な空き領域がある場合、処理はステップS112に進む。
必要な空き領域がない場合、処理はステップS130に進む。
ステップS130はテクスチャコピー処理(S130)である。
ステップS130において、テクスチャコピー部119は、第2のテクスチャアトラス170を生成し、第1のテクスチャアトラス170内のテクスチャ画像131を第2のテクスチャアトラス170にコピーする。
第2のテクスチャアトラス170は、新たなテクスチャアトラス170である。
第1のテクスチャアトラス170内のテクスチャ画像131が第2のテクスチャアトラス170にコピーされた後、第1のテクスチャアトラス170が削除され、第2のテクスチャアトラス170が第1のテクスチャアトラス170として使用される。
テクスチャコピー処理(S130)の詳細については後述する。
ステップS112において、テクスチャアトラス生成部112は、受け付けられた追加画像群から未選択のテクスチャ画像131を1つ選択する。
ステップS113において、テクスチャアトラス生成部112は、選択されたテクスチャ画像131が第1のテクスチャアトラス170に配置済みであるかを判定する。
この判定は、第1の配置情報テーブル140を用いて行われる。
図4に基づいて、第1の配置情報テーブル140について説明する。
第1の配置情報テーブル140は、第1のテクスチャアトラス170に配置されたテクスチャ画像131毎に、テクスチャ画像131が配置された部分を管理するためのテーブルである。
第1の配置情報テーブル140は、第1のテクスチャアトラス170に配置されたテクスチャ画像131毎の配置情報141を含む。
配置情報141は、テクスチャ画像識別子と、テクスチャアトラス識別子と、範囲情報とを含む。
テクスチャ画像識別子は、テクスチャ画像131を識別する。
テクスチャアトラス識別子は、第1のテクスチャアトラス170を識別する。
範囲情報は、テクスチャ画像131が配置された部分を特定する情報である。具体的には、範囲情報は、テクスチャ画像131の左上の頂点が位置する箇所の座標値(U,V)と、テクスチャ画像131の幅(W)と、テクスチャ画像131の高さ(H)とを含む。
図5に、図4の第1の配置情報テーブル140に対応する第1のテクスチャアトラス170を示す。
第1のテクスチャアトラス170は「T100」という識別子で識別される。第1のテクスチャアトラス170の大きさは40×40ピクセルである。
第1のテクスチャアトラス170には、「T0」という識別子で識別されるテクスチャ画像131と、「T1」という識別子で識別されるテクスチャ画像131と、「T2」という識別子で識別されるテクスチャ画像131とが配置されている。各々のテクスチャ画像131の大きさは10×10ピクセルである。
図3に戻り、ステップS113の説明を続ける。
具体的には、テクスチャアトラス生成部112は、以下のように判定を行う。
テクスチャアトラス生成部112は、選択されたテクスチャ画像131の識別子と同じテクスチャ画像識別子が、第1の配置情報テーブル140に登録されているかを判定する。テクスチャ画像131の識別子はテクスチャ画像131に付加されているものとする。
当該テクスチャ画像識別子が第1の配置情報テーブル140に登録されている場合、選択されたテクスチャ画像131は、第1のテクスチャアトラス170に配置済みである。
選択されたテクスチャ画像131が第1のテクスチャアトラス170に配置済みである場合、処理はステップS116に進む。
選択されたテクスチャ画像131が第1のテクスチャアトラス170に配置済みでない場合、処理はステップS114に進む。
ステップS114において、テクスチャアトラス生成部112は、選択されたテクスチャ画像131を、第1のテクスチャアトラス170に配置する。
具体的には、テクスチャアトラス生成部112は、以下のように動作する。
まず、テクスチャアトラス生成部112は、第1の配置情報テーブル140を参照して、第1のテクスチャアトラス170の空き領域から、配置範囲を決定する。決定される配置範囲は、選択されたテクスチャ画像131が配置される部分である。配置範囲は、2次元のビンパッキング問題を解くためのアルゴリズムによって決定することができる。
そして、テクスチャアトラス生成部112は、選択されたテクスチャ画像131と範囲情報とを、描画部121に受け渡す。受け渡される範囲情報は、決定された配置範囲を示す情報である。
その後、描画部121は、第1のテクスチャアトラス170のうちの受け渡された範囲情報が示す部分に、受け渡されたテクスチャ画像131を描画する。
これにより、選択されたテクスチャ画像131が、第1のテクスチャアトラス170に配置される。
ステップS115において、テクスチャアトラス生成部112は、選択されたテクスチャ画像131に対応する配置情報141を、第1の配置情報テーブル140に追加する。
具体的には、テクスチャアトラス生成部112は、以下のように動作する。
まず、テクスチャアトラス生成部112は、テクスチャ画像識別子と、テクスチャアトラス識別子と、範囲情報とを含んだ配置情報141を生成する。
テクスチャ画像識別子は、選択されたテクスチャ画像131の識別子である。
テクスチャアトラス識別子は、第1のテクスチャアトラス170の識別子である。
範囲情報は、描画部121に受け渡された範囲情報である。
そして、テクスチャアトラス生成部112は、生成された配置情報141を、第1の配置情報テーブル140に追加する。
ステップS116において、テクスチャアトラス生成部112は、受け付けられた追加画像群に、未選択のテクスチャ画像131があるか判定する。
未選択のテクスチャ画像131がある場合、処理はステップS112に戻る。
未選択のテクスチャ画像131がない場合、テクスチャアトラス生成処理(S110)は終了する。
図6に基づいて、テクスチャマッピング処理(S120)の手順を説明する。
ステップS121において、情報変換部113は、第1のマッピング情報データ150から、未選択の第1のマッピング情報151を1つ選択する。
第1のマッピング情報データ150は、ステップS101で受け付けられたマッピング情報データ150である。
第1のマッピング情報151は、第1のマッピング情報データ150に含まれるマッピング情報151である。
図7に基づいて、第1のマッピング情報データ150について説明する。
第1のマッピング情報データ150は、1つ以上のマッピング情報151を含む。
第1のマッピング情報151は、ポリゴン情報152と、テクスチャ画像識別子153と、テクスチャ情報154とを含む。
ポリゴン情報152はポリゴン識別子とポリゴン座標とを含み、テクスチャ情報154はテクスチャ座標値を含む。
ポリゴン識別子は、ポリゴン161を識別する。
ポリゴン座標値は、ポリゴン161が有する頂点毎の座標値である。ポリゴン161の形状が三角形である場合、ポリゴン座標値は3組の座標値である。
テクスチャ画像識別子153は、テクスチャ画像131を識別する。
テクスチャ座標値は、テクスチャ132が有する頂点毎の座標値である。テクスチャ132の形状が三角形である場合、テクスチャ座標値は3組の座標値である。
図8に基づいて、テクスチャ画像131とテクスチャ132との関係について説明する。
テクスチャ画像131は、1つ以上のテクスチャ132を含む。具体的には、四角形のテクスチャ画像131が、三角形のテクスチャ132を2つ含む。
図8において、「T0」のテクスチャ画像131と、「T1」のテクスチャ画像131と、「T2」のテクスチャ画像131とは、それぞれ、四角形のテクスチャ画像131である。各々のテクスチャ画像131は、三角形のテクスチャ132を2つ含んでいる。
図6に戻り、ステップS122から説明を続ける。
ステップS122において、情報変換部113は、選択された第1のマッピング情報151に対応するテクスチャ画像131が、第1のテクスチャアトラス170に配置済みであるかを判定する。選択された第1のマッピング情報151に対応するテクスチャ画像131は、選択された第1のマッピング情報151に含まれるテクスチャ画像識別子153で識別されるテクスチャ画像131である。
具体的には、情報変換部113は、選択された第1のマッピング情報151に含まれるテクスチャ画像識別子153と同じテクスチャ画像識別子153が、第1の配置情報テーブル140に登録されているかを判定する。当該テクスチャ画像識別子153が第1の配置情報テーブル140に登録されている場合、選択された第1のマッピング情報151に対応するテクスチャ画像131は、第1のテクスチャアトラス170に配置済みである。
選択された第1のマッピング情報151に対応するテクスチャ画像131が、第1のテクスチャアトラス170に配置済みである場合、処理はステップS124に進む。
選択された第1のマッピング情報151に対応するテクスチャ画像131が、第1のテクスチャアトラス170に配置済みでない場合、処理はステップS123に進む。
ステップS123において、テクスチャアトラス生成部112は、選択された第1のマッピング情報151に対応するテクスチャ画像131を、第1のテクスチャアトラス170に配置する。
具体的には、テクスチャアトラス生成部112は、図3に基づいて説明したテクスチャアトラス生成処理(S110)を実行する。但し、テクスチャアトラス生成処理(S110)の対象は、S101で受け付けられた追加画像群ではなく、ステップS121で選択された第1のマッピング情報151に対応するテクスチャ画像131である。
ステップS124において、情報変換部113は、選択された第1のマッピング情報151に対応する第2のマッピング情報151を生成する。
第2のマッピング情報151は、選択された第1のマッピング情報151と同じく、ポリゴン情報152と、テクスチャ画像識別子153と、テクスチャ情報154とを含む。
第2のマッピング情報151に含まれるポリゴン情報152は、選択された第1のマッピング情報151に含まれるポリゴン情報152と同じである。
第2のマッピング情報151に含まれるテクスチャ画像識別子153は、第1のテクスチャアトラス170を識別する識別子である。
第2のマッピング情報151に含まれるテクスチャ情報154は、第1のテクスチャアトラス170のうちの選択された第1のマッピング情報151に含まれるテクスチャ情報154に対応するテクスチャ132が配置された部分、を特定する情報である。テクスチャ情報154に対応するテクスチャ132は、テクスチャ画像識別子153で識別されるテクスチャ画像131のうちのテクスチャ情報154で特定される部分にあるテクスチャ132である。
具体的には、情報変換部113は、選択された第1のマッピング情報151のうちのテクスチャ画像識別子153とテクスチャ情報154とを変えることによって、第2のマッピング情報151を生成する。
テクスチャ情報154であるテクスチャ座標値(U、V)は、以下のように変わる。
まず、情報変換部113は、選択された第1のマッピング情報151から、テクスチャ画像識別子を取得する。
次に、情報変換部113は、取得されたテクスチャ画像識別子153と同じテクスチャ画像識別子を含んだ配置情報141を、第1の配置情報テーブル140から選択する。
次に、情報変換部113は、選択された配置情報141に含まれる範囲情報から、座標値(U、V)を取得する。
そして、情報変換部113は、取得された座標値(U、V)を、選択された第1のマッピング情報151に含まれるテクスチャ座標値(U、V)に加算する。
図9に、図7の第1のマッピング情報データ150と図4の第1の配置情報テーブル140とに対応する第2のマッピング情報データ150を示す。
図7の第1のマッピング情報データ150において、テクスチャ画像識別子「T0」に対応するポリゴン識別子は「A」および「B」である。図4の第1の配置情報テーブル140において、テクスチャ画像識別子「T0」に対応する座標値(U、V)は(0、0)である。そのため、図9の第2のマッピング情報データ150において、ポリゴン識別子「A」「B」に対応するテクスチャ座標値(U、V)は、図7の第1のマッピング情報データ150におけるテクスチャ座標値(U、V)と同じである。
図7の第1のマッピング情報データ150において、テクスチャ画像識別子「T1」に対応するポリゴン識別子は「C」および「D」である。図4の第1の配置情報テーブル140において、テクスチャ画像識別子「T1」に対応する座標値(U、V)は(10、0)である。そのため、図9の第2のマッピング情報データ150において、ポリゴン識別子「C」「D」に対応するテクスチャ座標値(U、V)は、図7の第1のマッピング情報データ150におけるテクスチャ座標値(U、V)に(10、0)を足した値である。
図7の第1のマッピング情報データ150において、テクスチャ画像識別子「T2」に対応するポリゴン識別子は「E」および「F」である。図4の第1の配置情報テーブル140において、テクスチャ画像識別子「T2」に対応する座標値(U、V)は(20、0)である。そのため、図9の第2のマッピング情報データ150において、ポリゴン識別子「E」「F」に対応するテクスチャ座標値(U、V)は、図7の第1のマッピング情報データ150におけるテクスチャ座標値(U、V)に(20、0)を足した値である。
図6に戻り、ステップS124の説明を続ける。
情報変換部113は、第2のマッピング情報151を描画部121に受け渡す。
ステップS125において、第2のマッピング情報151に含まれるテクスチャ画像識別子153は、第1のテクスチャアトラス170を識別する。
そのため、描画部121は、第1のテクスチャアトラス170から、第2のマッピング情報151に含まれるテクスチャ情報154で特定される部分に配置されたテクスチャ132をコピーする。
次に、描画部121は、ポリゴン画像160から、第2のマッピング情報151に含まれるポリゴン情報152で特定される部分に位置するポリゴン161を選択する。
そして、描画部121は、第1のテクスチャアトラス170からコピーされたテクスチャ132を、ポリゴン画像160から選択されたポリゴン161に描画する。
ステップS126において、情報変換部113は、第1のマッピング情報データ150に、未選択の第1のマッピング情報151があるか判定する。
未選択の第1のマッピング情報151がある場合、処理はステップS121に戻る。
未選択の第1のマッピング情報151がない場合、テクスチャマッピング処理(S120)は終了する。
図10に、図9の第2のマッピング情報データ150に対応するポリゴン画像160を示す。このポリゴン画像160の大きさは50×40ピクセルである。
図10のポリゴン画像160において、図9の第2のマッピング情報データ150内のポリゴン情報152に対応するポリゴン161に、図9の第2のマッピング情報データ150内のテクスチャ情報154に対応するテクスチャ画像131が描画されている。
図11に基づいて、テクスチャコピー処理(S130)の手順を説明する。
ステップS131において、テクスチャコピー部119は、第2のテクスチャアトラス170を生成する。
具体的には、テクスチャコピー部119が第2のプロセッサ911に第2のテクスチャアトラス170用の記憶領域の確保を要求し、第2のプロセッサ911が第2のテクスチャアトラス170用の記憶領域を第2の記憶部192に確保する。
ステップS132において、テクスチャコピー部119は、第2の配置情報テーブル140を生成する。
第2の配置情報テーブル140は、第2のテクスチャアトラス170に対応する配置情報テーブル140である。
具体的には、テクスチャコピー部119は、第2の配置情報テーブル140用の記憶領域を第1の記憶部191に確保する。
ステップS133において、テクスチャコピー部119は、対象画像群を選択する。
対象画像群は、第1のテクスチャアトラス170から第2のテクスチャアトラス170にコピーされる対象となる1つ以上のテクスチャ画像131である。
具体的には、アプリケーション部110が、描画に必要なテクスチャ画像群を特定する。そして、テクスチャコピー部119は、特定されたテクスチャ画像群から、第1のテクスチャアトラス170に配置されている1つ以上のテクスチャ画像131を、対象画像群として選択する。
ステップS134において、テクスチャコピー部119は、対象画像群から未選択のテクスチャ画像131を1つ選択する。
ステップS135において、テクスチャコピー部119は、選択されたテクスチャ画像131に対応する配置情報141を、第2の配置情報テーブル140に追加する。
具体的には、テクスチャコピー部119は、以下のように動作する。
まず、テクスチャコピー部119は、第2の配置情報テーブル140を参照して、第2のテクスチャアトラス170の空き領域から、配置範囲を決定する。決定される配置範囲は、選択されたテクスチャ画像131が配置される部分である。配置範囲は、ステップS114と同じく、2次元ビンパッキング問題を解くためのアルゴリズムによって決定することができる。
次に、テクスチャコピー部119は、テクスチャ画像識別子と、テクスチャアトラス識別子と、範囲情報とを含んだ配置情報141を生成する。
テクスチャ画像識別子は、選択されたテクスチャ画像131の識別子である。
テクスチャアトラス識別子は、第2のテクスチャアトラス170の識別子である。
範囲情報は、決定された配置範囲を示す情報である。
そして、テクスチャコピー部119は、生成された配置情報141を、第2の配置情報テーブル140に追加する。
図12に、「T0」のテクスチャ画像131と「T2」のテクスチャ画像131とが対象画像群である場合の第2の配置情報テーブル140を示す。
図12の第2の配置情報テーブル140は、テクスチャ画像識別子「T0」を含んだ配置情報141と、テクスチャ画像識別子「T2」を含んだ配置情報141とを有する。
ステップS136において、テクスチャコピー部119は、第3のマッピング情報151を生成する。
第3のマッピング情報151は、選択されたテクスチャ画像131に対応するマッピング情報151である。
第3のマッピング情報151は、第1のマッピング情報151および第2のマッピング情報151と同じく、ポリゴン情報152とテクスチャ画像識別子153とテクスチャ情報154とを含む。
第3のマッピング情報151に含まれるポリゴン情報152は、第2のテクスチャアトラス170のうちの一部を特定する情報である。
第3のマッピング情報151に含まれるテクスチャ画像識別子153は、第1のテクスチャアトラス170を識別する識別子である。
第3のマッピング情報151に含まれるテクスチャ情報154は、第1のテクスチャアトラス170のうち、第1のマッピング情報151に含まれるテクスチャ情報154に対応するテクスチャ132が配置された部分を特定する情報である。
具体的には、テクスチャコピー部119は、第1の配置情報テーブル140と第2の配置情報テーブル140とを用いて、第3のマッピング情報151を生成する。
テクスチャ画像131の形状が四角形であり、テクスチャ132の形状が三角形である場合、テクスチャコピー部119は、第3のマッピング情報151を2つ生成する。
図13に、図12の第2の配置情報テーブル140と図4の第1の配置情報テーブル140とに対応する第3のマッピング情報データ150を示す。
ポリゴン情報152に含まれるポリゴン識別子は、任意の識別子である。
ポリゴン情報152に含まれるポリゴン座標値は、以下のように算出される。
まず、テクスチャコピー部119は、第2の配置情報テーブル140内の配置情報141に含まれる範囲情報を用いて、4つの座標値を算出する。この4つの座標値は、配置範囲が成す四角形の頂点毎の座標値である。範囲情報(U、V、W、H)が(0、0、10、10)である場合、4つの座標値は、(0、0)、(10、0)、(0、10)および(10、10)である。
そして、テクスチャコピー部119は、4つの座標値を用いて、3つの座標値を2組選択する。2組の3つの座標値は、配置範囲が成す四角形を構成する2つの三角形のそれぞれの頂点毎の座標値である。上記の場合、(0、0)と(10、0)と(0、10)との組、および、(10、0)と(0、10)と(10、10)との組が選択される。
選択される3つの座標値が、ポリゴン座標値となる。
テクスチャ画像識別子153は、第2のテクスチャアトラス170の識別子である。
テクスチャ情報154であるテクスチャ座標値は、第1の配置情報テーブル140内の配置情報141に含まれる範囲情報を用いて、算出される。算出方法は、ポリゴン座標値を算出する方法と同じである。
図11に戻り、ステップS136の説明を続ける。
テクスチャコピー部119は、第3のマッピング情報151を描画部121に受け渡す。
ステップS137において、テクスチャコピー部119から描画部121に受け渡された第3のマッピング情報151毎に、描画部121は以下のように動作する。
第3のマッピング情報151に含まれるテクスチャ画像識別子153は、第1のテクスチャアトラス170を識別する。
そのため、描画部121は、第1のテクスチャアトラス170から、第3のマッピング情報151に含まれるテクスチャ情報154で特定される部分に配置されたテクスチャ132をコピーする。
次に、描画部121は、第2のテクスチャアトラス170から、第3のマッピング情報151に含まれるポリゴン情報152で特定される部分を選択する。
そして、描画部121は、第1のテクスチャアトラス170からコピーされたテクスチャ132を、第2のテクスチャアトラス170から選択された部分に描画する。
ステップS138において、テクスチャコピー部119は、対象画像群に未選択のテクスチャ画像131があるかを判定する。
未選択のテクスチャ画像131がある場合、処理はステップS134に戻る。
未選択のテクスチャ画像131がない場合、処理はステップS139に進む。
ステップS139において、テクスチャコピー部119は、第1の記憶部191から、第1のテクスチャアトラス170と第1の配置情報テーブル140とを削除する。
以後、第2のテクスチャアトラス170が第1のテクスチャアトラス170として使用され、第2の配置情報テーブル140が第1の配置情報テーブル140として使用される。
図14に、図13の第3のマッピング情報データ150に対応する第3のテクスチャアトラス170を示す。
図14の第3のテクスチャアトラス170において、図13の第3のマッピング情報データ150内のポリゴン情報152に対応する部分に、図13の第3のマッピング情報データ150内のテクスチャ情報154に対応するテクスチャ画像131が描画されている。
***実施の形態1の効果***
テクスチャ画像群130は、第1の記憶部191として機能する第1のメモリ902に記憶される。第1のメモリ902は、具体的には、メインメモリである。
テクスチャアトラス170は、第2の記憶部192として機能する第2のメモリ912に記憶される。第2のメモリ912は、具体的には、VRAMである。
VRAM内でのデータのコピーに要する時間は、メインメモリからVRAMへのデータのコピーに要する時間に比べて短い。
そこで、テクスチャマッピング装置100は、新たなテクスチャアトラス170を生成する際、古いテクスチャアトラス170内の一部のテクスチャ画像131を、新たなテクスチャアトラス170にコピーする。
その結果、メインメモリ内のテクスチャ画像群130からVRAM内の新たなテクスチャアトラス170にコピーされるテクスチャ画像131が少なくなる。
これにより、ポリゴン画像160を描画する速度の低下を抑えることが可能になる。
***他の構成***
テクスチャ画像131の形状は四角形以外の形状であってもよい。
テクスチャ画像131に含まれるテクスチャ132の個数は1つまたは3つ以上であってもよい。
テクスチャ132およびポリゴン161の形状は三角形以外の形状であってもよい。
テクスチャ画像131が配置される配置範囲を決定する方法は任意である。つまり、配置範囲は、2次元のビンパッキング問題を解くためのアルゴリズムとは別のアルゴリズムで決定されてもよい。
新たなテクスチャアトラス170である第2のテクスチャアトラス170を生成するタイミングは任意である。
つまり、新たなテクスチャアトラス170は、古いテクスチャアトラス170である第1のテクスチャアトラス170内の空き領域が不足したとき以外のタイミングで生成されてもよい。
具体的には、新たなテクスチャアトラス170は定期的に生成されてもよい。新たなテクスチャアトラス170が定期的に生成されることにより、不要なテクスチャ画像131をテクスチャアトラス170から排除することができる。
古いテクスチャアトラス170(第1のテクスチャアトラス)から新たなテクスチャアトラス170(第2のテクスチャアトラス)にコピーする対象となるテクスチャ画像131として、重要度が高いテクスチャ画像131が選択されてもよい。
具体的には、使用頻度が高いテクスチャ画像131が選択されてもよい。
使用頻度が高いテクスチャ画像131は、以下のように判定される。
アプリケーション部110は、使用回数テーブルを用いて、テクスチャ画像131毎の使用回数を数える。使用回数テーブルは、テクスチャ画像識別子と使用回数とが互いに対応付けられたテーブルであり、第1の記憶部191に記憶される。
具体的には、アプリケーション部110は、マッピング情報データ150を出力するときに、マッピング情報データ150に含まれるテクスチャ画像識別子153と同じ識別子に対応付けられた使用回数を使用回数テーブルから選択する。そして、アプリケーション部110は、選択された使用回数に1を加算する。
テクスチャコピー部119は、使用回数テーブルを用いて、テクスチャ画像131毎の使用頻度を算出する。使用頻度は、使用回数の合計に対する使用回数の割合である。
そして、テクスチャコピー部119は、テクスチャ画像131毎の使用頻度を頻度閾値と比較する。
使用頻度が頻度閾値より高いテクスチャ画像131が、使用頻度が高いテクスチャ画像131である。
また、使用される可能性が高いテクスチャ画像131が選択されてもよい。ボタンを含んだメニュー画面が表示される場合、使用される可能性が高いテクスチャ画像131は、ボタンを示すテクスチャ画像131である。
使用される可能性が高いテクスチャ画像131は、以下のように判定される。
第1の記憶部191は、予測値テーブルを記憶する。予測値テーブルは、テクスチャ画像識別子と予測値とが互いに対応付けられたテーブルである。予測値は、使用される可能性の高さを示す値である。
テクスチャコピー部119は、テクスチャ画像131毎の予測値を予測閾値と比較する。
予測値が予測閾値より高いテクスチャ画像131が、使用される可能性が高いテクスチャ画像131である。
描画に使用されるテクスチャアトラス170(第1のテクスチャアトラス)は、2枚以上であってもよい。その場合、新たなテクスチャアトラス170(第2のテクスチャアトラス)が生成される際には、破棄されるテクスチャアトラス170が選択される。そして、テクスチャコピー部119は、選択されたテクスチャアトラス170から新たなテクスチャアトラス170にテクスチャ画像131をコピーし、選択されたテクスチャアトラス170を破棄する。
破棄されるテクスチャアトラス170を選択する方法は任意である。
具体的には、古い方のテクスチャアトラス170が選択されてもよい。
また、使用頻度が高いテクスチャ画像131が少ない方のテクスチャアトラス170が選択されてもよい。使用頻度が高いテクスチャ画像131は、上記の通り、頻度閾値を用いて判定される。テクスチャコピー部119は、テクスチャアトラス170毎に使用頻度が頻度閾値より高いテクスチャ画像131の数を算出し、算出された数が少ない方のテクスチャアトラス170を選択する。
また、使用される可能性が低いテクスチャ画像131が多い方のテクスチャアトラス170が選択されてもよい。使用される可能性が低いテクスチャ画像131は、上記の予測値と予測閾値とを用いて判定する。予測値が予測閾値より低いテクスチャ画像131が、使用される可能性が低いテクスチャ画像131である。テクスチャコピー部119は、テクスチャアトラス170毎に予測値が予測閾値より低いテクスチャ画像131の数を算出し、算出された数が多い方のテクスチャアトラス170を選択する。
描画に使用されるテクスチャアトラス170の枚数は、動的に変更されてもよい。具体的には、VRAMのメモリ使用量に応じて、テクスチャアトラス170の枚数が調整されてもよい。その場合、メモリ使用量が多いほど、テクスチャアトラス170の枚数は少なくなる。
新たなテクスチャアトラス170は、古いテクスチャアトラス170と異なる大きさであってもよい。
具体的には、VRAMのメモリ使用量に応じて、新たなテクスチャアトラス170の大きさが調整されてもよい。その場合、メモリ使用量が多いほど、新たなテクスチャアトラス170は小さくなる。
新たなテクスチャアトラス170と古いテクスチャアトラス170とが1つの画像内に配置されてもよい。その場合、1つの画像が2つの領域に分けられて、一方の領域に新たなテクスチャアトラス170が配置され、他方の領域に古いテクスチャアトラス170が配置される。これにより、描画に使用されるテクスチャアトラス170が古いテクスチャアトラス170から新たなテクスチャアトラス170に切り替わる際に、テクスチャアトラス170用の画像の切り替えが不要となる。その結果、テクスチャアトラス170の切り替えに要する時間が短縮される。
テクスチャアトラス170内でテクスチャ画像131を再配置してもよい。具体的には、テクスチャアトラス170の充填率が高くなった場合に、使用頻度が低いテクスチャ画像131が配置されている部分に、他のテクスチャ画像131が配置される。これにより、テクスチャアトラス170の充填率を抑えることができる。充填率とは、テクスチャ画像131が配置されている部分の割合である。
***実施の形態の補足***
実施の形態において、テクスチャマッピング装置100の機能はハードウェアで実現してもよい。
図15に、テクスチャマッピング装置100の機能がハードウェアで実現される場合の構成を示す。
テクスチャマッピング装置100は第1の処理回路991と第2の処理回路992とを備える。第1の処理回路991および第2の処理回路992はプロセッシングサーキットリともいう。
第1の処理回路991は、アプリケーション部110と受付部111とテクスチャアトラス生成部112と情報変換部113とテクスチャコピー部119と第1の記憶部191といった「部」の機能を実現する専用の電子回路である。
第2の処理回路992は、描画部121と第2の記憶部192といった「部」の機能を実現する専用の電子回路である。
具体的には、第1の処理回路991および第2の処理回路992は、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ロジックIC、GA、ASIC、FPGAまたはこれらの組み合わせである。GAはGate Arrayの略称であり、ASICはApplication Specific Integrated Circuitの略称であり、FPGAはField Programmable Gate Arrayの略称である。
テクスチャマッピング装置100の機能は、ソフトウェアとハードウェアとの組み合わせで実現してもよい。つまり、「部」の一部をソフトウェアで実現し、「部」の残りをハードウェアで実現してもよい。
実施の形態は、好ましい形態の例示であり、本発明の技術的範囲を制限することを意図するものではない。実施の形態は、部分的に実施してもよいし、他の形態と組み合わせて実施してもよい。フローチャート等を用いて説明した手順は、適宜に変更してもよい。
100 テクスチャマッピング装置、110 アプリケーション部、111 受付部、112 テクスチャアトラス生成部、113 情報変換部、119 テクスチャコピー部、121 描画部、130 テクスチャ画像群、131 テクスチャ画像、132 テクスチャ、140 配置情報テーブル、141 配置情報、150 マッピング情報データ、151 マッピング情報、152 ポリゴン情報、153 テクスチャ画像識別子、154 テクスチャ情報、160 ポリゴン画像、161 ポリゴン、170 テクスチャアトラス、191 第1の記憶部、192 第2の記憶部、193 表示部、901 第1のプロセッサ、902 第1のメモリ、903 補助記憶装置、908 ディスプレイ、911 第2のプロセッサ、912 第2のメモリ、991 第1の処理回路、992 第2の処理回路。

Claims (9)

  1. 1つ以上のテクスチャ画像であるテクスチャ画像群が記憶される第1の記憶部と、
    前記テクスチャ画像群からコピーされた1つ以上のテクスチャ画像が配置された第1のテクスチャアトラスと、新たに生成される第2のテクスチャアトラスとが記憶される第2の記憶部と、
    前記第1のテクスチャアトラスに配置された少なくともいずれかのテクスチャ画像を、前記第1のテクスチャアトラスから前記第2のテクスチャアトラスにコピーするテクスチャコピー部と
    を備えるテクスチャマッピング装置。
  2. テクスチャ画像は、1つ以上のテクスチャが含まれる画像であり、
    前記第2の記憶部は、テクスチャが描画されるポリゴンが含まれるポリゴン画像を記憶し、
    前記テクスチャマッピング装置は、
    前記ポリゴン画像のうちの描画の対象となるポリゴンが位置する部分を特定するポリゴン情報と、描画の対象となるテクスチャが含まれるテクスチャ画像を識別するテクスチャ画像識別子と、テクスチャ画像識別子で識別されるテクスチャ画像のうちの描画の対象となるテクスチャが含まれる部分を特定するテクスチャ情報と、を含んだ第1のマッピング情報を受け付ける受付部と、
    前記第1のマッピング情報に含まれるテクスチャ画像識別子で識別されるテクスチャ画像が前記第1のテクスチャアトラスに配置されていない場合、当該テクスチャ画像を前記第1のテクスチャアトラスに配置するテクスチャアトラス生成部と、
    前記第1のマッピング情報に含まれるポリゴン情報と同じポリゴン情報を含み、前記第1のテクスチャアトラスを識別する識別子をテクスチャ画像識別子として含み、前記第1のテクスチャアトラスのうちの前記第1のマッピング情報に含まれるテクスチャ情報に対応するテクスチャが配置された部分を特定する情報をテクスチャ情報として含んだ第2のマッピング情報を生成する情報変換部と、
    前記第2のマッピング情報に含まれるテクスチャ画像識別子で識別される前記第1のテクスチャアトラスに含まれるテクスチャのうち、前記第2のマッピング情報に含まれるテクスチャ情報で特定される部分に配置されたテクスチャを、前記ポリゴン画像に含まれるポリゴンのうち、前記第2のマッピング情報に含まれるポリゴン情報で特定される部分に位置するポリゴンに描画する描画部と
    を備える請求項1に記載のテクスチャマッピング装置。
  3. 前記テクスチャコピー部は、前記第2のテクスチャアトラスのうちの一部を特定する情報をポリゴン情報として含み、前記第1のテクスチャアトラスを識別する識別子をテクスチャ画像識別子として含み、前記第1のテクスチャアトラスのうち、前記第1のマッピング情報に含まれるテクスチャ情報に対応するテクスチャが配置された部分を特定する情報をテクスチャ情報として含んだ第3のマッピング情報を生成し、
    前記描画部は、前記第3のマッピング情報に含まれるテクスチャ画像識別子で識別される前記第1のテクスチャアトラスに含まれるテクスチャのうち、前記第3のマッピング情報に含まれるテクスチャ情報で特定される部分に配置されたテクスチャを、前記第2のテクスチャアトラスのうち、前記第3のマッピング情報に含まれるポリゴン情報で特定される部分に描画する
    請求項2に記載のテクスチャマッピング装置。
  4. 前記テクスチャコピー部は、前記第3のマッピング情報に含まれるポリゴン情報で特定される部分を、ビンパッキング問題を解くためのアルゴリズムによって決定する
    請求項3に記載のテクスチャマッピング装置。
  5. 前記テクスチャコピー部は、前記第1のテクスチャアトラスに配置されたテクスチャ画像のうち、使用頻度が頻度閾値より高いテクスチャ画像を、前記第1のテクスチャアトラスから前記第2のテクスチャアトラスにコピーする
    請求項1に記載のテクスチャマッピング装置。
  6. 前記テクスチャコピー部は、前記第1のテクスチャアトラスに配置されたテクスチャ画像のうち、使用される可能性の高さを示す予測値が予測閾値より高いテクスチャ画像を、前記第1のテクスチャアトラスから前記第2のテクスチャアトラスにコピーする
    請求項1に記載のテクスチャマッピング装置。
  7. 前記第2の記憶部は、複数の第1のテクスチャアトラスを記憶し、
    前記テクスチャコピー部は、第1のテクスチャアトラス毎に使用頻度が頻度閾値より高いテクスチャ画像の数を算出し、算出された数が少ない方の第1のテクスチャアトラスを選択し、選択された第1のテクスチャアトラスから前記第2のテクスチャアトラスにテクスチャ画像をコピーし、選択された第1のテクスチャアトラスを破棄する
    請求項1に記載のテクスチャマッピング装置。
  8. 前記第2の記憶部は、複数の第1のテクスチャアトラスを記憶し、
    前記テクスチャコピー部は、第1のテクスチャアトラス毎に使用される可能性の高さを示す予測値が予測閾値より低いテクスチャ画像の数を算出し、算出された数が多い方の第1のテクスチャアトラスを選択し、選択された第1のテクスチャアトラスから前記第2のテクスチャアトラスにテクスチャ画像をコピーし、選択された第1のテクスチャアトラスを破棄する
    請求項1に記載のテクスチャマッピング装置。
  9. 第1のメモリと第2のメモリとを備えるコンピュータを機能させるためのテクスチャマッピングプログラムであって、
    前記第1のメモリは、1つ以上のテクスチャ画像であるテクスチャ画像群が記憶されるメモリであり、
    前記第2のメモリは、前記テクスチャ画像群からコピーされた1つ以上のテクスチャ画像が配置された第1のテクスチャアトラスと、新たに生成される第2のテクスチャアトラスとが記憶されるメモリであり、
    前記第1のテクスチャアトラスに配置された少なくともいずれかのテクスチャ画像を、前記第1のテクスチャアトラスから前記第2のテクスチャアトラスにコピーするテクスチャコピー処理を
    コンピュータに実行させるためのテクスチャマッピングプログラム。
JP2017555736A 2016-03-15 2016-03-15 テクスチャマッピング装置およびテクスチャマッピングプログラム Active JP6271107B1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2016/058197 WO2017158734A1 (ja) 2016-03-15 2016-03-15 テクスチャマッピング装置およびテクスチャマッピングプログラム

Publications (2)

Publication Number Publication Date
JP6271107B1 JP6271107B1 (ja) 2018-01-31
JPWO2017158734A1 true JPWO2017158734A1 (ja) 2018-03-22

Family

ID=59851161

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017555736A Active JP6271107B1 (ja) 2016-03-15 2016-03-15 テクスチャマッピング装置およびテクスチャマッピングプログラム

Country Status (5)

Country Link
US (1) US20190026925A1 (ja)
JP (1) JP6271107B1 (ja)
CN (1) CN108780583A (ja)
DE (1) DE112016006387T5 (ja)
WO (1) WO2017158734A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6975665B2 (ja) * 2018-03-14 2021-12-01 日本ユニシス株式会社 テクスチャマッピング装置およびテクスチャマッピング用プログラム
US11348287B2 (en) * 2018-07-16 2022-05-31 Adobe Inc. Rendering of graphic objects with pattern paint using a graphics processing unit
WO2020129201A1 (ja) * 2018-12-20 2020-06-25 三菱電機株式会社 情報処理装置、プログラム及び情報処理方法
GB2593206B (en) * 2020-03-19 2023-04-26 Samsung Electronics Co Ltd Method, apparatus and computer program for generating or updating a texture atlas

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4220182B2 (ja) * 2002-05-31 2009-02-04 株式会社東芝 高次元テクスチャ描画装置、高次元テクスチャ圧縮装置、高次元テクスチャ描画システム、高次元テクスチャ描画方法並びにプログラム
US7889205B1 (en) * 2006-10-24 2011-02-15 Adobe Systems Incorporated Frame buffer based transparency group computation on a GPU without context switching
JP5318290B2 (ja) * 2010-11-09 2013-10-16 三菱電機株式会社 地図シンボル描画装置
US9269181B2 (en) * 2011-04-04 2016-02-23 Mitsubishi Electric Corporation Texture mapping device
JP2012221092A (ja) * 2011-04-06 2012-11-12 Sony Corp 画像処理装置、画像処理方法およびプログラム
US8872839B2 (en) * 2011-09-09 2014-10-28 Microsoft Corporation Real-time atlasing of graphics data
CN104054112A (zh) * 2012-01-27 2014-09-17 三菱电机株式会社 描绘数据生成装置以及图像描绘装置
JP2013206094A (ja) * 2012-03-28 2013-10-07 Panasonic Corp 情報処理装置、カーナビゲーション装置
KR101338370B1 (ko) * 2012-04-27 2013-12-10 주식회사 컴퍼니원헌드레드 지피유를 이용한 2차원 벡터 그래픽스 패스의 배치 렌더링 방법
JP2014056371A (ja) * 2012-09-12 2014-03-27 Fujitsu Semiconductor Ltd 画像処理装置

Also Published As

Publication number Publication date
WO2017158734A1 (ja) 2017-09-21
US20190026925A1 (en) 2019-01-24
DE112016006387T5 (de) 2018-10-18
CN108780583A (zh) 2018-11-09
JP6271107B1 (ja) 2018-01-31

Similar Documents

Publication Publication Date Title
US10210651B2 (en) Allocation of tiles to processing engines in a graphics processing system
US10535114B2 (en) Controlling multi-pass rendering sequences in a cache tiling architecture
EP3471059B1 (en) Geometry to tiling arbiter for tile-based rendering system
JP5456812B2 (ja) タイルベース・レンダリング・システムにおけるマルチコアの形状処理
US9483270B2 (en) Distributed tiled caching
JP6271107B1 (ja) テクスチャマッピング装置およびテクスチャマッピングプログラム
US9449421B2 (en) Method and apparatus for rendering image data
JP6467062B2 (ja) スプーフクロック及び細粒度周波数制御を使用する下位互換性
US9633405B2 (en) Tile based computer graphics
US20140118364A1 (en) Distributed tiled caching
KR20160148594A (ko) 그래픽스 프로세싱에 있어서 렌더 타깃에 기초한 플렉스 렌더링
WO2013043270A1 (en) Optimizing resolve performance with tiling graphics architectures
US11954782B2 (en) Hybrid render with preferred primitive batch binning and sorting
KR20110080503A (ko) 타일 기반의 렌더링 장치 및 렌더링 방법
US20180374185A1 (en) Techniques for maintaining atomicity and ordering for pixel shader operations
JP6170690B2 (ja) レンダリング装置及びその方法
WO2014087572A1 (ja) 領域分割描画装置及び領域分割描画方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171024

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20171024

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20171108

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171226

R150 Certificate of patent or registration of utility model

Ref document number: 6271107

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