(57)【要約】  第１のメモリ（９０２）は、テクスチャ画像群（１３０）が記憶されるメインメモリである。第２のメモリ（９１２）は、テクスチャ画像群からコピーされた１つ以上のテクスチャ画像が配置された第１のテクスチャアトラス（１７０）と、新たに生成される第２のテクスチャアトラス（１７０）とが記憶されるＶＲＡＭである。テクスチャコピー部（１１９）は、第１のテクスチャアトラスに配置された少なくともいずれかのテクスチャ画像を、第１のテクスチャアトラスから第２のテクスチャアトラスにコピーする。
2017158734.tif 000002
【特許請求の範囲】
【請求項１】
１つ以上のテクスチャ画像であるテクスチャ画像群が記憶される第１の記憶部と、
前記テクスチャ画像群からコピーされた１つ以上のテクスチャ画像が配置された第１のテクスチャアトラスと、新たに生成される第２のテクスチャアトラスとが記憶される第２の記憶部と、
前記第１のテクスチャアトラスに配置された少なくともいずれかのテクスチャ画像を、前記第１のテクスチャアトラスから前記第２のテクスチャアトラスにコピーするテクスチャコピー部と
を備えるテクスチャマッピング装置。
【請求項２】
テクスチャ画像は、１つ以上のテクスチャが含まれる画像であり、
前記第２の記憶部は、テクスチャが描画されるポリゴンが含まれるポリゴン画像を記憶し、
前記テクスチャマッピング装置は、
前記ポリゴン画像のうちの描画の対象となるポリゴンが位置する部分を特定するポリゴン情報と、描画の対象となるテクスチャが含まれるテクスチャ画像を識別するテクスチャ画像識別子と、テクスチャ画像識別子で識別されるテクスチャ画像のうちの描画の対象となるテクスチャが含まれる部分を特定するテクスチャ情報と、を含んだ第１のマッピング情報を受け付ける受付部と、
前記第１のマッピング情報に含まれるテクスチャ画像識別子で識別されるテクスチャ画像が前記第１のテクスチャアトラスに配置されていない場合、当該テクスチャ画像を前記第１のテクスチャアトラスに配置するテクスチャアトラス生成部と、
前記第１のマッピング情報に含まれるポリゴン情報と同じポリゴン情報を含み、前記第１のテクスチャアトラスを識別する識別子をテクスチャ画像識別子として含み、前記第１のテクスチャアトラスのうちの前記第１のマッピング情報に含まれるテクスチャ情報に対応するテクスチャが配置された部分を特定する情報をテクスチャ情報として含んだ第２のマッピング情報を生成する情報変換部と、
前記第２のマッピング情報に含まれるテクスチャ画像識別子で識別される前記第１のテクスチャアトラスに含まれるテクスチャのうち、前記第２のマッピング情報に含まれるテクスチャ情報で特定される部分に配置されたテクスチャを、前記ポリゴン画像に含まれるポリゴンのうち、前記第２のマッピング情報に含まれるポリゴン情報で特定される部分に位置するポリゴンに描画する描画部と
を備える請求項１に記載のテクスチャマッピング装置。
【請求項３】
前記テクスチャコピー部は、前記第２のテクスチャアトラスのうちの一部を特定する情報をポリゴン情報として含み、前記第１のテクスチャアトラスを識別する識別子をテクスチャ画像識別子として含み、前記第１のテクスチャアトラスのうち、前記第１のマッピング情報に含まれるテクスチャ情報に対応するテクスチャが配置された部分を特定する情報をテクスチャ情報として含んだ第３のマッピング情報を生成し、
前記描画部は、前記第３のマッピング情報に含まれるテクスチャ画像識別子で識別される前記第１のテクスチャアトラスに含まれるテクスチャのうち、前記第３のマッピング情報に含まれるテクスチャ情報で特定される部分に配置されたテクスチャを、前記第２のテクスチャアトラスのうち、前記第３のマッピング情報に含まれるポリゴン情報で特定される部分に描画する
請求項２に記載のテクスチャマッピング装置。
【請求項４】
前記テクスチャコピー部は、前記第３のマッピング情報に含まれるポリゴン情報で特定される部分を、ビンパッキング問題を解くためのアルゴリズムによって決定する
請求項３に記載のテクスチャマッピング装置。
【請求項５】
前記テクスチャコピー部は、前記第１のテクスチャアトラスに配置されたテクスチャ画像のうち、使用頻度が頻度閾値より高いテクスチャ画像を、前記第１のテクスチャアトラスから前記第２のテクスチャアトラスにコピーする
請求項１に記載のテクスチャマッピング装置。
【請求項６】
前記テクスチャコピー部は、前記第１のテクスチャアトラスに配置されたテクスチャ画像のうち、使用される可能性の高さを示す予測値が予測閾値より高いテクスチャ画像を、前記第１のテクスチャアトラスから前記第２のテクスチャアトラスにコピーする
請求項１に記載のテクスチャマッピング装置。
【請求項７】
前記第２の記憶部は、複数の第１のテクスチャアトラスを記憶し、
前記テクスチャコピー部は、第１のテクスチャアトラス毎に使用頻度が頻度閾値より高いテクスチャ画像の数を算出し、算出された数が少ない方の第１のテクスチャアトラスを選択し、選択された第１のテクスチャアトラスから前記第２のテクスチャアトラスにテクスチャ画像をコピーし、選択された第１のテクスチャアトラスを破棄する
請求項１に記載のテクスチャマッピング装置。
【請求項８】
前記第２の記憶部は、複数の第１のテクスチャアトラスを記憶し、
前記テクスチャコピー部は、第１のテクスチャアトラス毎に使用される可能性の高さを示す予測値が予測閾値より低いテクスチャ画像の数を算出し、算出された数が多い方の第１のテクスチャアトラスを選択し、選択された第１のテクスチャアトラスから前記第２のテクスチャアトラスにテクスチャ画像をコピーし、選択された第１のテクスチャアトラスを破棄する
請求項１に記載のテクスチャマッピング装置。
【請求項９】
第１のメモリと第２のメモリとを備えるコンピュータを機能させるためのテクスチャマッピングプログラムであって、
前記第１のメモリは、１つ以上のテクスチャ画像であるテクスチャ画像群が記憶されるメモリであり、
前記第２のメモリは、前記テクスチャ画像群からコピーされた１つ以上のテクスチャ画像が配置された第１のテクスチャアトラスと、新たに生成される第２のテクスチャアトラスとが記憶されるメモリであり、
前記第１のテクスチャアトラスに配置された少なくともいずれかのテクスチャ画像を、前記第１のテクスチャアトラスから前記第２のテクスチャアトラスにコピーするテクスチャコピー処理を
コンピュータに実行させるためのテクスチャマッピングプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、テクスチャマッピングに関するものである。
【背景技術】
【０００２】
コンピュータグラフィックスにおいて、描画内容のプリミティブとしてポリゴンが多用されている。また、一般的に、描画内容の質感を表現するために、テクスチャと呼ばれる２次元画像がポリゴンにマッピングされる。【０００３】
テクスチャがポリゴンにマッピングされる場合、マッピングされるテクスチャが指定された後にポリゴンが描画される。また、テクスチャを変更する処理は、時間がかかることが知られている。そのため、複数のポリゴンにそれぞれ異なるテクスチャがマッピングされると、処理時間が長くなる。【０００４】
この課題を解決する手法として、複数のテクスチャが結合されたテクスチャアトラスを用意して、テクスチャアトラスに含まれる各テクスチャをポリゴンにマッピングする手法が知られている。この手法により、複数のポリゴンにそれぞれ異なるテクスチャを高速にマッピングすることができる【０００５】
特許文献１には、テクスチャアトラスを動的に高速かつ低負荷で生成する方法が開示されている。【０００６】
しかし、テクスチャアトラスにテクスチャが入りきらなくなった場合には、テクスチャアトラスを破棄して新たなテクスチャアトラスを生成する必要がある。そして、破棄されたテクスチャアトラスに含まれるテクスチャのうち、まだ使用するものは、新たなテクスチャアトラスにコピーする必要がある。テクスチャのコピーはメインメモリからＶＲＡＭへのデータのコピーを意味するが、そのようなコピーは一般的に時間がかかる。
また、描画処理は段数が多いパイプラインで実行されることが多いが、テクスチャアトラスを破棄して新たなテクスチャアトラスを生成する際に、パイプラインを止める必要がある。そのため、描画速度が低下してしまう。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１３−２０６０９４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
本発明は、テクスチャマッピングにおける描画速度の低下を抑えることを目的とする。
【課題を解決するための手段】
【０００９】
本発明のテクスチャマッピング装置は、
１つ以上のテクスチャ画像であるテクスチャ画像群が記憶される第１の記憶部と、
前記テクスチャ画像群からコピーされた１つ以上のテクスチャ画像が配置された第１のテクスチャアトラスと、新たに生成される第２のテクスチャアトラスとが記憶される第２の記憶部と、
前記第１のテクスチャアトラスに配置された少なくともいずれかのテクスチャ画像を、前記第１のテクスチャアトラスから前記第２のテクスチャアトラスにコピーするテクスチャコピー部とを備える。
【発明の効果】
【００１０】
本発明によれば、第２の記憶部内で、第１のテクスチャアトラスから第２のテクスチャアトラスへのテクスチャ画像のコピーが行われる。
その結果、第１の記憶部内のテクスチャ画像群から第２の記憶部内の第２のテクスチャアトラスにコピーされるテクスチャ画像が少なくなる。
したがって、記憶部間で行われるテクスチャ画像のコピーが減るため、描画速度の低下を抑えることができる。
【図面の簡単な説明】
【００１１】
【図１】実施の形態１におけるテクスチャマッピング装置１００の構成図。
【図２】実施の形態１におけるテクスチャマッピング方法のフローチャート。
【図３】実施の形態１におけるテクスチャアトラス生成処理（Ｓ１１０）のフローチャート。
【図４】実施の形態１における第１の配置情報テーブル１４０を示す図。
【図５】実施の形態１における第１のテクスチャアトラス１７０を示す図。
【図６】実施の形態１におけるテクスチャマッピング処理（Ｓ１２０）のフローチャート。
【図７】実施の形態１における第１のマッピング情報データ１５０を示す図。
【図８】実施の形態１におけるテクスチャ画像１３１とテクスチャ１３２との関係図。
【図９】実施の形態１における第２のマッピング情報データ１５０を示す図。
【図１０】実施の形態１におけるポリゴン画像１６０を示す図。
【図１１】実施の形態１におけるテクスチャコピー処理（Ｓ１３０）のフローチャート。
【図１２】実施の形態１における第２の配置情報テーブル１４０を示す図。
【図１３】実施の形態１における第３のマッピング情報データ１５０を示す図。
【図１４】実施の形態１における第２のテクスチャアトラス１７０を示す図。
【図１５】実施の形態におけるテクスチャマッピング装置１００のハードウェア構成図。
【発明を実施するための形態】
【００１２】
実施の形態１．
テクスチャマッピング装置１００について、図１から図１４に基づいて説明する。
【００１３】
＊＊＊構成の説明＊＊＊
図１に基づいて、テクスチャマッピング装置１００の構成について説明する。
テクスチャマッピング装置１００は、第１のプロセッサ９０１と第１のメモリ９０２と補助記憶装置９０３と第２のプロセッサ９１１と第２のメモリ９１２とディスプレイ９０８いったハードウェアを備えるコンピュータである。
第１のプロセッサ９０１は、信号線を介して第１のメモリ９０２と補助記憶装置９０３と第２のプロセッサ９１１と接続されている。
第２のプロセッサ９１１は、信号線を介して第１のプロセッサ９０１と第２のメモリ９１２とディスプレイ９０８と接続されている。
【００１４】
第１のプロセッサ９０１および第２のプロセッサ９１１は、プロセッシングを行うＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）であり、他のハードウェアを制御する。具体的には、第１のプロセッサ９０１はＣＰＵであり、第２のプロセッサ９１１はＧＰＵである。ＣＰＵはＣｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔの略称であり、ＧＰＵはＧｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔの略称である。
第１のメモリ９０２および第２のメモリ９１２は揮発性の記憶装置である。具体的には、第１のメモリ９０２はメインメモリであり、第２のメモリ９１２はＶＲＡＭ（Ｖｉｄｅｏ  ＲＡＭ）である。ＲＡＭは、Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙの略称である。
補助記憶装置９０３は不揮発性の記憶装置である。具体的には、補助記憶装置９０３は、ＲＯＭ、ＨＤＤまたはフラッシュメモリである。ＲＯＭはＲｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙの略称であり、ＨＤＤはＨａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅの略称である。
ディスプレイ９０８は、データを表示する表示装置である。具体的には、ディスプレイ９０８は液晶ディスプレイである。
【００１５】
テクスチャマッピング装置１００は、アプリケーション部１１０と受付部１１１とテクスチャアトラス生成部１１２と情報変換部１１３とテクスチャコピー部１１９と描画部１２１といった「部」を機能構成の要素として備える。「部」の機能はソフトウェアで実現される。「部」の機能については後述する。
【００１６】
補助記憶装置９０３には、「部」の機能を実現するプログラムが記憶されている。「部」の機能を実現するプログラムは、第１のメモリ９０２および第２のメモリ９１２にロードされて、第１のプロセッサ９０１および第２のプロセッサ９１１によって実行される。
さらに、補助記憶装置９０３にはＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）が記憶されている。ＯＳの少なくとも一部は、第１のメモリ９０２にロードされて、第１のプロセッサ９０１によって実行される。
つまり、第１のプロセッサ９０１は、ＯＳを実行しながら、「部」の機能を実現するプログラムを実行する。
「部」の機能を実現するプログラムを実行して得られるデータは、メモリ（９０２、９１２）、補助記憶装置９０３、プロセッサ（９０１、９１１）内のレジスタまたはプロセッサ（９０１、９１１）内のキャッシュメモリといった記憶装置に記憶される。これらの記憶装置は、データを記憶する記憶部として機能する。第１のメモリ９０２は第１の記憶部１９１として機能し、第２のメモリ９１２は第２の記憶部１９２として機能する。
【００１７】
第１のメモリ９０２および第２のメモリ９１２には、テクスチャマッピング装置１００で使用、生成、入出力または送受信されるデータが記憶される。
具体的には、第１のメモリ９０２には、テクスチャ画像群１３０、配置情報テーブル１４０およびマッピング情報データ１５０等が記憶される。また、第２のメモリ９１２には、ポリゴン画像１６０およびテクスチャアトラス１７０等が記憶される。第１のメモリ９０２および第２のメモリ９１２に記憶されるデータの内容については後述する。
【００１８】
ディスプレイ９０８はデータを表示する表示部１９３として機能する。
【００１９】
第１のプロセッサ９０１と第１のメモリ９０２と補助記憶装置９０３とをまとめたハードウェア、および、第２のプロセッサ９１１と第２のメモリ９１２とをまとめたハードウェアを「プロセッシングサーキットリ」という。
「部」は「処理」または「工程」に読み替えてもよい。「部」の機能はファームウェアで実現してもよい。
「部」の機能を実現するプログラムは、磁気ディスク、光ディスクまたはフラッシュメモリ等の不揮発性の記憶媒体に記憶することができる。
【００２０】
＊＊＊動作の説明＊＊＊
テクスチャマッピング装置１００の動作はテクスチャマッピング方法に相当する。また、テクスチャマッピング方法の手順はテクスチャマッピングプログラムの手順に相当する。
【００２１】
図２に基づいて、テクスチャマッピング方法について説明する。
ステップＳ１０１において、アプリケーション部１１０は、追加画像群またはマッピング情報データ１５０を出力する。
【００２２】
アプリケーション部１１０は、ポリゴン画像１６０に対する画像処理を行うためのアプリケーションプログラムを実行する機能である。
ポリゴン画像１６０は、テクスチャ１３２が描画されるポリゴン１６１が含まれる画像であり、表示部１９３によって表示される。
【００２３】
追加画像群は、１つ以上のテクスチャ画像１３１である。
テクスチャ画像１３１は、１つ以上のテクスチャが含まれる画像である。
【００２４】
マッピング情報データ１５０は、１つ以上のマッピング情報１５１を含んだデータである。
マッピング情報１５１は、ポリゴン情報１５２と、テクスチャ画像識別子１５３と、テクスチャ情報１５４とを含む。
ポリゴン情報１５２は、ポリゴン画像１６０のうちの描画の対象となるポリゴン１６１が位置する部分を特定する情報である。
テクスチャ画像識別子１５３は、描画の対象となるテクスチャ１３２が含まれるテクスチャ画像１３１を識別する識別子である。
テクスチャ情報１５４は、テクスチャ画像識別子１５３で識別されるテクスチャ画像１３１のうちの描画の対象となるテクスチャ１３２が含まれる部分を特定する情報である。
【００２５】
受付部１１１は、アプリケーション部１１０から出力される追加画像群またはマッピング情報データ１５０を受け付ける。
追加画像群が受け付けられた場合、第１の記憶部１９１は追加画像群をテクスチャ画像群１３０に加えて、処理はステップＳ１１０に進む。
マッピング情報データ１５０が受け付けられた場合、第１の記憶部１９１はマッピング情報データ１５０を記憶し、処理はステップＳ１２０に進む。
【００２６】
ステップＳ１１０はテクスチャアトラス生成処理である。
ステップＳ１１０において、テクスチャアトラス生成部１１２は、受け付けられた追加画像群を、第１のテクスチャアトラス１７０に配置する。
第１のテクスチャアトラス１７０は、使用中のテクスチャアトラス１７０であり、１つ以上のテクスチャ画像１３１が配置されたテクスチャアトラス１７０である。
テクスチャアトラス生成処理（Ｓ１１０）の詳細については後述する。
【００２７】
ステップＳ１２０はテクスチャマッピング処理である。
ステップＳ１２０において、描画部１２１は、受け付けられたマッピング情報データ１５０を用いて、ポリゴン画像１６０内の描画の対象となるポリゴン１６１に、描画の対象となるテクスチャ１３２を描画する。
テクスチャマッピング処理（Ｓ１２０）の詳細については後述する。
【００２８】
図３に基づいて、テクスチャアトラス生成処理（Ｓ１１０）の手順を説明する。
ステップＳ１１１において、テクスチャアトラス生成部１１２は、第１のテクスチャアトラス１７０に、必要な空き領域があるかを判定する。必要な空き領域は、受け付けられた追加画像群を配置するために必要な空き領域である。受け付けられた追加画像群は、ステップＳ１０１で受け付けられた追加画像群である。
【００２９】
具体的には、テクスチャアトラス生成部１１２は、必要な空き領域の有無を以下のように判定する。
まず、テクスチャアトラス生成部１１２は、第１の配置情報テーブル１４０を用いて、配置個数を数える。第１の配置情報テーブル１４０は、第１のテクスチャアトラス１７０に対応する配置情報テーブル１４０である。配置個数は、第１のテクスチャアトラス１７０に配置されたテクスチャ画像１３１の個数である。配置情報テーブル１４０の内容については後述する。
次に、テクスチャアトラス生成部１１２は、最大個数と配置個数とを用いて、空き個数を算出する。空き個数は、最大個数から配置個数を引いた個数である。最大個数は、空のテクスチャアトラス１７０に配置することが可能なテクスチャ画像１３１の個数である。
そして、テクスチャアトラス生成部１１２は、追加画像数を空き個数と比較する。追加画像数は、受け付けられた追加画像群に含まれるテクスチャ画像１３１の個数である。
テクスチャ画像１３１の個数が空き個数より多い場合、必要な空き領域はない。
【００３０】
必要な空き領域がある場合、処理はステップＳ１１２に進む。
必要な空き領域がない場合、処理はステップＳ１３０に進む。
【００３１】
ステップＳ１３０はテクスチャコピー処理（Ｓ１３０）である。
ステップＳ１３０において、テクスチャコピー部１１９は、第２のテクスチャアトラス１７０を生成し、第１のテクスチャアトラス１７０内のテクスチャ画像１３１を第２のテクスチャアトラス１７０にコピーする。
第２のテクスチャアトラス１７０は、新たなテクスチャアトラス１７０である。
第１のテクスチャアトラス１７０内のテクスチャ画像１３１が第２のテクスチャアトラス１７０にコピーされた後、第１のテクスチャアトラス１７０が削除され、第２のテクスチャアトラス１７０が第１のテクスチャアトラス１７０として使用される。
テクスチャコピー処理（Ｓ１３０）の詳細については後述する。
【００３２】
ステップＳ１１２において、テクスチャアトラス生成部１１２は、受け付けられた追加画像群から未選択のテクスチャ画像１３１を１つ選択する。
【００３３】
ステップＳ１１３において、テクスチャアトラス生成部１１２は、選択されたテクスチャ画像１３１が第１のテクスチャアトラス１７０に配置済みであるかを判定する。
この判定は、第１の配置情報テーブル１４０を用いて行われる。
【００３４】
図４に基づいて、第１の配置情報テーブル１４０について説明する。
第１の配置情報テーブル１４０は、第１のテクスチャアトラス１７０に配置されたテクスチャ画像１３１毎に、テクスチャ画像１３１が配置された部分を管理するためのテーブルである。
第１の配置情報テーブル１４０は、第１のテクスチャアトラス１７０に配置されたテクスチャ画像１３１毎の配置情報１４１を含む。
配置情報１４１は、テクスチャ画像識別子と、テクスチャアトラス識別子と、範囲情報とを含む。
テクスチャ画像識別子は、テクスチャ画像１３１を識別する。
テクスチャアトラス識別子は、第１のテクスチャアトラス１７０を識別する。
範囲情報は、テクスチャ画像１３１が配置された部分を特定する情報である。具体的には、範囲情報は、テクスチャ画像１３１の左上の頂点が位置する箇所の座標値（Ｕ，Ｖ）と、テクスチャ画像１３１の幅（Ｗ）と、テクスチャ画像１３１の高さ（Ｈ）とを含む。
【００３５】
図５に、図４の第１の配置情報テーブル１４０に対応する第１のテクスチャアトラス１７０を示す。
第１のテクスチャアトラス１７０は「Ｔ１００」という識別子で識別される。第１のテクスチャアトラス１７０の大きさは４０×４０ピクセルである。
第１のテクスチャアトラス１７０には、「Ｔ０」という識別子で識別されるテクスチャ画像１３１と、「Ｔ１」という識別子で識別されるテクスチャ画像１３１と、「Ｔ２」という識別子で識別されるテクスチャ画像１３１とが配置されている。各々のテクスチャ画像１３１の大きさは１０×１０ピクセルである。
【００３６】
図３に戻り、ステップＳ１１３の説明を続ける。
具体的には、テクスチャアトラス生成部１１２は、以下のように判定を行う。
テクスチャアトラス生成部１１２は、選択されたテクスチャ画像１３１の識別子と同じテクスチャ画像識別子が、第１の配置情報テーブル１４０に登録されているかを判定する。テクスチャ画像１３１の識別子はテクスチャ画像１３１に付加されているものとする。
当該テクスチャ画像識別子が第１の配置情報テーブル１４０に登録されている場合、選択されたテクスチャ画像１３１は、第１のテクスチャアトラス１７０に配置済みである。
【００３７】
選択されたテクスチャ画像１３１が第１のテクスチャアトラス１７０に配置済みである場合、処理はステップＳ１１６に進む。
選択されたテクスチャ画像１３１が第１のテクスチャアトラス１７０に配置済みでない場合、処理はステップＳ１１４に進む。
【００３８】
ステップＳ１１４において、テクスチャアトラス生成部１１２は、選択されたテクスチャ画像１３１を、第１のテクスチャアトラス１７０に配置する。
【００３９】
具体的には、テクスチャアトラス生成部１１２は、以下のように動作する。
まず、テクスチャアトラス生成部１１２は、第１の配置情報テーブル１４０を参照して、第１のテクスチャアトラス１７０の空き領域から、配置範囲を決定する。決定される配置範囲は、選択されたテクスチャ画像１３１が配置される部分である。配置範囲は、２次元のビンパッキング問題を解くためのアルゴリズムによって決定することができる。
そして、テクスチャアトラス生成部１１２は、選択されたテクスチャ画像１３１と範囲情報とを、描画部１２１に受け渡す。受け渡される範囲情報は、決定された配置範囲を示す情報である。
その後、描画部１２１は、第１のテクスチャアトラス１７０のうちの受け渡された範囲情報が示す部分に、受け渡されたテクスチャ画像１３１を描画する。
これにより、選択されたテクスチャ画像１３１が、第１のテクスチャアトラス１７０に配置される。
【００４０】
ステップＳ１１５において、テクスチャアトラス生成部１１２は、選択されたテクスチャ画像１３１に対応する配置情報１４１を、第１の配置情報テーブル１４０に追加する。
【００４１】
具体的には、テクスチャアトラス生成部１１２は、以下のように動作する。
まず、テクスチャアトラス生成部１１２は、テクスチャ画像識別子と、テクスチャアトラス識別子と、範囲情報とを含んだ配置情報１４１を生成する。
テクスチャ画像識別子は、選択されたテクスチャ画像１３１の識別子である。
テクスチャアトラス識別子は、第１のテクスチャアトラス１７０の識別子である。
範囲情報は、描画部１２１に受け渡された範囲情報である。
そして、テクスチャアトラス生成部１１２は、生成された配置情報１４１を、第１の配置情報テーブル１４０に追加する。
【００４２】
ステップＳ１１６において、テクスチャアトラス生成部１１２は、受け付けられた追加画像群に、未選択のテクスチャ画像１３１があるか判定する。
未選択のテクスチャ画像１３１がある場合、処理はステップＳ１１２に戻る。
未選択のテクスチャ画像１３１がない場合、テクスチャアトラス生成処理（Ｓ１１０）は終了する。
【００４３】
図６に基づいて、テクスチャマッピング処理（Ｓ１２０）の手順を説明する。
ステップＳ１２１において、情報変換部１１３は、第１のマッピング情報データ１５０から、未選択の第１のマッピング情報１５１を１つ選択する。
第１のマッピング情報データ１５０は、ステップＳ１０１で受け付けられたマッピング情報データ１５０である。
第１のマッピング情報１５１は、第１のマッピング情報データ１５０に含まれるマッピング情報１５１である。
【００４４】
図７に基づいて、第１のマッピング情報データ１５０について説明する。
第１のマッピング情報データ１５０は、１つ以上のマッピング情報１５１を含む。
第１のマッピング情報１５１は、ポリゴン情報１５２と、テクスチャ画像識別子１５３と、テクスチャ情報１５４とを含む。
ポリゴン情報１５２はポリゴン識別子とポリゴン座標とを含み、テクスチャ情報１５４はテクスチャ座標値を含む。
ポリゴン識別子は、ポリゴン１６１を識別する。
ポリゴン座標値は、ポリゴン１６１が有する頂点毎の座標値である。ポリゴン１６１の形状が三角形である場合、ポリゴン座標値は３組の座標値である。
テクスチャ画像識別子１５３は、テクスチャ画像１３１を識別する。
テクスチャ座標値は、テクスチャ１３２が有する頂点毎の座標値である。テクスチャ１３２の形状が三角形である場合、テクスチャ座標値は３組の座標値である。
【００４５】
図８に基づいて、テクスチャ画像１３１とテクスチャ１３２との関係について説明する。
テクスチャ画像１３１は、１つ以上のテクスチャ１３２を含む。具体的には、四角形のテクスチャ画像１３１が、三角形のテクスチャ１３２を２つ含む。
図８において、「Ｔ０」のテクスチャ画像１３１と、「Ｔ１」のテクスチャ画像１３１と、「Ｔ２」のテクスチャ画像１３１とは、それぞれ、四角形のテクスチャ画像１３１である。各々のテクスチャ画像１３１は、三角形のテクスチャ１３２を２つ含んでいる。
【００４６】
図６に戻り、ステップＳ１２２から説明を続ける。
ステップＳ１２２において、情報変換部１１３は、選択された第１のマッピング情報１５１に対応するテクスチャ画像１３１が、第１のテクスチャアトラス１７０に配置済みであるかを判定する。選択された第１のマッピング情報１５１に対応するテクスチャ画像１３１は、選択された第１のマッピング情報１５１に含まれるテクスチャ画像識別子１５３で識別されるテクスチャ画像１３１である。
具体的には、情報変換部１１３は、選択された第１のマッピング情報１５１に含まれるテクスチャ画像識別子１５３と同じテクスチャ画像識別子１５３が、第１の配置情報テーブル１４０に登録されているかを判定する。当該テクスチャ画像識別子１５３が第１の配置情報テーブル１４０に登録されている場合、選択された第１のマッピング情報１５１に対応するテクスチャ画像１３１は、第１のテクスチャアトラス１７０に配置済みである。
選択された第１のマッピング情報１５１に対応するテクスチャ画像１３１が、第１のテクスチャアトラス１７０に配置済みである場合、処理はステップＳ１２４に進む。
選択された第１のマッピング情報１５１に対応するテクスチャ画像１３１が、第１のテクスチャアトラス１７０に配置済みでない場合、処理はステップＳ１２３に進む。
【００４７】
ステップＳ１２３において、テクスチャアトラス生成部１１２は、選択された第１のマッピング情報１５１に対応するテクスチャ画像１３１を、第１のテクスチャアトラス１７０に配置する。
具体的には、テクスチャアトラス生成部１１２は、図３に基づいて説明したテクスチャアトラス生成処理（Ｓ１１０）を実行する。但し、テクスチャアトラス生成処理（Ｓ１１０）の対象は、Ｓ１０１で受け付けられた追加画像群ではなく、ステップＳ１２１で選択された第１のマッピング情報１５１に対応するテクスチャ画像１３１である。
【００４８】
ステップＳ１２４において、情報変換部１１３は、選択された第１のマッピング情報１５１に対応する第２のマッピング情報１５１を生成する。
第２のマッピング情報１５１は、選択された第１のマッピング情報１５１と同じく、ポリゴン情報１５２と、テクスチャ画像識別子１５３と、テクスチャ情報１５４とを含む。
第２のマッピング情報１５１に含まれるポリゴン情報１５２は、選択された第１のマッピング情報１５１に含まれるポリゴン情報１５２と同じである。
第２のマッピング情報１５１に含まれるテクスチャ画像識別子１５３は、第１のテクスチャアトラス１７０を識別する識別子である。
第２のマッピング情報１５１に含まれるテクスチャ情報１５４は、第１のテクスチャアトラス１７０のうちの選択された第１のマッピング情報１５１に含まれるテクスチャ情報１５４に対応するテクスチャ１３２が配置された部分、を特定する情報である。テクスチャ情報１５４に対応するテクスチャ１３２は、テクスチャ画像識別子１５３で識別されるテクスチャ画像１３１のうちのテクスチャ情報１５４で特定される部分にあるテクスチャ１３２である。
【００４９】
具体的には、情報変換部１１３は、選択された第１のマッピング情報１５１のうちのテクスチャ画像識別子１５３とテクスチャ情報１５４とを変えることによって、第２のマッピング情報１５１を生成する。
【００５０】
テクスチャ情報１５４であるテクスチャ座標値（Ｕ、Ｖ）は、以下のように変わる。
まず、情報変換部１１３は、選択された第１のマッピング情報１５１から、テクスチャ画像識別子を取得する。
次に、情報変換部１１３は、取得されたテクスチャ画像識別子１５３と同じテクスチャ画像識別子を含んだ配置情報１４１を、第１の配置情報テーブル１４０から選択する。
次に、情報変換部１１３は、選択された配置情報１４１に含まれる範囲情報から、座標値（Ｕ、Ｖ）を取得する。
そして、情報変換部１１３は、取得された座標値（Ｕ、Ｖ）を、選択された第１のマッピング情報１５１に含まれるテクスチャ座標値（Ｕ、Ｖ）に加算する。
【００５１】
図９に、図７の第１のマッピング情報データ１５０と図４の第１の配置情報テーブル１４０とに対応する第２のマッピング情報データ１５０を示す。
図７の第１のマッピング情報データ１５０において、テクスチャ画像識別子「Ｔ０」に対応するポリゴン識別子は「Ａ」および「Ｂ」である。図４の第１の配置情報テーブル１４０において、テクスチャ画像識別子「Ｔ０」に対応する座標値（Ｕ、Ｖ）は（０、０）である。そのため、図９の第２のマッピング情報データ１５０において、ポリゴン識別子「Ａ」「Ｂ」に対応するテクスチャ座標値（Ｕ、Ｖ）は、図７の第１のマッピング情報データ１５０におけるテクスチャ座標値（Ｕ、Ｖ）と同じである。
図７の第１のマッピング情報データ１５０において、テクスチャ画像識別子「Ｔ１」に対応するポリゴン識別子は「Ｃ」および「Ｄ」である。図４の第１の配置情報テーブル１４０において、テクスチャ画像識別子「Ｔ１」に対応する座標値（Ｕ、Ｖ）は（１０、０）である。そのため、図９の第２のマッピング情報データ１５０において、ポリゴン識別子「Ｃ」「Ｄ」に対応するテクスチャ座標値（Ｕ、Ｖ）は、図７の第１のマッピング情報データ１５０におけるテクスチャ座標値（Ｕ、Ｖ）に（１０、０）を足した値である。
図７の第１のマッピング情報データ１５０において、テクスチャ画像識別子「Ｔ２」に対応するポリゴン識別子は「Ｅ」および「Ｆ」である。図４の第１の配置情報テーブル１４０において、テクスチャ画像識別子「Ｔ２」に対応する座標値（Ｕ、Ｖ）は（２０、０）である。そのため、図９の第２のマッピング情報データ１５０において、ポリゴン識別子「Ｅ」「Ｆ」に対応するテクスチャ座標値（Ｕ、Ｖ）は、図７の第１のマッピング情報データ１５０におけるテクスチャ座標値（Ｕ、Ｖ）に（２０、０）を足した値である。
【００５２】
図６に戻り、ステップＳ１２４の説明を続ける。
情報変換部１１３は、第２のマッピング情報１５１を描画部１２１に受け渡す。
【００５３】
ステップＳ１２５において、第２のマッピング情報１５１に含まれるテクスチャ画像識別子１５３は、第１のテクスチャアトラス１７０を識別する。
そのため、描画部１２１は、第１のテクスチャアトラス１７０から、第２のマッピング情報１５１に含まれるテクスチャ情報１５４で特定される部分に配置されたテクスチャ１３２をコピーする。
次に、描画部１２１は、ポリゴン画像１６０から、第２のマッピング情報１５１に含まれるポリゴン情報１５２で特定される部分に位置するポリゴン１６１を選択する。
そして、描画部１２１は、第１のテクスチャアトラス１７０からコピーされたテクスチャ１３２を、ポリゴン画像１６０から選択されたポリゴン１６１に描画する。
【００５４】
ステップＳ１２６において、情報変換部１１３は、第１のマッピング情報データ１５０に、未選択の第１のマッピング情報１５１があるか判定する。
未選択の第１のマッピング情報１５１がある場合、処理はステップＳ１２１に戻る。
未選択の第１のマッピング情報１５１がない場合、テクスチャマッピング処理（Ｓ１２０）は終了する。
【００５５】
図１０に、図９の第２のマッピング情報データ１５０に対応するポリゴン画像１６０を示す。このポリゴン画像１６０の大きさは５０×４０ピクセルである。
図１０のポリゴン画像１６０において、図９の第２のマッピング情報データ１５０内のポリゴン情報１５２に対応するポリゴン１６１に、図９の第２のマッピング情報データ１５０内のテクスチャ情報１５４に対応するテクスチャ画像１３１が描画されている。
【００５６】
図１１に基づいて、テクスチャコピー処理（Ｓ１３０）の手順を説明する。
ステップＳ１３１において、テクスチャコピー部１１９は、第２のテクスチャアトラス１７０を生成する。
具体的には、テクスチャコピー部１１９が第２のプロセッサ９１１に第２のテクスチャアトラス１７０用の記憶領域の確保を要求し、第２のプロセッサ９１１が第２のテクスチャアトラス１７０用の記憶領域を第２の記憶部１９２に確保する。
【００５７】
ステップＳ１３２において、テクスチャコピー部１１９は、第２の配置情報テーブル１４０を生成する。
第２の配置情報テーブル１４０は、第２のテクスチャアトラス１７０に対応する配置情報テーブル１４０である。
具体的には、テクスチャコピー部１１９は、第２の配置情報テーブル１４０用の記憶領域を第１の記憶部１９１に確保する。
【００５８】
ステップＳ１３３において、テクスチャコピー部１１９は、対象画像群を選択する。
対象画像群は、第１のテクスチャアトラス１７０から第２のテクスチャアトラス１７０にコピーされる対象となる１つ以上のテクスチャ画像１３１である。
具体的には、アプリケーション部１１０が、描画に必要なテクスチャ画像群を特定する。そして、テクスチャコピー部１１９は、特定されたテクスチャ画像群から、第１のテクスチャアトラス１７０に配置されている１つ以上のテクスチャ画像１３１を、対象画像群として選択する。
【００５９】
ステップＳ１３４において、テクスチャコピー部１１９は、対象画像群から未選択のテクスチャ画像１３１を１つ選択する。
【００６０】
ステップＳ１３５において、テクスチャコピー部１１９は、選択されたテクスチャ画像１３１に対応する配置情報１４１を、第２の配置情報テーブル１４０に追加する。
【００６１】
具体的には、テクスチャコピー部１１９は、以下のように動作する。
まず、テクスチャコピー部１１９は、第２の配置情報テーブル１４０を参照して、第２のテクスチャアトラス１７０の空き領域から、配置範囲を決定する。決定される配置範囲は、選択されたテクスチャ画像１３１が配置される部分である。配置範囲は、ステップＳ１１４と同じく、２次元ビンパッキング問題を解くためのアルゴリズムによって決定することができる。
次に、テクスチャコピー部１１９は、テクスチャ画像識別子と、テクスチャアトラス識別子と、範囲情報とを含んだ配置情報１４１を生成する。
テクスチャ画像識別子は、選択されたテクスチャ画像１３１の識別子である。
テクスチャアトラス識別子は、第２のテクスチャアトラス１７０の識別子である。
範囲情報は、決定された配置範囲を示す情報である。
そして、テクスチャコピー部１１９は、生成された配置情報１４１を、第２の配置情報テーブル１４０に追加する。
【００６２】
図１２に、「Ｔ０」のテクスチャ画像１３１と「Ｔ２」のテクスチャ画像１３１とが対象画像群である場合の第２の配置情報テーブル１４０を示す。
図１２の第２の配置情報テーブル１４０は、テクスチャ画像識別子「Ｔ０」を含んだ配置情報１４１と、テクスチャ画像識別子「Ｔ２」を含んだ配置情報１４１とを有する。
【００６３】
ステップＳ１３６において、テクスチャコピー部１１９は、第３のマッピング情報１５１を生成する。
第３のマッピング情報１５１は、選択されたテクスチャ画像１３１に対応するマッピング情報１５１である。
第３のマッピング情報１５１は、第１のマッピング情報１５１および第２のマッピング情報１５１と同じく、ポリゴン情報１５２とテクスチャ画像識別子１５３とテクスチャ情報１５４とを含む。
第３のマッピング情報１５１に含まれるポリゴン情報１５２は、第２のテクスチャアトラス１７０のうちの一部を特定する情報である。
第３のマッピング情報１５１に含まれるテクスチャ画像識別子１５３は、第１のテクスチャアトラス１７０を識別する識別子である。
第３のマッピング情報１５１に含まれるテクスチャ情報１５４は、第１のテクスチャアトラス１７０のうち、第１のマッピング情報１５１に含まれるテクスチャ情報１５４に対応するテクスチャ１３２が配置された部分を特定する情報である。
【００６４】
具体的には、テクスチャコピー部１１９は、第１の配置情報テーブル１４０と第２の配置情報テーブル１４０とを用いて、第３のマッピング情報１５１を生成する。
テクスチャ画像１３１の形状が四角形であり、テクスチャ１３２の形状が三角形である場合、テクスチャコピー部１１９は、第３のマッピング情報１５１を２つ生成する。
【００６５】
図１３に、図１２の第２の配置情報テーブル１４０と図４の第１の配置情報テーブル１４０とに対応する第３のマッピング情報データ１５０を示す。
【００６６】
ポリゴン情報１５２に含まれるポリゴン識別子は、任意の識別子である。
【００６７】
ポリゴン情報１５２に含まれるポリゴン座標値は、以下のように算出される。
まず、テクスチャコピー部１１９は、第２の配置情報テーブル１４０内の配置情報１４１に含まれる範囲情報を用いて、４つの座標値を算出する。この４つの座標値は、配置範囲が成す四角形の頂点毎の座標値である。範囲情報（Ｕ、Ｖ、Ｗ、Ｈ）が（０、０、１０、１０）である場合、４つの座標値は、（０、０）、（１０、０）、（０、１０）および（１０、１０）である。
そして、テクスチャコピー部１１９は、４つの座標値を用いて、３つの座標値を２組選択する。２組の３つの座標値は、配置範囲が成す四角形を構成する２つの三角形のそれぞれの頂点毎の座標値である。上記の場合、（０、０）と（１０、０）と（０、１０）との組、および、（１０、０）と（０、１０）と（１０、１０）との組が選択される。
選択される３つの座標値が、ポリゴン座標値となる。
【００６８】
テクスチャ画像識別子１５３は、第２のテクスチャアトラス１７０の識別子である。
【００６９】
テクスチャ情報１５４であるテクスチャ座標値は、第１の配置情報テーブル１４０内の配置情報１４１に含まれる範囲情報を用いて、算出される。算出方法は、ポリゴン座標値を算出する方法と同じである。
【００７０】
図１１に戻り、ステップＳ１３６の説明を続ける。
テクスチャコピー部１１９は、第３のマッピング情報１５１を描画部１２１に受け渡す。
【００７１】
ステップＳ１３７において、テクスチャコピー部１１９から描画部１２１に受け渡された第３のマッピング情報１５１毎に、描画部１２１は以下のように動作する。
第３のマッピング情報１５１に含まれるテクスチャ画像識別子１５３は、第１のテクスチャアトラス１７０を識別する。
そのため、描画部１２１は、第１のテクスチャアトラス１７０から、第３のマッピング情報１５１に含まれるテクスチャ情報１５４で特定される部分に配置されたテクスチャ１３２をコピーする。
次に、描画部１２１は、第２のテクスチャアトラス１７０から、第３のマッピング情報１５１に含まれるポリゴン情報１５２で特定される部分を選択する。
そして、描画部１２１は、第１のテクスチャアトラス１７０からコピーされたテクスチャ１３２を、第２のテクスチャアトラス１７０から選択された部分に描画する。
【００７２】
ステップＳ１３８において、テクスチャコピー部１１９は、対象画像群に未選択のテクスチャ画像１３１があるかを判定する。
未選択のテクスチャ画像１３１がある場合、処理はステップＳ１３４に戻る。
未選択のテクスチャ画像１３１がない場合、処理はステップＳ１３９に進む。
【００７３】
ステップＳ１３９において、テクスチャコピー部１１９は、第１の記憶部１９１から、第１のテクスチャアトラス１７０と第１の配置情報テーブル１４０とを削除する。
以後、第２のテクスチャアトラス１７０が第１のテクスチャアトラス１７０として使用され、第２の配置情報テーブル１４０が第１の配置情報テーブル１４０として使用される。
【００７４】
図１４に、図１３の第３のマッピング情報データ１５０に対応する第３のテクスチャアトラス１７０を示す。
図１４の第３のテクスチャアトラス１７０において、図１３の第３のマッピング情報データ１５０内のポリゴン情報１５２に対応する部分に、図１３の第３のマッピング情報データ１５０内のテクスチャ情報１５４に対応するテクスチャ画像１３１が描画されている。
【００７５】
＊＊＊実施の形態１の効果＊＊＊
テクスチャ画像群１３０は、第１の記憶部１９１として機能する第１のメモリ９０２に記憶される。第１のメモリ９０２は、具体的には、メインメモリである。
テクスチャアトラス１７０は、第２の記憶部１９２として機能する第２のメモリ９１２に記憶される。第２のメモリ９１２は、具体的には、ＶＲＡＭである。
ＶＲＡＭ内でのデータのコピーに要する時間は、メインメモリからＶＲＡＭへのデータのコピーに要する時間に比べて短い。
そこで、テクスチャマッピング装置１００は、新たなテクスチャアトラス１７０を生成する際、古いテクスチャアトラス１７０内の一部のテクスチャ画像１３１を、新たなテクスチャアトラス１７０にコピーする。
その結果、メインメモリ内のテクスチャ画像群１３０からＶＲＡＭ内の新たなテクスチャアトラス１７０にコピーされるテクスチャ画像１３１が少なくなる。
これにより、ポリゴン画像１６０を描画する速度の低下を抑えることが可能になる。
【００７６】
＊＊＊他の構成＊＊＊
テクスチャ画像１３１の形状は四角形以外の形状であってもよい。
テクスチャ画像１３１に含まれるテクスチャ１３２の個数は１つまたは３つ以上であってもよい。
テクスチャ１３２およびポリゴン１６１の形状は三角形以外の形状であってもよい。
【００７７】
テクスチャ画像１３１が配置される配置範囲を決定する方法は任意である。つまり、配置範囲は、２次元のビンパッキング問題を解くためのアルゴリズムとは別のアルゴリズムで決定されてもよい。
【００７８】
新たなテクスチャアトラス１７０である第２のテクスチャアトラス１７０を生成するタイミングは任意である。
つまり、新たなテクスチャアトラス１７０は、古いテクスチャアトラス１７０である第１のテクスチャアトラス１７０内の空き領域が不足したとき以外のタイミングで生成されてもよい。
具体的には、新たなテクスチャアトラス１７０は定期的に生成されてもよい。新たなテクスチャアトラス１７０が定期的に生成されることにより、不要なテクスチャ画像１３１をテクスチャアトラス１７０から排除することができる。
【００７９】
古いテクスチャアトラス１７０（第１のテクスチャアトラス）から新たなテクスチャアトラス１７０（第２のテクスチャアトラス）にコピーする対象となるテクスチャ画像１３１として、重要度が高いテクスチャ画像１３１が選択されてもよい。
【００８０】
具体的には、使用頻度が高いテクスチャ画像１３１が選択されてもよい。
使用頻度が高いテクスチャ画像１３１は、以下のように判定される。
アプリケーション部１１０は、使用回数テーブルを用いて、テクスチャ画像１３１毎の使用回数を数える。使用回数テーブルは、テクスチャ画像識別子と使用回数とが互いに対応付けられたテーブルであり、第１の記憶部１９１に記憶される。
具体的には、アプリケーション部１１０は、マッピング情報データ１５０を出力するときに、マッピング情報データ１５０に含まれるテクスチャ画像識別子１５３と同じ識別子に対応付けられた使用回数を使用回数テーブルから選択する。そして、アプリケーション部１１０は、選択された使用回数に１を加算する。
テクスチャコピー部１１９は、使用回数テーブルを用いて、テクスチャ画像１３１毎の使用頻度を算出する。使用頻度は、使用回数の合計に対する使用回数の割合である。
そして、テクスチャコピー部１１９は、テクスチャ画像１３１毎の使用頻度を頻度閾値と比較する。
使用頻度が頻度閾値より高いテクスチャ画像１３１が、使用頻度が高いテクスチャ画像１３１である。
【００８１】
また、使用される可能性が高いテクスチャ画像１３１が選択されてもよい。ボタンを含んだメニュー画面が表示される場合、使用される可能性が高いテクスチャ画像１３１は、ボタンを示すテクスチャ画像１３１である。
使用される可能性が高いテクスチャ画像１３１は、以下のように判定される。
第１の記憶部１９１は、予測値テーブルを記憶する。予測値テーブルは、テクスチャ画像識別子と予測値とが互いに対応付けられたテーブルである。予測値は、使用される可能性の高さを示す値である。
テクスチャコピー部１１９は、テクスチャ画像１３１毎の予測値を予測閾値と比較する。
予測値が予測閾値より高いテクスチャ画像１３１が、使用される可能性が高いテクスチャ画像１３１である。
【００８２】
描画に使用されるテクスチャアトラス１７０（第１のテクスチャアトラス）は、２枚以上であってもよい。その場合、新たなテクスチャアトラス１７０（第２のテクスチャアトラス）が生成される際には、破棄されるテクスチャアトラス１７０が選択される。そして、テクスチャコピー部１１９は、選択されたテクスチャアトラス１７０から新たなテクスチャアトラス１７０にテクスチャ画像１３１をコピーし、選択されたテクスチャアトラス１７０を破棄する。
破棄されるテクスチャアトラス１７０を選択する方法は任意である。
具体的には、古い方のテクスチャアトラス１７０が選択されてもよい。
また、使用頻度が高いテクスチャ画像１３１が少ない方のテクスチャアトラス１７０が選択されてもよい。使用頻度が高いテクスチャ画像１３１は、上記の通り、頻度閾値を用いて判定される。テクスチャコピー部１１９は、テクスチャアトラス１７０毎に使用頻度が頻度閾値より高いテクスチャ画像１３１の数を算出し、算出された数が少ない方のテクスチャアトラス１７０を選択する。
また、使用される可能性が低いテクスチャ画像１３１が多い方のテクスチャアトラス１７０が選択されてもよい。使用される可能性が低いテクスチャ画像１３１は、上記の予測値と予測閾値とを用いて判定する。予測値が予測閾値より低いテクスチャ画像１３１が、使用される可能性が低いテクスチャ画像１３１である。テクスチャコピー部１１９は、テクスチャアトラス１７０毎に予測値が予測閾値より低いテクスチャ画像１３１の数を算出し、算出された数が多い方のテクスチャアトラス１７０を選択する。
【００８３】
描画に使用されるテクスチャアトラス１７０の枚数は、動的に変更されてもよい。具体的には、ＶＲＡＭのメモリ使用量に応じて、テクスチャアトラス１７０の枚数が調整されてもよい。その場合、メモリ使用量が多いほど、テクスチャアトラス１７０の枚数は少なくなる。
【００８４】
新たなテクスチャアトラス１７０は、古いテクスチャアトラス１７０と異なる大きさであってもよい。
具体的には、ＶＲＡＭのメモリ使用量に応じて、新たなテクスチャアトラス１７０の大きさが調整されてもよい。その場合、メモリ使用量が多いほど、新たなテクスチャアトラス１７０は小さくなる。
【００８５】
新たなテクスチャアトラス１７０と古いテクスチャアトラス１７０とが１つの画像内に配置されてもよい。その場合、１つの画像が２つの領域に分けられて、一方の領域に新たなテクスチャアトラス１７０が配置され、他方の領域に古いテクスチャアトラス１７０が配置される。これにより、描画に使用されるテクスチャアトラス１７０が古いテクスチャアトラス１７０から新たなテクスチャアトラス１７０に切り替わる際に、テクスチャアトラス１７０用の画像の切り替えが不要となる。その結果、テクスチャアトラス１７０の切り替えに要する時間が短縮される。
【００８６】
テクスチャアトラス１７０内でテクスチャ画像１３１を再配置してもよい。具体的には、テクスチャアトラス１７０の充填率が高くなった場合に、使用頻度が低いテクスチャ画像１３１が配置されている部分に、他のテクスチャ画像１３１が配置される。これにより、テクスチャアトラス１７０の充填率を抑えることができる。充填率とは、テクスチャ画像１３１が配置されている部分の割合である。
【００８７】
＊＊＊実施の形態の補足＊＊＊
実施の形態において、テクスチャマッピング装置１００の機能はハードウェアで実現してもよい。
図１５に、テクスチャマッピング装置１００の機能がハードウェアで実現される場合の構成を示す。
テクスチャマッピング装置１００は第１の処理回路９９１と第２の処理回路９９２とを備える。第１の処理回路９９１および第２の処理回路９９２はプロセッシングサーキットリともいう。
第１の処理回路９９１は、アプリケーション部１１０と受付部１１１とテクスチャアトラス生成部１１２と情報変換部１１３とテクスチャコピー部１１９と第１の記憶部１９１といった「部」の機能を実現する専用の電子回路である。
第２の処理回路９９２は、描画部１２１と第２の記憶部１９２といった「部」の機能を実現する専用の電子回路である。
具体的には、第１の処理回路９９１および第２の処理回路９９２は、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ロジックＩＣ、ＧＡ、ＡＳＩＣ、ＦＰＧＡまたはこれらの組み合わせである。ＧＡはＧａｔｅ  Ａｒｒａｙの略称であり、ＡＳＩＣはＡｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔの略称であり、ＦＰＧＡはＦｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙの略称である。
【００８８】
テクスチャマッピング装置１００の機能は、ソフトウェアとハードウェアとの組み合わせで実現してもよい。つまり、「部」の一部をソフトウェアで実現し、「部」の残りをハードウェアで実現してもよい。
【００８９】
実施の形態は、好ましい形態の例示であり、本発明の技術的範囲を制限することを意図するものではない。実施の形態は、部分的に実施してもよいし、他の形態と組み合わせて実施してもよい。フローチャート等を用いて説明した手順は、適宜に変更してもよい。
【符号の説明】
【００９０】
１００  テクスチャマッピング装置、１１０  アプリケーション部、１１１  受付部、１１２  テクスチャアトラス生成部、１１３  情報変換部、１１９  テクスチャコピー部、１２１  描画部、１３０  テクスチャ画像群、１３１  テクスチャ画像、１３２  テクスチャ、１４０  配置情報テーブル、１４１  配置情報、１５０  マッピング情報データ、１５１  マッピング情報、１５２  ポリゴン情報、１５３  テクスチャ画像識別子、１５４  テクスチャ情報、１６０  ポリゴン画像、１６１  ポリゴン、１７０  テクスチャアトラス、１９１  第１の記憶部、１９２  第２の記憶部、１９３  表示部、９０１  第１のプロセッサ、９０２  第１のメモリ、９０３  補助記憶装置、９０８  ディスプレイ、９１１  第２のプロセッサ、９１２  第２のメモリ、９９１  第１の処理回路、９９２  第２の処理回路。
【図１】
2017158734.tif 000003
【図２】
2017158734.tif 000004
【図３】
2017158734.tif 000005
【図４】
2017158734.tif 000006
【図５】
2017158734.tif 000007
【図６】
2017158734.tif 000008
【図７】
2017158734.tif 000009
【図８】
2017158734.tif 000010
【図９】
2017158734.tif 000011
【図１０】
2017158734.tif 000012
【図１１】
2017158734.tif 000013
【図１２】
2017158734.tif 000014
【図１３】
2017158734.tif 000015
【図１４】
2017158734.tif 000016
【図１５】
2017158734.tif 000017
【国際調査報告】
2017158734.tif 000018
2017158734.tif 000019