(57)【要約】【課題】オブジェクトの色替えの多様性を維持しながらも必要なデータ容量や作業工数を大幅に低減することが可能なプログラム、情報記憶媒体及び画像生成システムを提供すること。【解決手段】  所与のオブジェクトに対応づけられる元テクスチャを記憶し、所与の色指定情報で指定される色に基づいて、元テクスチャの少なくとも一部のテクセルの色を変更し、変更した色を当該テクセルに対応づけられるピクセルの色としてオブジェクトを描画する。【選択図】図５
2012027699.tif 000002
【特許請求の範囲】
【請求項１】
所与のオブジェクトの画像を生成するためのプログラムであって、
前記オブジェクトに対応づけられる元テクスチャを記憶するテクスチャ記憶部と、
所与の色指定情報で指定される色に基づいて、前記元テクスチャの少なくとも一部のテクセルの色を変更し、変更した色を当該テクセルに対応づけられるピクセルの色として前記オブジェクトを描画する描画部としてコンピュータを機能させることを特徴とするプログラム。
【請求項２】
請求項１において、
前記テクスチャ記憶部は、
前記元テクスチャの色替領域を定義する色替領域定義テクスチャを記憶し、
前記描画部は、
前記色指定情報で指定される色に基づいて、前記色替領域定義テクスチャで定義される前記色替領域に含まれる前記元テクスチャのテクセルの色を変更することを特徴とするプログラム。
【請求項３】
請求項１又は２において、
前記描画部は、
前記色指定情報で指定される色に基づいて、前記元テクスチャの少なくとも一部のテクセルの色を変更した色替テクスチャを生成する色替テクスチャ生成部と、
前記色替テクスチャを前記オブジェクトにマッピングする色替テクスチャマッピング部と、を含むことを特徴とするプログラム。
【請求項４】
請求項３において、
前記色替テクスチャ生成部は、
前記色替テクスチャを、前記コンピュータの描画メモリの所与の作業領域に生成することを特徴とするプログラム。
【請求項５】
請求項４において、
前記色替テクスチャ生成部は、
前記描画メモリの所与のコピー領域にコピーされた前記元テクスチャを用いて前記色替テクスチャを生成し、生成した当該色替テクスチャを前記コピー領域にコピーし、
前記色替テクスチャマッピング部は、
前記コピー領域の前記色替テクスチャを前記オブジェクトにマッピングすることを特徴とするプログラム。
【請求項６】
請求項４において、
前記色替テクスチャ生成部は、
前記描画メモリの所与のコピー領域にコピーされた前記元テクスチャを複数のテクスチャに分割し、分割したテクスチャ毎に、前記色替テクスチャの一部を前記作業領域に生成する処理と生成した一部の色替テクスチャを前記コピー領域にコピーする処理とを行い、
前記色替テクスチャマッピング部は、
前記コピー領域に生成された前記色替テクスチャを前記オブジェクトにマッピングすることを特徴とするプログラム。
【請求項７】
請求項５又は６において、
前記色替テクスチャ生成部は、
前記作業領域に生成した前記色替テクスチャを、前記元テクスチャのフォーマットに変換して前記コピー領域にコピーすることを特徴とするプログラム。
【請求項８】
請求項２乃至７のいずれかにおいて、
前記色替領域定義テクスチャは、
複数の色チャネルを用いて複数の前記色替領域を定義し、
前記描画部は、
少なくとも１つの前記色替領域に含まれるテクセルの色を、複数の前記色替領域にそれぞれ対応づけられる複数の前記色指定情報のうち当該テクセルが含まれる前記色替領域に対応づけられる前記色指定情報で指定される色に基づいて変更することを特徴とするプログラム。
【請求項９】
請求項２乃至８のいずれかにおいて、
前記描画部は、
前記色替領域定義テクスチャで定義される前記色替領域以外の領域に含まれる前記元テクスチャのテクセルの色を、当該テクセルに対応づけられるピクセルの色として前記オブジェクトを描画することを特徴とするプログラム。
【請求項１０】
請求項１乃至９のいずれかにおいて、
前記テクスチャ記憶部は、
前記元テクスチャの不変領域を定義する不変領域定義テクスチャを記憶し、
前記描画部は、
前記不変領域定義テクスチャで定義される前記不変領域に含まれる前記元テクスチャのテクセルの色を、当該テクセルが前記色替領域に含まれるか否かに関係なく、当該テクセルに対応づけられるピクセルの色として前記オブジェクトを描画することを特徴とするプログラム。
【請求項１１】
請求項１乃至１０のいずれかにおいて、
前記色替領域定義テクスチャは、
各テクセルが複数段階のいずれかの色を有し、
前記描画部は、
前記色替領域定義テクスチャで定義される前記色替領域に含まれる前記元テクスチャのテクセルの色と前記色指定情報で指定される色とを、当該テクセルに対応づけられる前記色替領域定義テクスチャのテクセルの色に応じた合成比で合成することを特徴とするプログラム。
【請求項１２】
請求項１乃至１１のいずれかにおいて、
前記オブジェクトは、
プレーヤキャラクタに関連付けられるパーツオブジェクトであることを特徴とするプログラム。
【請求項１３】
請求項１２において、
前記パーツオブジェクトは、
前記プレーヤキャラクタが装着するコスチュームのオブジェクトであることを特徴とするプログラム。
【請求項１４】
請求項１乃至１３のいずれかにおいて、
前記描画部は、
プレーヤによる入力操作に基づく所与のタイミングで、前記色指定情報で指定される色に基づいて前記元テクスチャの少なくとも一部のテクセルの色を変更する処理を開始することを特徴とするプログラム。
【請求項１５】
請求項１乃至１４のいずれかにおいて、
前記描画部は、
プレーヤが指定した色に基づいて前記色指定情報を生成する色指定情報生成部をさらに含むことを特徴とするプログラム。
【請求項１６】
コンピュータにより読み取り可能な情報記憶媒体であって、請求項１乃至１５のいずれかに記載のプログラムを記憶していることを特徴とする情報記憶媒体。
【請求項１７】
画像を生成するための画像生成システムであって、
前記オブジェクトに対応づけられる元テクスチャを記憶するテクスチャ記憶部と、
所与の色指定情報で指定される色に基づいて、前記元テクスチャの少なくとも一部のテクセルの色を変更し、変更した色を当該テクセルに対応づけられるピクセルの色として前記オブジェクトを描画する描画部と、を含むことを特徴とする画像生成システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラム、情報記憶媒体及び画像生成システムに関する。
【背景技術】
【０００２】
従来より、キャラクタなどのオブジェクトが配置設定されるオブジェクト空間内（仮想的な３次元空間）において仮想カメラ（所与の視点）から見える画像を生成する画像生成システム（ゲームシステム）が知られており、いわゆる仮想現実を体験できるものとして人気が高い。格闘ゲーム（対戦アクションゲーム）を楽しむことができる画像生成システムを例にとれば、プレーヤは、操作部（コントローラ、レバー、ボタン等）を用いてプレーヤキャラクタ（プレーヤオブジェクト）を操作して、コンピュータや相手プレーヤが操作する敵キャラクタ（敵オブジェクト）と格闘対戦することでゲームを楽しむ。このような画像生成システムでは、ゲームをプレイするプレーヤの好みに応じてプレーヤキャラクタをカスタマイズできるものが存在し、高い人気を得ている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−２６８４０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
このようなプレーヤキャラクタのカスタマイズ機能において、プレーヤキャラクタのコスチューム、靴、髪等のオブジェクトについて、模様はそのままで色だけ変更するという色替えの仕様が存在する。この色替えの仕様を実現するため、従来の画像生成システムでは、模様が同じで色違いの多数のテクスチャをあらかじめ用意しておき、プレーヤが指定した色に対応するテクスチャを選択してオブジェクトを描画する処理を行っていた。しかしながら、この手法では、色替えの多様性を追求すると色違いのテクスチャを多数用意する必要があるため、記憶すべきデータ容量が大きくなるという問題があった。また、用意するテクスチャの数が多いほど、その作成作業や色合いの確認作業に多大な手間が必要になるという問題もあった。
【０００５】
本発明は、以上のような課題に鑑みてなされたものであり、本発明のいくつかの態様によれば、オブジェクトの色替えの多様性を維持しながらも必要なデータ容量や作業工数を大幅に低減することが可能なプログラム、情報記憶媒体及び画像生成システムを提供することができる。
【課題を解決するための手段】
【０００６】
（１）本発明は、
所与のオブジェクトの画像を生成するためのプログラムであって、
前記オブジェクトに対応づけられる元テクスチャを記憶するテクスチャ記憶部と、
所与の色指定情報で指定される色に基づいて、前記元テクスチャの少なくとも一部のテクセルの色を変更し、変更した色を当該テクセルに対応づけられるピクセルの色として前記オブジェクトを描画する描画部としてコンピュータを機能させることを特徴とする。
【０００７】
また、本発明は、コンピュータに読み取り可能な情報記憶媒体であって、上記各部としてコンピュータを機能させるプログラムを記憶している情報記憶媒体に関する。また、本発明は、上記各部を含む画像生成システムに関する。
【０００８】
ここでテクスチャとは、例えば色、輝度、面の法線、透明度その他の表面の特性を表現するための情報である。
【０００９】
元テクスチャとは、少なくともテクセル毎の色情報を含むテクスチャであり、元テクスチャの各テクセルは色チャネル（例えばＲＧＢチャネル）だけで構成されていてもよいし、αチャネルを含んで構成されていてもよい。
【００１０】
色指定情報とは何らかの色を指定するための情報であり、色指定情報により指定される色は、色チャネル（例えばＲＧＢチャネル）だけで構成されていてもよいし、αチャネルを含んで構成されていてもよい。この色指定情報により指定される色は、例えば、プレーヤが好みに応じて指定する色であってもよいし、本発明のプログラムを実行するコンピュータがランダムに指定する色であってもよい。
【００１１】
描画部は、例えば、元テクスチャの少なくとも一部のテクセルの色を色指定情報で指定される色に置き換えてオブジェクトを描画するようにしてもよい。
【００１２】
また、描画部は、例えば、元テクスチャの少なくとも一部のテクセルの色と色指定情報で指定される色とを合成し、合成した色を当該テクセルに対応づけられるピクセルの色としてオブジェクトを描画するようにしてもよい。例えば、あらかじめ所与の係数情報を記憶しておき、この係数情報に応じた合成比で、元テクスチャのテクセルの色と色指定情報で指定される色とを合成するようにしてもよい。
【００１３】
本発明によれば、色指定情報で指定される色に基づいて元テクスチャの一部若しくは全部のテクセルの色を変更し、変更した色をオブジェクトのピクセルの色とすることで、１枚のテクスチャから多様な色合いのオブジェクトを描画することができる。また、本発明によれば、色の異なる多数のテクスチャを事前に用意する必要がないので、必要なデータ容量を低減するとともに、テクスチャの作成作業や確認作業に要する工数を大幅に低減することができる。
【００１４】
（２）また、本発明に係るプログラム、情報記憶媒体及び画像生成システムでは、
前記テクスチャ記憶部は、
前記元テクスチャの色替領域を定義する色替領域定義テクスチャを記憶し、
前記描画部は、
前記色指定情報で指定される色に基づいて、前記色替領域定義テクスチャで定義される前記色替領域に含まれる前記元テクスチャのテクセルの色を変更するようにしてもよい。
【００１５】
色替領域定義テクスチャとは、テクセル毎に、元テクスチャの対応するテクセルが色替領域に含まれるか否かを示す情報を含むテクスチャであり、色替領域定義の各テクセルは、例えば、色チャネル（例えばＲＧＢチャネル）で構成されていてもよい。色替領域定義テクスチャにおいて、元テクスチャの色替領域を直接的に定義してもよいし、元テクスチャの色替領域でない領域を定義することでその他の領域を色替領域として間接的に定義するようにしてもよい。
【００１６】
描画部は、例えば、色替領域定義テクスチャで定義される色替領域に含まれる元テクスチャのテクセルの色と色指定情報で指定される色とを合成するようにしてもよい。
【００１７】
本発明によれば、１枚の色替領域定義テクスチャを用いて元テクスチャの所与の領域の色を替えることで、多様な色合いのオブジェクトを容易に描画することができる。
【００１８】
（３）また、本発明に係るプログラム、情報記憶媒体及び画像生成システムでは、
前記描画部は、
前記色指定情報で指定される色に基づいて、前記元テクスチャの少なくとも一部のテクセルの色を変更した色替テクスチャを生成する色替テクスチャ生成部と、
前記色替テクスチャを前記オブジェクトにマッピングする色替テクスチャマッピング部と、を含むようにしてもよい。
【００１９】
色替テクスチャとは、少なくともテクセル毎の色情報を含むテクスチャであり、色替テクスチャの各テクセルは色チャネル（例えばＲＧＢチャネル）だけで構成されていてもよいし、αチャネルを含んで構成されていてもよい。
【００２０】
色替テクスチャ生成部は、例えば、元テクスチャの少なくとも一部のテクセルの色と色指定情報で指定される色とを合成し、合成した色を対応するテクセルの色とする色替テクスチャを生成するようにしてもよい。
【００２１】
本発明によれば、一度色替テクスチャを作成すれば、色替テクスチャを用いてフレーム毎のオブジェクトの描画処理を行うことができる。従って、元テクスチャと指定色情報を用いた色替えの処理を毎フレーム行う必要がないため、オブジェクトの描画処理の負荷を軽減することができる。
【００２２】
（４）また、本発明に係るプログラム、情報記憶媒体及び画像生成システムでは、
前記色替テクスチャ生成部は、
前記色替テクスチャを、前記コンピュータの描画メモリの所与の作業領域に生成するようにしてもよい。
【００２３】
（５）また、本発明に係るプログラム、情報記憶媒体及び画像生成システムでは、
前記色替テクスチャ生成部は、
前記描画メモリの所与のコピー領域にコピーされた前記元テクスチャを用いて前記色替テクスチャを生成し、生成した当該色替テクスチャを前記コピー領域にコピーし、
前記色替テクスチャマッピング部は、
前記コピー領域の前記色替テクスチャを前記オブジェクトにマッピングするようにしてもよい。
【００２４】
このようにすれば、描画メモリの作業領域に生成した色替テクスチャを元テクスチャのコピー領域にコピーした後、作業領域を解放することができるとともに、当該コピー領域にコピーされた色替テクスチャを用いてオブジェクトの描画処理をより高速化することができる。
【００２５】
（６）また、本発明に係るプログラム、情報記憶媒体及び画像生成システムでは、
前記色替テクスチャ生成部は、
前記描画メモリの所与のコピー領域にコピーされた前記元テクスチャを複数のテクスチャに分割し、分割したテクスチャ毎に、前記色替テクスチャの一部を前記作業領域に生成する処理と生成した一部の色替テクスチャを前記コピー領域にコピーする処理とを行い、
前記色替テクスチャマッピング部は、
前記コピー領域に生成された前記色替テクスチャを前記オブジェクトにマッピングするようにしてもよい。
【００２６】
このようにすれば、前記描画メモリに色替テクスチャの１枚分のサイズの作業領域を確保できない場合でも、元テクスチャのコピー領域に１枚分の色替テクスチャを生成することができる。
【００２７】
（７）また、本発明に係るプログラム、情報記憶媒体及び画像生成システムでは、
前記色替テクスチャ生成部は、
前記作業領域に生成した前記色替テクスチャを、前記元テクスチャのフォーマットに変換して前記コピー領域にコピーするようにしてもよい。
【００２８】
テクスチャのフォーマットの一例としては、圧縮形式でないＲＧＢＡ８８８８、ＡＲＧＢ８８８８等や、圧縮形式のＤＴＸ１、ＤＴＸ３、ＤＴＸ５等が挙げられる。
【００２９】
このように、色替テクスチャのフォーマットを元テクスチャのフォーマットに変換することで、元テクスチャをそのままオブジェクトにマッピングするような既存のプログラムを容易に利用することできる。さらに、一般に、元テクスチャが圧縮形式であることが多いので、色替テクスチャを圧縮形式に変換することで、オブジェクトの描画処理において描画メモリに常駐させる色替テクスチャのデータ量を低減し、描画処理の負荷をより軽減することができる。
【００３０】
（８）また、本発明に係るプログラム、情報記憶媒体及び画像生成システムでは、
前記色替領域定義テクスチャは、
複数の色チャネルを用いて複数の前記色替領域を定義し、
前記描画部は、
少なくとも１つの前記色替領域に含まれるテクセルの色を、複数の前記色替領域にそれぞれ対応づけられる複数の前記色指定情報のうち当該テクセルが含まれる前記色替領域に対応づけられる前記色指定情報で指定される色に基づいて変更するようにしてもよい。
【００３１】
複数の色チャネルとは、例えば、Ｒチャネル、Ｇチャネル、Ｂチャネルであってもよいし、Ｙチャネル、Ｕチャネル、Ｖチャネルであってもよいし、さらにαチャネルを含んでいてもよい。
【００３２】
描画部は、例えば、少なくとも１つの色替領域に含まれるテクセルの色と、複数の色替領域にそれぞれ対応づけられる複数の色指定情報のうち当該テクセルが含まれる色替領域に対応づけられる色指定情報で指定される色と、を合成するようにしてもよい。
【００３３】
また、描画部は、例えば、元テクスチャの複数の色替領域に含まれるテクセルの色を、当該複数の色替領域に対応づけられる複数の色指定情報で指定される複数の色を合成した色に置き換えてオブジェクトを描画するようにしてもよい。
【００３４】
本発明によれば、１枚の色替領域定義テクスチャにおいて、色チャネル毎に元テクスチャにおける色替領域を独立して定義することができる。そして、複数の色替領域の各々の色を互いに異なる色指定情報で指定される色に基づいて変更することで、より複雑な色替えを実現することができる。
【００３５】
例えば、１枚の色替領域定義テクスチャにおいて、各テクセルのＲ値で元テクスチャにおける第１の色替領域を定義し、各テクセルのＧ値で元テクスチャにおける第２の色替領域を定義することができる。そして、色替領域定義テクスチャにおいて、元テクスチャの所定の領域を第１の色替領域として定義し、元テクスチャのその他の領域を第２の色替領域として定義することで、元テクスチャの第１の色替領域に含まれるテクセルの色を第１の色指定情報で指定される色に基づいて変更し、元テクスチャの第２の色替領域に含まれるテクセルの色を第２の色指定情報で指定される色に基づいて変更することができる。また、第１の色替領域の一部と第２の色替領域の一部を重複させることで、重複する領域の色は、第１の色指定情報により指定される色及び第２の色指定情報により指定される色に基づいて変更されるので、より複雑な色替えを容易に実現することができる。
【００３６】
（９）また、本発明に係るプログラム、情報記憶媒体及び画像生成システムでは、
前記描画部は、
前記色替領域定義テクスチャで定義される前記色替領域以外の領域に含まれる前記元テクスチャのテクセルの色を、当該テクセルに対応づけられるピクセルの色として前記オブジェクトを描画するようにしてもよい。
【００３７】
このようにすれば、元テクスチャの一部の領域の色を替えずにオブジェクトを描画することができる。
【００３８】
（１０）また、本発明に係るプログラム、情報記憶媒体及び画像生成システムでは、
前記テクスチャ記憶部は、
前記元テクスチャの不変領域を定義する不変領域定義テクスチャを記憶し、
前記描画部は、
前記不変領域定義テクスチャで定義される前記不変領域に含まれる前記元テクスチャのテクセルの色を、当該テクセルが前記色替領域に含まれるか否かに関係なく、当該テクセルに対応づけられるピクセルの色として前記オブジェクトを描画するようにしてもよい。
【００３９】
不変領域定義テクスチャとは、テクセル毎に、元テクスチャの対応するテクセルが不変領域に含まれるか否かを示す情報を含むテクスチャであり、不変領域定義の各テクセルは、例えば、色チャネル（例えばＲＧＢチャネル）で構成されていてもよい。不変領域定義テクスチャにおいて、元テクスチャの不変領域を直接的に定義してもよいし、元テクスチャの不変領域でない領域を定義することでその他の領域を不変領域として間接的に定義するようにしてもよい。
【００４０】
本発明によれば、元テクスチャにおいて不変領域に含まれるテクセルについては、色替領域に含まれるか否かに関係なく、そのままの色にしてオブジェクトを描画することができる。例えば、元テクスチャの一部に色替えをしたくない模様があるような場合には、不変領域定義テクスチャを用いることで、容易にその模様の色をそのまま反映してオブジェクトを描画することができる。
【００４１】
（１１）また、本発明に係るプログラム、情報記憶媒体及び画像生成システムでは、
前記色替領域定義テクスチャは、
各テクセルが複数段階のいずれかの色を有し、
前記描画部は、
前記色替領域定義テクスチャで定義される前記元テクスチャの前記色替領域に含まれる各テクセルの色と前記色指定情報で指定される色とを、当該各テクセルに対応づけられる前記色替領域定義テクスチャのテクセルの色に応じた合成比で合成するようにしてもよい。
【００４２】
例えば、元テクスチャの１つの模様（例えば花の模様）の内部と外部で、色替えの有無や異なる２色の色替えが生じるような場合、描画されるオブジェクトにおいてその模様のエッジ付近の色変化が鋭くなりすぎるとリアル感が低減する。しかし、本発明によれば、例えば、その模様のエッジ付近を色が徐々に変化する色替領域として定義することで、描画されるオブジェクトにおいてその模様のエッジ付近の色の変化にグラデーションをかけることができ、これによりオブジェクトのリアル感を向上させることができる。
【００４３】
（１２）また、本発明に係るプログラム、情報記憶媒体及び画像生成システムでは、
前記オブジェクトは、
プレーヤキャラクタに関連付けられるパーツオブジェクトであってもよい。
【００４４】
このようにすれば、プレーヤキャラクタのパーツオブジェクトの色替えが可能になり、ゲーム性を向上させることができる。
【００４５】
（１３）また、本発明に係るプログラム、情報記憶媒体及び画像生成システムでは、
前記パーツオブジェクトは、
前記キャラクタが装着するコスチュームのオブジェクトであってもよい。
【００４６】
（１４）また、本発明に係るプログラム、情報記憶媒体及び画像生成システムでは、
前記描画部は、
プレーヤによる入力操作に基づく所与のタイミングで、前記色指定情報で指定される色に基づいて前記元テクスチャの少なくとも一部のテクセルの色を変更する処理を開始するようにしてもよい。
【００４７】
所与のタイミングとは、例えば、格闘ゲームであれば、格闘の直前のタイミングであってもよい。
【００４８】
本発明によれば、プレーヤの意思に基づいてオブジェクトの色替え処理を行うことができる。
【００４９】
（１５）また、本発明に係るプログラム、情報記憶媒体及び画像生成システムでは、
前記描画部は、
プレーヤが指定した色に基づいて前記色指定情報を生成する色指定情報生成部をさらに含むようにしてもよい。
【００５０】
このようにすれば、プレーヤの好みに応じた色でオブジェクトの色替え処理を行うことができるので、ゲーム性を向上させることができる。
【図面の簡単な説明】
【００５１】
【図１】本実施形態の画像生成システム（ゲームシステム）の機能ブロック図の一例を示す図。
【図２】本実施形態のプレーヤキャラクタに関連付けられるテーブルデータの一例を示す図。
【図３】本実施形態の色替テクスチャの生成手法について説明するための図。
【図４】本実施形態のキャラクタの描画手法について説明するための図。
【図５】本実施形態のキャラクタ描画の全体処理のフローチャート図。
【図６】本実施形態の色替テクスチャの生成処理のフローチャート図。
【図７】本実施形態のＶＲＡＭの記憶領域の割り当て例を示す図。
【図８】本実施形態の色替テクスチャの生成処理の詳細を示すフローチャート図。
【図９】本実施形態を実現できるハードウェア構成の例を示す図。
【図１０】変形例１の色替テクスチャの生成手法について説明するための図。
【図１１】変形例１の色替テクスチャの生成手法について説明するための図。
【図１２】変形例１の色替テクスチャの生成処理のフローチャート図。
【図１３】変形例１のＶＲＡＭの記憶領域の割り当て例を示す図。
【図１４】変形例２のプレーヤキャラクタに関連付けられるテーブルデータの一例を示す図。
【図１５】変形例２の色替テクスチャの生成手法について説明するための図。
【図１６】変形例２の色替テクスチャの生成処理の詳細を示すフローチャート図。
【図１７】変形例３のプレーヤキャラクタに関連付けられるテーブルデータの一例を示す図。
【図１８】変形例３の色替テクスチャの生成手法について説明するための図。
【図１９】変形例３の色替テクスチャの生成処理のフローチャート図。
【図２０】変形例３のＶＲＡＭの記憶領域の割り当て例を示す図。
【図２１】変形例３の色替テクスチャの生成処理の詳細を示すフローチャート図。
【図２２】変形例５のキャラクタの描画手法について説明するための図。
【図２３】変形例５のキャラクタの描画処理のフローチャート図。
【図２４】変形例５のＶＲＡＭの記憶領域の割り当て例を示す図。
【図２５】変形例５のパーツオブジェクトの描画処理の詳細を示すフローチャート図。
【発明を実施するための形態】
【００５２】
以下、本発明の好適な実施形態について図面を用いて詳細に説明する。なお、以下に説明する実施の形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また以下で説明される構成の全てが本発明の必須構成要件であるとは限らない。
【００５３】
１．構成
図１に本実施形態の画像生成システム（ゲームシステム）の機能ブロック図の一例を示す。なお本実施形態の画像生成システムは図１の構成要素（各部）の一部を省略した構成としてもよい。
【００５４】
操作部１６０は、プレーヤがオブジェクト（プレーヤキャラクタ、移動体）の操作データを入力するためのものであり、その機能は、レバー、ボタン、ステアリング、マイク、タッチパネル型ディスプレイ、或いは筺体などにより実現できる。
【００５５】
なお、操作部１６０は、加速度センサや撮像部、或いは角速度を検出するジャイロセンサを備えた入力機器によってプレーヤからの入力データ（操作データ）を入力できるものでもよい。例えば、入力装置は、プレーヤが把持して動かすものであってもよいし、プレーヤが身につけて動かすものであってもよい。また、入力装置には、プレーヤが把持する刀型コントローラや銃型コントローラ、あるいはプレーヤが身につける（プレーヤが手に装着する）グローブ型コントローラなど実際の道具を模して作られたコントローラも含まれる。また入力装置には、入力装置と一体化されているゲーム装置、携帯型ゲーム装置、携帯電話なども含まれる。
【００５６】
例えば、入力機器に備えられた加速度センサは、３軸（Ｘ軸、Ｙ軸、Ｚ軸）の加速度を検出する。すなわち、加速度センサは、上下方向、左右方向、及び、前後方向の加速度を検出することができる。なお、加速度センサは、５ｍｓｅｃ毎に加速度を検出している。また、加速度センサは、１軸、２軸、６軸の加速度を検出するものであってもよい。なお、加速度センサから検出された加速度は、入力機器の通信部によってゲーム装置（本体装置）に送信される。
【００５７】
また、入力機器に備えられた撮像部は、赤外線フィルタ、レンズ、撮像素子（イメージセンサ）、画像処理回路を含む。赤外線フィルタは、入力装置の前方に配置され、表示部１９０に関連付けられて配置されている光源から入射する光から赤外線のみを通過させる。レンズは、赤外線フィルタを透過した赤外線を集光して撮像素子へ出射する。撮像素子は、例えば、ＣＭＯＳセンサやＣＣＤのような固体撮像素子であり、レンズが集光した赤外線を撮像して撮像画像を生成する。撮像素子で生成された撮像画像は、画像処理回路で処理される。例えば、撮像素子から得られた撮像画像を処理して高輝度部分を検知し、撮像画像における光源の位置情報（特定位置）を検出する。なお、光源が複数存在する場合には、撮像画像上の位置情報を検出する。また、検出した撮像画像上の位置情報は、通信部によって、本体装置に送信される。
【００５８】
記憶部１７０は、処理部１００や通信部１９６などのワーク領域となるもので、その機能はＲＡＭ（ＶＲＡＭ）などにより実現できる。記憶部１７０は、ワーク領域として使用される主記憶部１７２と、最終的な表示画像等が記憶される描画バッファ１７４と、オブジェクトのモデルデータが記憶されるオブジェクトデータ記憶部１７６と、各オブジェクトに対応付けられたテクスチャが記憶されるテクスチャ記憶部１７８と、オブジェクトの生成処理時にＺ値が記憶されるＺバッファ１７９とを含む。なお、これらの一部を省略する構成としてもよい。
【００５９】
特に本実施形態のテクスチャ記憶部１７８は、所与のオブジェクトに対応づけられる元テクスチャを記憶する。テクスチャ記憶部１７８は、さらに、元テクスチャの色替領域を定義する色替領域定義テクスチャや元テクスチャの不変領域を定義する不変領域定義テクスチャを記憶するようにしてもよい。この色替領域定義テクスチャは、複数の色チャネルを用いて複数の色替領域を定義するようにしてもよいし、各テクセルが複数段階のいずれかの色を有するようにしてもよい。
【００６０】
情報記憶媒体１８０（コンピュータにより読み取り可能な媒体）は、プログラムやデータなどを格納するものであり、その機能は、光ディスク（ＣＤ、ＤＶＤ）、光磁気ディスク（ＭＯ）、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ（ＲＯＭ）などにより実現できる。処理部１００は、情報記憶媒体１８０に格納されるプログラム（データ）に基づいて本実施形態の種々の処理を行う。情報記憶媒体１８０には、本実施形態の各部としてコンピュータを機能させるためのプログラム（各部の処理をコンピュータに実行させるためのプログラム）を記憶することができる。
【００６１】
表示部１９０は、本実施形態により生成された画像を出力するものであり、その機能は、ＣＲＴ、ＬＣＤ、タッチパネル型ディスプレイ、或いはＨＭＤ（ヘッドマウントディスプレイ）などにより実現できる。音出力部１９２は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどにより実現できる。
【００６２】
通信部１９６は外部（例えば他の画像生成システム）との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用ＡＳＩＣなどのハードウェアや、プログラムなどにより実現できる。
【００６３】
なお、サーバが有する情報記憶媒体や記憶部に記憶されている本実施形態の各部としてコンピュータを機能させるためのプログラムやデータを、ネットワークを介して受信し、受信したプログラムやデータを情報記憶媒体１８０や記憶部１７０に記憶してもよい。このようにプログラムやデータを受信して画像生成システムを機能させる場合も本発明の範囲内に含む。
【００６４】
処理部１００（プロセッサ）は、操作部１６０からの操作データやプログラムなどに基づいて、ゲーム処理、画像生成処理、或いは音生成処理などの処理を行う。ここでゲーム処理としては、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、キャラクタやマップなどのオブジェクトを配置する処理、オブジェクトを表示する処理、ゲーム結果を演算する処理、或いはゲーム終了条件が満たされた場合にゲームを終了する処理などがある。
【００６５】
この処理部１００は記憶部１７０内の主記憶部１７２をワーク領域として各種処理を行う。処理部１００の機能は各種プロセッサ（ＣＰＵ、ＤＳＰ等）、ＡＳＩＣ（ゲートアレイ等）などのハードウェアや、プログラムにより実現できる。
【００６６】
処理部１００は、オブジェクト空間設定部１１０、移動・動作処理部１１２、仮想カメラ制御部１１４、描画部１２０、音生成部１３０を含む。なおこれらの一部を省略する構成としてもよい。
【００６７】
オブジェクト空間設定部１１０は、雪、雨、キャラクタ、建物、球場、車、樹木、柱、壁、マップ（地形）などの表示物を表す各種オブジェクト（ライン（線）、ラインポリゴン、ポリゴン、多角形、自由曲面又はサブディビジョンサーフェスなどのプリミティブで構成されるオブジェクト）をオブジェクト空間に配置設定する処理を行う。例えば、ワールド座標系でのオブジェクトの位置や回転角度（向き、方向と同義であり、例えば、ワールド座標系でのＸ、Ｙ、Ｚ軸の各軸の正方向からみて時計回りに回る場合における回転角度）を決定し、その位置（Ｘ、Ｙ、Ｚ）にその回転角度（Ｘ、Ｙ、Ｚ軸回りでの回転角度）でオブジェクトを配置する。
【００６８】
移動・動作処理部１１２は、オブジェクト（キャラクタ、移動体等）の移動・動作演算（移動・動作シミュレーション）を行う。すなわち操作部１６０によりプレーヤが入力した操作データや、プログラム（移動・動作アルゴリズム）や、各種データ（モーションデータ）、物理法則などに基づいて、オブジェクトをオブジェクト空間内で移動させたり、オブジェクトを動作（モーション、アニメーション）させたりする処理を行う。具体的には、オブジェクトの移動情報（位置、回転角度、速度、或いは加速度）や動作情報（オブジェクトを構成する各パーツの位置、或いは回転角度）を、１フレーム（１／６０秒）毎に順次求めるシミュレーション処理を行う。なおフレームは、オブジェクトの移動・動作処理（シミュレーション処理）や画像生成処理を行う時間の単位である。
【００６９】
仮想カメラ制御部１１４は、オブジェクト空間内の所与（任意）の視点から見える画像を生成するための仮想カメラ（視点）の制御処理を行う。具体的には、ワールド座標系における仮想カメラの位置（Ｘ、Ｙ、Ｚ）又は回転角度（例えば、Ｘ、Ｙ、Ｚ軸の各軸の正方向からみて時計回りに回る場合における回転角度）を制御する処理を行う。要するに、視点位置、視線方向、画角を制御する処理を行う。例えば、仮想カメラ制御部１１４は、仮想カメラを移動体オブジェクトの移動に追従させる制御を行うようにしてもよい。すなわち、仮想カメラによりオブジェクト（例えばキャラクタ、移動体）を後方から撮影する場合には、オブジェクトの位置又は回転の変化に仮想カメラが追従するように、仮想カメラの位置又は回転角度（仮想カメラの向き）を制御する。この場合には、移動・動作処理部１１２で得られたオブジェクトの位置、回転角度又は速度などの情報に基づいて、仮想カメラを制御できる。或いは、仮想カメラを、予め決められた回転角度で回転させたり、予め決められた移動経路で移動させる制御を行ってもよい。この場合には、仮想カメラの位置（移動経路）又は回転角度を特定するための仮想カメラデータに基づいて仮想カメラを制御する。なお、仮想カメラ（視点）が複数存在する場合には、それぞれの仮想カメラについて上記の制御処理が行われる。
【００７０】
描画部１２０は、処理部１００で行われる種々の処理（ゲーム処理）の結果に基づいて描画処理を行い、これにより画像を生成し、表示部１９０に出力する。いわゆる３次元ゲーム画像を生成する場合には、まずオブジェクト（モデル）の各頂点の頂点データ（頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等）を含むオブジェクトデータ（モデルデータ）が入力され、入力されたオブジェクトデータに含まれる頂点データに基づいて、頂点処理（頂点シェーダによるシェーディング）が行われる。なお頂点処理を行うに際して、必要に応じてポリゴンを再分割するための頂点生成処理（テッセレーション、曲面分割、ポリゴン分割）を行うようにしてもよい。
【００７１】
頂点処理では、頂点処理プログラム（頂点シェーダプログラム、第１のシェーダプログラム）に従って、頂点の移動処理や、座標変換、例えばワールド座標変換、視野変換（カメラ座標変換）、クリッピング処理、射影変換（視点を基準とした透視変換、投影変換）、ビューポート変換（スクリーン座標変換）、光源計算等のジオメトリ処理が行われ、その処理結果に基づいて、オブジェクトを構成する頂点群について与えられた頂点データを変更（更新、調整）する。ジオメトリ処理後のオブジェクトデータ（オブジェクトの頂点の位置座標、テクスチャ座標、色データ（輝度データ）、法線ベクトル、或いはα値等）は、オブジェクトデータ記憶部１７６に保存される。
【００７２】
そして、頂点処理後の頂点データに基づいてラスタライズ（走査変換）が行われ、プリミティブ（ポリゴン）の面とピクセルとが対応づけられる。そしてラスタライズに続いて、画像を構成するピクセル（表示画面を構成するフラグメント）を描画するピクセル処理（ピクセルシェーダによるシェーディング、フラグメント処理）が行われる。ピクセル処理では、ピクセル処理プログラム（ピクセルシェーダプログラム、第２のシェーダプログラム）に従って、テクスチャの読出し（テクスチャマッピング）、色データの設定／変更、半透明合成、アンチエイリアス等の各種処理を行って、画像を構成するピクセルの最終的な描画色を決定し、透視変換されたオブジェクトの描画色を描画バッファ１７４（フレームバッファや中間バッファ（ワークバッファ）などのピクセル単位で画像情報を記憶できるバッファ。ＶＲＡＭ、レンダリングターゲット）に出力（描画）する。すなわち、ピクセル処理では、画像情報（色、法線、輝度、α値等）をピクセル単位で設定あるいは変更するパーピクセル処理を行う。これにより、オブジェクト空間内において仮想カメラ（所与の視点）から見える画像が生成される。なお、仮想カメラ（視点）が複数存在する場合には、それぞれの仮想カメラから見える画像を分割画像として１画面に表示できるように画像を生成することができる。
【００７３】
なお頂点処理やピクセル処理は、シェーディング言語によって記述されたシェーダプログラムによって、プリミティブ（ポリゴン）の描画処理をプログラム可能にするハードウェア、いわゆるプログラマブルシェーダ（頂点シェーダやピクセルシェーダ）により実現される。プログラマブルシェーダでは、頂点単位の処理やピクセル単位の処理がプログラム可能になることで描画処理内容の自由度が高く、従来のハードウェアによる固定的な描画処理に比べて表現力を大幅に向上させることができる。
【００７４】
そして描画部１２０は、オブジェクトを描画する際に、テクスチャマッピング、隠面消去処理、αブレンディング等を行う。
【００７５】
テクスチャマッピングは、記憶部１７０のテクスチャ記憶部１７８に記憶されるテクスチャ（テクセル値）をオブジェクトにマッピングするための処理である。具体的には、オブジェクトの頂点に設定（付与）されるテクスチャ座標等を用いて記憶部１７０のテクスチャ記憶部１７８からテクスチャ（色（ＲＧＢ）、α値などの表面プロパティ）を読み出す。そして、２次元の画像であるテクスチャをオブジェクトにマッピングする。この場合に、ピクセルとテクセルとを対応づける処理や、テクセルの補間としてバイリニア補間などを行う。
【００７６】
隠面消去処理としては、描画ピクセルのＺ値（奥行き情報）が格納されるＺバッファ１７９（奥行きバッファ）を用いたＺバッファ法（奥行き比較法、Ｚテスト）による隠面消去処理を行うことができる。すなわちオブジェクトのプリミティブに対応する描画ピクセルを描画する際に、Ｚバッファ１７９に格納されるＺ値を参照する。そして参照されたＺバッファ１７９のＺ値と、プリミティブの描画ピクセルでのＺ値とを比較し、描画ピクセルでのＺ値が、仮想カメラから見て手前側となるＺ値（例えば小さなＺ値）である場合には、その描画ピクセルの描画処理を行うとともにＺバッファ１７９のＺ値を新たなＺ値に更新する。
【００７７】
αブレンディング（α合成）は、α値（Ａ値）に基づく半透明合成処理（通常αブレンディング、加算αブレンディング又は減算αブレンディング等）のことである。
【００７８】
なお、α値は、各ピクセル（テクセル、ドット）に関連づけて記憶できる情報であり、例えば色情報以外のプラスアルファの情報である。α値は、マスク情報、半透明度（透明度、不透明度と等価）、バンプ情報などとして使用できる。
【００７９】
特に本実施形態では、描画部１２０は、所与の色指定情報で指定される色に基づいて、テクスチャ記憶部１７８に記憶される元テクスチャの少なくとも一部のテクセルの色を変更し、変更した色を当該テクセルに対応づけられるピクセルの色として、所与のオブジェクトを描画する。このオブジェクトは、例えば、プレーヤキャラクタに関連付けられるパーツオブジェクトであり、このパーツオブジェクトは、例えば、プレーヤキャラクタが装着するコスチュームのオブジェクトである。
【００８０】
描画部１２０は、プレーヤによる入力操作に基づく所与のタイミングで、色指定情報で指定される色に基づいて元テクスチャの少なくとも一部のテクセルの色を変更する処理を開始するようにしてもよい。
【００８１】
描画部１２０は、色指定情報で指定される色に基づいて、テクスチャ記憶部１７８に記憶される色替領域定義テクスチャで定義される色替領域に含まれる元テクスチャのテクセルの色を変更するようにしてもよい。さらに、描画部１２０は、色替領域定義テクスチャで定義される色替領域以外の領域に含まれる元テクスチャのテクセルの色を、当該テクセルに対応づけられるピクセルの色としてオブジェクトを描画するようにしてもよい。
【００８２】
また、色替領域定義テクスチャにおいて、複数の色チャネルを用いて複数の色替領域が定義されている場合、描画部１２０は、少なくとも１つの色替領域に含まれるテクセルの色を、複数の色替領域にそれぞれ対応づけられる複数の色指定情報のうち当該テクセルが含まれる色替領域に対応づけられる色指定情報で指定される色に基づいて変更するようにしてもよい。
【００８３】
また、色替領域定義テクスチャの各テクセルが複数段階のいずれかの色を有する場合、描画部１２０は、色替領域定義テクスチャで定義される色替領域に含まれる元テクスチャのテクセルの色と色指定情報で指定される色とを、当該テクセルに対応づけられる色替領域定義テクスチャのテクセルの色に応じた合成比で合成するようにしてもよい。
【００８４】
また、描画部１２０は、不変領域定義テクスチャで定義される不変領域に含まれる元テクスチャのテクセルの色を、当該テクセルが色替領域に含まれるか否かに関係なく、当該テクセルに対応づけられるピクセルの色としてオブジェクトを描画するようにしてもよい。
【００８５】
本実施形態では、描画部１２０は、色替テクスチャ生成部１２２、色替テクスチャマッピング部１２４、色指定情報生成部１２６を含む。
【００８６】
色替テクスチャ生成部１２２は、色指定情報で指定される色に基づいて、元テクスチャの少なくとも一部のテクセルの色を変更した色替テクスチャを生成する処理を行う。
【００８７】
色替テクスチャマッピング部１２４は、色替テクスチャをオブジェクトにマッピングする処理を行う。
【００８８】
色指定情報生成部１２６は、プレーヤが指定した色に基づいて色指定情報を生成する処理を行う。
【００８９】
色替テクスチャ生成部１２２は、色替テクスチャを、描画メモリ（ＶＲＡＭ）の所与の作業領域に生成するようにしてもよい。
【００９０】
そして、色替テクスチャ生成部１２２は、描画メモリ（ＶＲＡＭ）の所与のコピー領域にコピーされた元テクスチャを用いて色替テクスチャを生成し、生成した当該色替テクスチャを当該コピー領域にコピーし、色替テクスチャマッピング部１２４は、当該コピー領域の色替テクスチャをオブジェクトにマッピングするようにしてもよい。あるいは、色替テクスチャ生成部１２２は、描画メモリ（ＶＲＡＭ）の所与のコピー領域にコピーされた元テクスチャを複数のテクスチャに分割し、分割したテクスチャ毎に、色替テクスチャの一部を描画メモリ（ＶＲＡＭ）の作業領域に生成する処理と生成した一部の色替テクスチャを当該コピー領域にコピーする処理とを行い、色替テクスチャマッピング部１２４は、当該コピー領域に生成された色替テクスチャをオブジェクトにマッピングするようにしてもよい。いずれ場合も、色替テクスチャ生成部１２２は、描画メモリ（ＶＲＡＭ）の作業領域に生成した色替テクスチャを、元テクスチャのフォーマットに変換してコピー領域にコピーする。
【００９１】
音生成部１３０は、処理部１００で行われる種々の処理の結果に基づいて音処理を行い、ＢＧＭ、効果音、又は音声などのゲーム音を生成し、音出力部１９２に出力する。
【００９２】
なお、本実施形態の画像生成システムは、１人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、１つの端末を用いて生成してもよいし、ネットワーク（伝送ライン、通信回線）などで接続された複数の端末（ゲーム機、携帯電話）を用いて分散処理により生成してもよい。
【００９３】
２．本実施形態の手法
（１）概要
本実施形態は、所与のオブジェクトに対応づけて用意された元テクスチャの少なくとも一部の領域の色を、指定された色に基づいて変更してオブジェクトを描画する処理を行うものである。本実施形態の手法により、プレーヤの好みに応じて、例えば、プレーヤキャラクタのコスチューム、靴、ストッキング、髪の毛、入れ墨等のパーツオブジェクトの色や背景の色を多様に変更することが可能になる。以下、プレーヤキャラクタのパーツオブジェクトの色を変更する場合を例にとり、本実施形態の手法について説明する。
【００９４】
（２）パーツオブジェクトのテーブルデータ
本実施形態では、プレーヤは、所与のタイミングで複数のキャラクタから１のキャラクタを選択し、選択したプレーヤキャラクタに関連付けられる各パーツオブジェクトの色を好みに応じて変更する。
【００９５】
図２に、プレーヤキャラクタに関連付けられるテーブルデータの一例を示す。図２に示すように、本実施形態におけるテーブルデータ１０では、キャラクタＡにはＮＡ個のパーツオブジェクトＰＯＡ（１）、ＰＯＡ（２）、・・・、ＰＯＡ（ＮＡ）が関連付けられている。例えば、ＰＯＡ（１）はコスチューム、ＰＯＡ（２）は靴、ＰＯＡ（３）はストッキング等のパーツオブジェクトである。
【００９６】
各パーツオブジェクトＰＯＡ（ｎ）（ｎ＝１〜ＮＡ）には、元テクスチャＴＸＡ（ｎ）、色替領域定義テクスチャＴＹＡ（ｎ）、色指定情報ＣＬＡ（ｎ）、係数情報ＫＡ（ｎ）が対応づけられている。
【００９７】
元テクスチャＴＸＡ（ｎ）は、テクセル毎に色情報（ＲＧＢ値）（α値を含んでもよい）が定義されたテクスチャである。
【００９８】
色替領域定義テクスチャＴＹＡ（ｎ）は、元テクスチャＴＸＡ（ｎ）と同じサイズのテクスチャであり、元テクスチャＴＸＡ（ｎ）における色替領域を定義する。色替領域定義テクスチャＴＹＡ（ｎ）は、テクセル毎に色情報（ＲＧＢ値）（α値を含んでもよい）が定義され、本実施形態では、色替領域定義テクスチャＴＹＡ（ｎ）において、色替領域を示すテクセルのＲ値には０以外の値（例えば２５５）が設定され、色替領域以外の領域（以下、非色替領域という）を示すテクセルのＲ値には０が設定されている。すなわち、色替領域定義テクスチャＴＹＡ（ｎ）のテクセルのＲ値が０以外の値であれば、そのテクセルの座標と同じ座標にある元テクスチャＴＸＡ（ｎ）のテクセルは色替領域に含まれ、色替領域定義テクスチャＴＹＡ（ｎ）のテクセルのＲ値が０であれば、そのテクセルの座標と同じ座標にある元テクスチャＴＸＡ（ｎ）のテクセルは非色替領域に含まれる。
【００９９】
色指定情報ＣＬＡ（ｎ）は、元テクスチャＴＸＡ（ｎ）の色替領域に含まれる各テクセルの色情報（ＲＧＢ値）（α値を含んでもよい）と合成される色情報（ＲＧＢ値）（α値を含んでもよい）を指定する情報であり、係数情報ＫＡ（ｎ）はその合成比を決定する係数の情報である。
【０１００】
他のキャラクタについても同様のテーブルデータが定義されており、例えばキャラクタＢについては、ＮＢ個のパーツオブジェクトＰＯＢ（１）、ＰＯＢ（２）、・・・、ＰＯＢ（ＮＢ）が関連付けられており、各パーツオブジェクトＰＯＢ（ｎ）（ｎ＝１〜ＮＢ）には、元テクスチャＴＸＢ（ｎ）、色替領域定義テクスチャＴＹＢ（ｎ）、色指定情報ＣＬＢ（ｎ）、係数情報ＫＢ（ｎ）が対応づけられている。
【０１０１】
（３）色替テクスチャの生成手法
本実施形態では、プレーヤがキャラクタを選択する際に、各パーツオブジェクトＰＯに対する色指定情報ＣＬを指定することで、各パーツオブジェクトＰＯに対応づけられる元テクスチャＴＸの色替領域の色を色指定情報ＣＬに応じて変更した色替テクスチャＴＸ’を生成する。
【０１０２】
図３は、パーツオブジェクトＰＯに対応づけられる色替テクスチャＴＸ’の生成手法について説明するための図である。図３では、パーツオブジェクトＰＯは例えばコスチュームであり、図２に示したテーブルデータ１０において、パーツオブジェクトＰＯには元テクスチャＴＸ、色替領域定義テクスチャＴＹ、色指定情報ＣＬ（＝（Ｒ，Ｇ，Ｂ））、係数情報Ｋ（＝（α，β，γ））が対応づけられているものとしている。
【０１０３】
本実施形態では、元テクスチャＴＸ、色替領域定義テクスチャＴＹ、係数情報Ｋは、情報記憶媒体に記憶されており、キャラクタの描画に先立って情報記憶媒体から読み出される。情報記憶媒体から読み出された元テクスチャＴＸと色替領域定義テクスチャＴＹは、それぞれＶＲＡＭの所定領域（以下、コピー領域という）ＣＸ，ＣＹにコピーされる。図３では、ＶＲＡＭのコピー領域にコピーされた元テクスチャＴＸと色替領域定義テクスチャＴＹが示されている。
【０１０４】
図３に示すように、元テクスチャＴＸ、色替領域定義テクスチャＴＹ、色指定情報ＣＬ、係数情報Ｋがシェーダ２０に入力され、シェーダ２０は、これらの情報を元に各テクセルの色を計算し、ＶＲＡＭの所定の作業領域Ｗに色替テクスチャＴＸ’を生成する。
【０１０５】
図３では、色替領域定義テクスチャＴＹにおいて、元テクスチャＴＸの花の模様以外の領域が色替領域として定義されている。具体的には、色替領域定義テクスチャＴＹでは、例えば、元テクスチャＴＸの花の模様以外の領域は白色（（ｒ，ｇ，ｂ）＝（２５５，２５５，２５５））に、花の模様の領域は黒色（（ｒ，ｇ，ｂ）＝（０，０，０））に設定されている。従って、色替領域定義テクスチャＴＹの各テクセルのＲ値、Ｇ値、Ｂ値のいずれかをチェックすることで、当該各テクセルと同じ座標にある元テクスチャＴＸのテクセルが色替領域と非色替領域のいずれに含まれるかが判定できるようになっている。
【０１０６】
そして、色替テクスチャＴＸ’では、花の模様の領域（元テクスチャＴＸの非色替領域）については元テクスチャＴＸと同じ色であり、花の模様以外の領域（色替領域）については元テクスチャＴＸの色と色指定情報ＣＬで指定される色を合成した色になっている。より詳細には、色替テクスチャＴＸ’の各テクセルの色（ｒ’，ｇ’，ｂ’）は、元テクスチャＴＸの同じ座標にあるテクセルの色（ｒ，ｇ，ｂ）に対して、当該テクセルが花の模様の領域（非色替領域）に含まれる場合はｒ’＝ｒ，ｇ’＝ｇ，ｂ’＝ｂであり、当該テクセルが、花の模様以外の領域（色替領域）に含まれる場合は、例えばｒ’＝（１−α）・ｒ＋α・Ｒ，ｇ’＝（１−β）・ｇ＋β・Ｇ，ｂ’＝（１−γ）・ｂ＋γ・Ｂで計算される。
【０１０７】
図３の破線で示すように、シェーダ２０により生成された色替テクスチャＴＸ’は、コピー領域ＣＸにコピー（上書き）される。
【０１０８】
なお、キャラクターにＮ個のパーツオブジェクトが関連付けられている場合には、Ｎ個のパーツオブジェクトＰＯ（１）〜ＰＯ（Ｎ）に対して同様の処理を行い、Ｎ個の色替テクスチャＴＸ’（１）〜ＴＸ’（Ｎ）を生成する。
【０１０９】
（４）キャラクタの描画手法
図４は、キャラクタの描画手法について説明するための図である。図４に示すように、シェーダ２０により、キャラクタのポリゴンデータをラスタライズした後、ＶＲＡＭのコピー領域ＣＸにある色替テクスチャＴＸ’をパーツオブジェクトＰＯにマッピングしてキャラクタを描画する。
【０１１０】
なお、キャラクターにＮ個のパーツオブジェクトが関連付けられている場合には、シェーダ２０により、Ｎ個のパーツオブジェクトＰＯ（１）〜ＰＯ（Ｎ）に対して、それぞれ色替テクスチャＴＸ’（１）〜ＴＸ’（Ｎ）をマッピングしてキャラクタを描画する。
【０１１１】
３．本実施形態の処理
（１）キャラクタ描画の全体処理
次に、本実施形態のキャラクタ描画の全体処理について図５のフローチャートを用いて説明する。図５のフローチャートは、プレーヤキャラクタに関連付けられたＮ個のパーツオブジェクトの色をプレーヤの好みに応じて変更して描画するフローチャートである。
【０１１２】
まず、プレーヤが、プレーヤキャラクタのパーツオブジェクトＰＯ（１）〜ＰＯ（Ｎ）にそれぞれ対応づけて色指定情報ＣＬ（１）〜ＣＬ（Ｎ）を指定する（ステップＳ１０）。例えば、ゲーム画面上にカラーパレットを表示し、プレーヤが、パーツオブジェクトＰＯ（１）〜ＰＯ（Ｎ）の各々に対してカラーパレットからそれぞれ１色を選択することで色指定情報ＣＬ（１）〜ＣＬ（Ｎ）を指定するようにしてもよい。この色指定情報ＣＬ（１）〜ＣＬ（Ｎ）は、図２に示したテーブルデータ１０に書き込まれる。例えば、プレーヤキャラクタとしてキャラクタＡが選択されている場合であれば、色指定情報ＣＬ（１）〜ＣＬ（Ｎ）はＣＬＡ（１）〜ＣＬＡ（ＮＡ）に書き込まれる。
【０１１３】
次に、テーブルデータを参照し、パーツオブジェクトＰＯ（１）〜ＰＯ（Ｎ）に対して、色替テクスチャＴＸ’（１）〜ＴＸ’（Ｎ）をそれぞれ生成する（ステップＳ２０）。具体的には、図２に示したテーブルデータ１０を参照し、プレーヤキャラクタに関連付けられた元テクスチャＴＸ（１）〜ＴＸ（Ｎ）、色替領域定義テクスチャＴＹ（１）〜ＴＹ（Ｎ）、色指定情報ＣＬ（１）〜ＣＬ（Ｎ）（ステップＳ１０で指定した色指定情報）、係数情報Ｋ（１）〜Ｋ（Ｎ）を用いて、色替テクスチャＴＸ’（１）〜ＴＸ’（Ｎ）を生成する。例えば、プレーヤキャラクタとしてキャラクタＡが選択されている場合であれば、元テクスチャＴＸＡ（１）〜ＴＸＡ（ＮＡ）、色替領域定義テクスチャＴＹＡ（１）〜ＴＹＡ（ＮＡ）、色指定情報ＣＬＡ（１）〜ＣＬＡ（ＮＡ）、係数情報ＫＡ（１）〜ＫＡ（ＮＡ）を用いて、色替テクスチャＴＸＡ’（１）〜ＴＸＡ’（ＮＡ）を生成する。このステップＳ２０の処理の具体的なフローチャートについては後述する。
【０１１４】
次に、ステップＳ２０で生成した色替テクスチャＴＸ’（１）〜ＴＸ’（Ｎ）を用いてプレーヤキャラクタを描画する（ステップＳ３０）。具体的には、シェーダ２０により、プレーヤキャラクタのポリゴンデータをラスタライズした後、パーツオブジェクトＰＯ（１）〜ＰＯ（Ｎ）に対して色替テクスチャＴＸ’（１）〜ＴＸ’（Ｎ）をそれぞれマッピングしてプレーヤキャラクタを描画する。例えば、プレーヤキャラクタとしてキャラクタＡが選択されている場合であれば、パーツオブジェクトＰＯＡ（１）〜ＰＯＡ（ＮＡ）に対して色替テクスチャＴＸＡ’（１）〜ＴＸＡ’（ＮＡ）をそれぞれマッピングしてプレーヤキャラクタを描画する。
【０１１５】
そして、プレーヤキャラクタの描画が終了するまで（ステップＳ４０でＹになるまで）フレームを更新し（ステップＳ５０）、プレーヤキャラクタの描画処理（ステップＳ３０）を継続する。
【０１１６】
（２）色替テクスチャの生成処理
次に、色替テクスチャＴＸ’（１）〜ＴＸ’（Ｎ）の生成処理（図５のステップＳ２０の処理）について、図６のフローチャートを用いて説明する。
【０１１７】
まず、図７に示すように、作業領域Ｗ、元テクスチャＴＸ（１）〜ＴＸ（Ｎ）のコピー領域ＣＸ（１）〜ＣＸ（Ｎ）、色替領域定義テクスチャＴＹ（１）〜ＴＹ（Ｎ）のコピー領域ＣＹ（１）〜ＣＹ（Ｎ）をＶＲＡＭ３０に確保する（ステップＳ１００）。
【０１１８】
次に、元テクスチャＴＸ（１）〜ＴＸ（Ｎ）をコピー領域ＣＸ（１）〜ＣＸ（Ｎ）にそれぞれコピーする（ステップＳ１１０）。
【０１１９】
次に、色替領域定義テクスチャＴＹ（１）〜ＴＹ（Ｎ）をコピー領域ＣＹ（１）〜ＣＹ（Ｎ）にそれぞれコピーする（ステップＳ１２０）。
【０１２０】
次に、ｎを１に設定し（ステップＳ１３０）、元テクスチャＴＸ（ｎ），色替領域定義テクスチャＴＹ（ｎ），色指定情報ＣＬ（ｎ），係数情報Ｋ（ｎ）を用いて作業領域Ｗに色替テクスチャＴＸ’（ｎ）を生成する（ステップＳ１４０）。具体的には、図２に示したテーブルデータ１０を参照し、プレーヤキャラクタのパーツオブジェクトＰＯ（ｎ）に関連付けられた元テクスチャＴＸ（ｎ）、色替領域定義テクスチャＴＹ（ｎ）、色指定情報ＣＬ（ｎ）、係数情報Ｋ（ｎ）を用いて、色替テクスチャＴＸ’（ｎ）を生成する。このステップＳ１４０の処理の詳細については後述する。
【０１２１】
次に、元テクスチャＴＸ（ｎ）と色替テクスチャＴＸ’（ｎ）のフォーマットをチェックし、両者のフォーマットが異なる場合は（ステップＳ１５０のＹ）、ステップＳ１４０で生成した色替テクスチャＴＸ’（ｎ）のフォーマットを元テクスチャＴＸ（ｎ）のフォーマットに変換し（ステップＳ１６０）、フォーマット変換後の色替テクスチャＴＸ’（ｎ）をコピー領域ＣＸ（ｎ）にコピーする（ステップＳ１７０）。例えば、元テクスチャＴＸ（ｎ）のフォーマットが、圧縮形式のＤＴＸ１、ＤＴＸ３、ＤＴＸ５等であり、色替テクスチャＴＸ’（ｎ）のフォーマットがＲＧＢＡ８８８８やＡＲＧＢ８８８８であれば、色替テクスチャＴＸ’（ｎ）を圧縮してＤＴＸ１、ＤＴＸ３、ＤＴＸ５等のフォーマットに変換してからコピー領域ＣＸ（ｎ）にコピーする。
【０１２２】
一方、両者のフォーマットが一致する場合は（ステップＳ１５０のＮ）、ステップＳ１４０で生成した色替テクスチャＴＸ’（ｎ）をそのままコピー領域ＣＸ（ｎ）にコピーする（ステップＳ１７０）。例えば、元テクスチャＴＸ（ｎ）のフォーマットと色替テクスチャＴＸ’（ｎ）のフォーマットがともにＲＧＢＡ８８８８やＡＲＧＢ８８８８であれば、色替テクスチャＴＸ’（ｎ）をそのままコピー領域ＣＸ（ｎ）にコピーすることができる。
【０１２３】
ステップＳ１４０〜Ｓ１７０の処理が終了すると、色替領域定義テクスチャＴＹ（ｎ）は不要になるので、コピー領域ＣＹ（ｎ）を解放する（ステップＳ１８０）。
【０１２４】
そして、ｎ＝Ｎになるまで（ステップＳ１９０でＹになるまで）、ｎを１だけ増やして（ステップＳ２００）ステップＳ１４０〜Ｓ１８０の処理を繰り返し行う。ｎ＝Ｎになると（ステップＳ１９０のＹ）、色替テクスチャＴＸ’（１）〜ＴＸ’（Ｎ）の生成処理が終了したので、作業領域Ｗを解放し（ステップＳ２１０）、処理を終了する。
【０１２５】
なお、プレーヤキャラクタの描画処理（図５のフローチャートにおけるステップＳ５０の処理）では、ＶＲＡＭ３０のコピー領域ＣＸ（１）〜ＣＸ（Ｎ）にコピーされた色替テクスチャＴＸ’（１）〜ＴＸ’（Ｎ）を用いてプレーヤキャラクタを含む１フレーム分の画像をＶＲＡＭ３０のフレームバッファに生成する。
【０１２６】
次に、各色替テクスチャＴＸ’（ｎ）の生成処理（図６のステップＳ１４０の処理）の詳細について、図８のフローチャートを用いて説明する。
【０１２７】
まず、ｊを１に設定し（ステップＳ３００）、元テクスチャＴＸ（ｎ）のテクセルｔＴＸ（ｊ）に対応する（座標が同じ）色替領域定義テクスチャＴＹ（ｎ）のテクセルｔＴＹ（ｊ）のＲ値を判定する（ステップＳ３１０）。本実施形態では、色替領域を示すテクセルｔＴＹ（ｊ）は白色（（ｒ，ｇ，ｂ）＝（２５５，２５５，２５５））に、非色替領域を示すテクセルｔＴＹ（ｊ）は黒色（（ｒ，ｇ，ｂ）＝（０，０，０））に設定されているので、テクセルｔＴＹ（ｊ）のＲ値が０でなければｔＴＸ（ｊ）は色替領域に含まれ、テクセルｔＴＹ（ｊ）のＲ値が０であればｔＴＸ（ｊ）は非色替領域に含まれる。
【０１２８】
色替領域定義テクスチャＴＹ（ｎ）のテクセルｔＴＹ（ｊ）のＲ値が０であれば（ステップＳ３２０のＹ）、元テクスチャＴＸ（ｎ）のテクセルｔＴＸ（ｊ）は非色替領域に含まれるので、テクセルｔＴＸ（ｊ）の色を色替テクスチャＴＸ’（ｎ）の対応する（座標が同じ）テクセルｔＴＸ’（ｊ）の色としてＶＲＡＭ３０の作業領域Ｗに書き込む（ステップＳ３３０）。すなわち、テクセルｔＴＸ’（ｊ）の色（ｒ’，ｇ’，ｂ’）は、テクセルｔＴＸ（ｊ）の色（ｒ，ｇ，ｂ）と等しい（ｒ’＝ｒ，ｇ’＝ｇ，ｂ’＝ｂ）。
【０１２９】
一方、色替領域定義テクスチャＴＹ（ｎ）のテクセルｔＴＹ（ｊ）のＲ値が０でなければ（ステップＳ３２０のＮ）、元テクスチャＴＸ（ｎ）のテクセルｔＴＸ（ｊ）は色替領域に含まれるので、係数情報Ｋ（ｎ）を用いて、テクセルｔＴＸ（ｊ）の色と色指定情報ＣＬ（ｎ）により指定される色を合成した色を計算し（ステップＳ３４０）、計算した色を色替テクスチャＴＸ’（ｎ）の対応する（座標が同じ）テクセルｔＴＸ’（ｊ）の色としてＶＲＡＭ３０の作業領域Ｗに書き込む（ステップＳ３５０）。例えば、テクセルｔＴＸ’（ｊ）の色（ｒ’，ｇ’，ｂ’）は、テクセルｔＴＸ（ｊ）の色（ｒ，ｇ，ｂ）、色指定情報ＣＬ（ｎ）＝（Ｒ，Ｇ，Ｂ）、係数情報Ｋ（ｎ）＝（α，β，γ）を用いて、ｒ’＝（１−α）・ｒ＋α・Ｒ，ｇ’＝（１−β）・ｇ＋β・Ｇ，ｂ’＝（１−γ）・ｂ＋γ・Ｂで計算される。
【０１３０】
そして、すべてのテクセルの処理が終了するまで（ステップＳ３６０でＹになるまで）、ｊを１だけ増やして（ステップＳ３７０）ステップＳ３１０〜Ｓ３５０の処理を繰り返し行う。すべてのテクセルの処理が終了すると（ステップＳ３６０のＹ）、作業領域Ｗに色替テクスチャＴＸ’（ｎ）が完成する。
【０１３１】
このように、本実施形態によれば、色替領域定義テクスチャＴＹで定義される元テクスチャＴＸの色替領域の色と色指定情報ＣＬで指定される色とを合成した色を、パーツオブジェクトの対応するピクセルの色とすることで、多様な色合いのキャラクタを描画することができる。
【０１３２】
また、本実施形態によれば、１枚の元テクスチャＴＸと１枚の色替領域定義テクスチャＴＹを用意すればよいので、必要なデータ容量を低減するとともに、テクスチャの作成作業や確認作業に要する工数を大幅に低減することができる。
【０１３３】
また、本実施形態によれば、一度色替テクスチャＴＸ’を作成すれば、色替テクスチャＴＸ’を用いてフレーム毎のプレーヤキャラクタの描画処理を行うことができる。従って、プレーヤキャラクタの色の計算処理を毎フレーム行う必要がないため、描画処理の負荷を軽減することができる。
【０１３４】
また、本実施形態によれば、色替テクスチャＴＸ’を元テクスチャＴＸと同じフォーマットでコピー領域ＣＸにコピーすることで、元テクスチャＴＸをそのままパーツオブジェクトにマッピングするような既存のプログラムを容易に利用することできる。さらに、一般に、元テクスチャＴＸがＤＴＸ１等の圧縮形式であることが多いので、色替テクスチャＴＸ’を圧縮形式に変換することで、プレーヤキャラクタの描画処理においてＶＲＡＭ３０に常駐させる色替テクスチャＴＸ’のデータ量を低減し、描画処理の負荷をより軽減することができる。
【０１３５】
４．ハードウェア構成
次に、図９を用いて本実施形態を実現できるハードウェア構成について説明する。なお、図９は、本実施形態を実現できるハードウェア構成を示す一例である。
【０１３６】
メインプロセッサ９００は、ＤＶＤ９８２（情報記憶媒体。ＣＤやＢＤ（ブルーレイディスク）でもよい。）に格納されたプログラム、通信インターフェース９９０を介してダウンロードされたプログラム、或いはＲＯＭ９５０に格納されたプログラムなどに基づき動作し、ゲーム処理、画像処理、音処理などを実行する。
【０１３７】
コプロセッサ９０２は、メインプロセッサ９００の処理を補助するものであり、マトリクス演算（ベクトル演算）を高速に実行する。例えば、オブジェクトを移動させたり動作（モーション）させる物理シミュレーションに、マトリクス演算処理が必要な場合には、メインプロセッサ９００上で動作するプログラムが、その処理をコプロセッサ９０２に指示（依頼）する。
【０１３８】
ジオメトリプロセッサ９０４は、メインプロセッサ９００上で動作するプログラムからの指示に基づいて、座標変換、透視変換、光源計算、曲面生成などのジオメトリ処理を行うものであり、マトリクス演算を高速に実行する。データ伸張プロセッサ９０６は、圧縮された画像データや音データのデコード処理を行ったり、メインプロセッサ９００のデコード処理をアクセレートする。これにより、オープニング画面やゲーム画面において、ＭＰＥＧ方式等で圧縮された動画像を表示できる。
【０１３９】
描画プロセッサ９１０は、ポリゴンや曲面などのプリミティブ面で構成されるオブジェクトの描画（レンダリング）処理を実行する。オブジェクトの描画の際には、メインプロセッサ９００は、ＤＭＡコントローラ９７０を利用して、描画データを描画プロセッサ９１０に渡すと共に、必要であればＶＲＡＭ９２０のテクスチャ記憶部９２４にテクスチャを転送する。すると描画プロセッサ９１０は、描画データやテクスチャに基づいて、Ｚバッファなどを利用した隠面消去を行いながら、オブジェクトをＶＲＡＭ９２０のフレームバッファ９２２に描画する。
【０１４０】
また、この描画プロセッサ９１０は、αブレンディング（半透明処理）、デプスキューイング、ミップマッピング、フォグ処理、バイリニア・フィルタリング、トライリニア・フィルタリング、アンチエリアシング、シェーディング処理なども行う。１フレーム分の画像がフレームバッファ９２２に書き込まれるとその画像はディスプレイ９１２に表示される。
【０１４１】
特に、本実施形態では、描画プロセッサ９１０は、テクスチャ記憶部９２４（コピー領域）に元テクスチャを転送し、元テクスチャの色替領域の色を変更した色替テクスチャをＶＲＡＭ９２０の作業領域に生成する。そして、描画プロセッサ９１０は、色替テクスチャをテクスチャ記憶部９２４（コピー領域）にコピーし、この色替テクスチャに基づいてオブジェクトをフレームバッファ９２２に描画する。
【０１４２】
なお、上記各プロセッサの各機能は、ハードウェアとして別々のプロセッサにより実現してもよいし、１つのプロセッサにより実現してもよい。また、プロセッサとしてＣＰＵとＧＰＵを設けた場合でも、いずれのプロセッサによりいかなる機能を実現するかは、任意に設定することができる。
【０１４３】
サウンドプロセッサ９３０は、多チャンネルのＡＤＰＣＭ音源などを内蔵し、ＢＧＭ、効果音、音声などのゲーム音を生成し、スピーカ９３２を介して出力する。ゲームコントローラ９４２やメモリカード９４４からのデータはシリアルインターフェース９４０を介して入力される。
【０１４４】
ＲＯＭ９５０には、システムプログラムなどが格納される。業務用ゲームシステムの場合にはＲＯＭ９５０が情報記憶媒体として機能し、ＲＯＭ９５０に各種プログラムが格納される。なおＲＯＭ９５０の代わりにハードディスクを利用してもよい。
【０１４５】
ＲＡＭ９６０は、各種プロセッサの作業領域となる。ＤＭＡコントローラ９７０は、プロセッサ、メモリ間でのＤＭＡ転送を制御する。ＤＶＤドライブ９８０は、プログラム、画像データ、或いは音データなどが格納されるＤＶＤ９８２にアクセスする。通信インターフェース９９０はネットワーク（通信回線、高速シリアルバス）を介して外部との間でデータ転送を行う。
【０１４６】
なお、本実施形態の各部（各手段）の処理は、その全てをハードウェアのみにより実現してもよいし、情報記憶媒体に格納されるプログラムや通信インターフェースを介して配信されるプログラムにより実現してもよい。或いは、ハードウェアとプログラムの両方により実現してもよい。
【０１４７】
そして、本実施形態の各部の処理をハードウェアとプログラムの両方により実現する場合には、情報記憶媒体には、ハードウェア（コンピュータ）を本実施形態の各部として機能させるためのプログラムが格納される。より具体的には、上記プログラムが、ハードウェアである各プロセッサ９０２、９０４、９０６、９１０、９３０に処理を指示すると共に、必要であればデータを渡す。そして、各プロセッサ９０２、９０４、９０６、９１０、９３０は、その指示と渡されたデータとに基づいて本発明の各部の処理を実現する。
【０１４８】
５．変形例
（１）変形例１
前述した本実施形態の手法ではＶＲＡＭ３０に色替テクスチャ１枚分のサイズの作業領域を確保する必要があるが、十分な作業領域を確保できない場合もある。そこで、変形例１の手法では、元テクスチャＴＸをＭ個のテクスチャＴＸ１〜ＴＸＭに分割するとともに、色替領域定義テクスチャＴＹを、テクスチャＴＸ１〜ＴＸＭとそれぞれ同じサイズのＭ個の色替領域定義テクスチャＴＹ１〜ＴＹＭに分割し、分割したテクスチャＴＸ１〜ＴＸＭに対して順に色の変更処理を行う。
【０１４９】
図１０及び図１１は、変形例１における、パーツオブジェクトＰＯに対応づけられる色替テクスチャＴＸ’の生成手法について説明するための図である。図１０及び図１１では、元テクスチャＴＸは４個のテクスチャＴＸ１〜ＴＸ４に分割され、テクスチャＴＸ１〜ＴＸ４のそれぞれに対応づけて色替領域定義テクスチャＴＹが４個の色替領域定義テクスチャＴＹ１〜ＴＹ４に分割されている。テクスチャＴＹ１〜ＴＹ４は、それぞれテクスチャＴＸ１〜ＴＸ４と同じサイズであり、これにより、それぞれテクスチャＴＸ１〜ＴＸ４における色替領域を定義するようになっている。
【０１５０】
まず、図１０に示すように、テクスチャＴＸ１、テクスチャＴＹ１、色指定情報ＣＬ、係数情報Ｋがシェーダ２０に入力され、シェーダ２０は、これらの情報を元に各テクセルの色を計算し、ＶＲＡＭ３０の作業領域ＷにテクスチャＴＸ１’を生成する。色替テクスチャＴＸ１’の各テクセルの色（ｒ’，ｇ’，ｂ’）は、テクスチャＴＸ１の同じ座標にあるテクセルの色（ｒ，ｇ，ｂ）に対して、当該テクセルが花の模様の領域（非色替領域）に含まれる場合はｒ’＝ｒ，ｇ’＝ｇ，ｂ’＝ｂであり、当該テクセルが花の模様以外の領域（色替領域）に含まれる場合は、例えばｒ’＝（１−α）・ｒ＋α・Ｒ，ｇ’＝（１−β）・ｇ＋β・Ｇ，ｂ’＝（１−γ）・ｂ＋γ・Ｂで計算される。
【０１５１】
図１０の破線で示すように、シェーダ２０により生成されたテクスチャＴＸ１’は、必要に応じてフォーマット変換されてコピー領域ＣＸにおけるテクスチャＴＸ１の記憶領域にコピー（上書き）される。
【０１５２】
次に、図１１に示すように、テクスチャＴＸ２、テクスチャＴＹ２、色指定情報ＣＬ、係数情報Ｋがシェーダ２０に入力され、シェーダ２０は、これらの情報を元に各テクセルの色を計算し、ＶＲＡＭ３０の作業領域ＷにテクスチャＴＸ２’を生成する。
【０１５３】
図１１の破線で示すように、シェーダ２０により生成されたテクスチャＴＸ２’は、必要に応じてフォーマット変換されてコピー領域ＣＸにおけるテクスチャＴＸ２の記憶領域にコピー（上書き）される。
【０１５４】
テクスチャＴＸ３’とＴＸ４’も同様の処理により順に作業領域Ｗに生成され、それぞれ、コピー領域ＣＸにおけるテクスチャＴＸ３の記憶領域及びテクスチャＴＸ４の記憶領域にコピー（上書き）される。
【０１５５】
この一連の処理が終了すると、ＶＲＡＭ３０のコピー領域ＣＸには１枚分の色替テクスチャＴＸ’が完成している。そして、シェーダ２０により、キャラクタのポリゴンデータをラスタライズした後、ＶＲＡＭ３０のコピー領域ＣＸにある色替テクスチャＴＸ’をパーツオブジェクトＰＯにマッピングしてキャラクタを描画する。
【０１５６】
なお、キャラクターにＮ個のパーツオブジェクトが関連付けられている場合には、Ｎ個のパーツオブジェクトＰＯ（１）〜ＰＯ（Ｎ）について上記と同様の処理を行い、Ｎ個の色替テクスチャＴＸ’（１）〜ＴＸ’（Ｎ）を生成する。そして、Ｎ個のパーツオブジェクトＰＯ（１）〜ＰＯ（Ｎ）に対して、それぞれ色替テクスチャＴＸ’（１）〜ＴＸ’（Ｎ）をマッピングしてキャラクタを描画する。
【０１５７】
次に、変形例１における、色替テクスチャＴＸ’（１）〜ＴＸ’（Ｎ）の生成処理（図５のステップＳ２０の処理）について、図１２のフローチャートを用いて説明する。図１２において、図６のフローチャートと同じステップには同じ符号を付しており、その説明を省略又は簡略する。
【０１５８】
まず、図１３に示すように、作業領域Ｗ、元テクスチャＴＸ（１）〜ＴＸ（Ｎ）のコピー領域ＣＸ（１）〜ＣＸ（Ｎ）、色替領域定義テクスチャＴＹ（１）〜ＴＹ（Ｎ）のコピー領域ＣＹ（１）〜ＣＹ（Ｎ）をＶＲＡＭ３０に確保する（ステップＳ１００）。
【０１５９】
次に、元テクスチャＴＸ（１）〜ＴＸ（Ｎ）をコピー領域ＣＸ（１）〜ＣＸ（Ｎ）にそれぞれコピーし（ステップＳ１１０）、色替領域定義テクスチャＴＹ（１）〜ＴＹ（Ｎ）をコピー領域ＣＹ（１）〜ＣＹ（Ｎ）にそれぞれコピーする（ステップＳ１２０）。
【０１６０】
次に、ｎを１に設定し（ステップＳ１３０）、元テクスチャＴＸ（ｎ）をＭｎ個のテクスチャＴＸ（ｎ）１〜ＴＸ（ｎ）Ｍｎに分割する（ステップＳ１３２）。このテクスチャＴＸ（ｎ）１〜ＴＸ（ｎ）Ｍｎは、図１３に示すコピー領域ＣＸ（ｎ）をＭｎ個に分割した記憶領域ＣＸ（ｎ）１〜ＣＸ（ｎ）Ｍｎにあるテクスチャに対応する。
【０１６１】
次に、色替領域定義テクスチャＴＹ（ｎ）をＭｎ個のテクスチャＴＹ（ｎ）１〜ＴＹ（ｎ）Ｍｎに分割する（ステップＳ１３４）。このテクスチャＴＹ（ｎ）１〜ＴＹ（ｎ）Ｍｎは、図１３に示すコピー領域ＣＹ（ｎ）をＭｎ個に分割した記憶領域ＣＹ（ｎ）１〜ＣＹ（ｎ）Ｍｎにあるテクスチャに対応する。
【０１６２】
次に、ｍを１に設定し（ステップＳ１３６）、テクスチャＴＸ（ｎ）ｍ，テクスチャＴＹ（ｎ）ｍ，色指定情報ＣＬ（ｎ），係数情報Ｋ（ｎ）を用いて作業領域ＷにテクスチャＴＸ’（ｎ）ｍを生成する（ステップＳ１４２）。このステップＳ１４２の処理は図８のフローチャートで示した処理と同様であるため、その説明を省略する。
【０１６３】
次に、テクスチャＴＸ（ｎ）ｍとテクスチャＴＸ’（ｎ）ｍのフォーマットをチェックし、両者のフォーマットが異なる場合は（ステップＳ１５２のＹ）、ステップＳ１４２で生成したテクスチャＴＸ’（ｎ）ｍのフォーマットをテクスチャＴＸ（ｎ）ｍのフォーマットに変換し（ステップＳ１６２）、フォーマット変換後のテクスチャＴＸ’（ｎ）ｍをコピー領域ＣＸ（ｎ）ｍにコピーする（ステップＳ１７２）。
【０１６４】
一方、両者のフォーマットが一致する場合は（ステップＳ１５２のＮ）、ステップＳ１４２で生成したテクスチャＴＸ’（ｎ）ｍをそのままコピー領域ＣＸ（ｎ）ｍにコピーする（ステップＳ１７２）。
【０１６５】
そして、ｍ＝Ｍｎになるまで（ステップＳ１７４でＹになるまで）、ｍを１だけ増やして（ステップＳ１７６）ステップＳ１４２〜Ｓ１７２の処理を繰り返し行う。ｍ＝Ｍｎになると（ステップＳ１７４のＹ）、コピー領域ＣＸ（ｎ）に色替テクスチャＴＸ’（ｎ）が完成し、色替領域定義テクスチャＴＹ（ｎ）は不要になるのでコピー領域ＣＹ（ｎ）を解放する（ステップＳ１８０）。
【０１６６】
そして、ｎ＝Ｎになるまで（ステップＳ１９０でＹになるまで）、ｎを１だけ増やして（ステップＳ２００）ステップＳ１３２〜Ｓ１８０の処理を繰り返し行う。ｎ＝Ｎになると（ステップＳ１９０のＹ）、色替テクスチャＴＸ’（１）〜ＴＸ’（Ｎ）の生成処理が終了したので、作業領域Ｗを解放し（ステップＳ２１０）、処理を終了する。
【０１６７】
なお、変形例１におけるその他の処理については上述した本実施形態の処理と同様であるため、その図示及び説明を省略する。
【０１６８】
このように、変形例１によれば、ＶＲＡＭ３０に色替テクスチャＴＸ’の１枚分のサイズの作業領域Ｗを確保できない場合でも、元テクスチャＴＸのコピー領域ＣＸに１枚分の色替テクスチャＴＸ’を生成することができる。
【０１６９】
（２）変形例２
前述した本実施形態の手法では、色替領域定義テクスチャＴＹにおいてＲチャネルを用いて元テクスチャＴＸの色替領域と非色替領域とを区別していた。これに対して、変形例２では、色替領域定義テクスチャＴＹにおいて、Ｒチャネルを用いて元テクスチャＴＸの第１の色替領域と第１の色替領域以外の領域（以下、第１の非色替領域という）とを区別するとともに、Ｇチャネルを用いて元テクスチャのＴＸの第２の色替領域と第２の色替領域以外の領域（以下、第２の非色替領域という）とを区別する。そして、元テクスチャのＴＸの第１の色替領域の色を第１の色指定情報ＣＬ１に基づいて変更し、元テクスチャのＴＸの第２の色替領域の色を第２の色指定情報ＣＬ２に基づいて変更する。
【０１７０】
図１４に、変形例２における、プレーヤキャラクタに関連付けられるテーブルデータの一例を示す。図１４に示すように、変形例２のテーブルデータ１２では、キャラクタＡに関連付けられる各パーツオブジェクトＰＯＡ（ｎ）（ｎ＝１〜ＮＡ）に、元テクスチャＴＸＡ（ｎ）、色替領域定義テクスチャＴＹＡ（ｎ）、第１の色指定情報ＣＬ１Ａ（ｎ）、第１の係数情報Ｋ１Ａ（ｎ）、第２の色指定情報ＣＬ２Ａ（ｎ）、第２の係数情報Ｋ２Ａ（ｎ）が対応づけられている。
【０１７１】
元テクスチャＴＸＡ（ｎ）については、上述した本実施形態と同様であるため、その説明を省略する。
【０１７２】
色替領域定義テクスチャＴＹＡ（ｎ）は、テクセル毎に色（Ｒ，Ｇ，Ｂ）が定義され、第１の色替領域を示すテクセルのＲ値には０以外の値（例えば２５５）が設定され、第１の非色替領域を示すテクセルのＲ値には０が設定されている。また、第２の色替領域を示すテクセルのＧ値には０以外の値（例えば２５５）が設定され、第２の非色替領域を示すテクセルのＧ値には０が設定されている。
【０１７３】
第１の色指定情報ＣＬ１Ａ（ｎ）は、元テクスチャＴＸＡ（ｎ）の第１の色替領域に含まれる各テクセルの色情報と合成される色情報を指定する情報であり、第１の係数情報Ｋ１Ａ（ｎ）はその合成比を決定する係数の情報である。
【０１７４】
第２の色指定情報ＣＬ２Ａ（ｎ）は、元テクスチャＴＸＡ（ｎ）の第２の色替領域に含まれる各テクセルの色情報と合成される色情報を指定する情報であり、第２の係数情報Ｋ２Ａ（ｎ）はその合成比を決定する係数の情報である。
【０１７５】
他のキャラクタについても同様のテーブルデータが定義されており、例えばキャラクタＢに関連付けられる各パーツオブジェクトＰＯＢ（ｎ）（ｎ＝１〜ＮＢ）には、元テクスチャＴＸＢ（ｎ）、色替領域定義テクスチャＴＹＢ（ｎ）、第１の色指定情報ＣＬ１Ｂ（ｎ）、第１の係数情報Ｋ１Ｂ（ｎ）、第２の色指定情報ＣＬ２Ｂ（ｎ）、第２の係数情報Ｋ２Ｂ（ｎ）が対応づけられている。
【０１７６】
図１５は、変形例２における、パーツオブジェクトＰＯに対応づけられる色替テクスチャＴＸ’の生成手法について説明するための図である。
【０１７７】
図１５に示すように、元テクスチャＴＸ、色替領域定義テクスチャＴＹ、第１の色指定情報ＣＬ１＝（Ｒ１，Ｇ１，Ｂ１）、第２の色指定情報ＣＬ２＝（Ｒ１，Ｇ１，Ｂ１）、第１の係数情報Ｋ１＝（α１，β１，γ１）、第２の係数情報Ｋ２＝（α２，β２，γ２）がシェーダ２０に入力され、シェーダ２０は、これらの情報を元に各テクセルの色を計算し、ＶＲＡＭ３０の作業領域Ｗに色替テクスチャＴＸ１’を生成する。
【０１７８】
図１５では、色替領域定義テクスチャＴＹにおいて、元テクスチャＴＸの花の模様以外の領域が第１の色替領域かつ第２の非色替領域、花の模様の領域が第２の色替領域かつ第１の非色替領域として定義されている。具体的には、色替領域定義テクスチャＴＹでは、例えば、元テクスチャＴＸの花の模様の領域は緑色（（ｒ，ｇ，ｂ）＝（０，２５５，０））、花の模様以外の領域は赤色（（ｒ，ｇ，ｂ）＝（２５５，０，０））に設定されている。従って、色替領域定義テクスチャＴＹの各テクセルのＲ値をチェックすることで、当該各テクセルと同じ座標にある元テクスチャＴＸのテクセルが第１の色替領域と第１の非色替領域のいずれに含まれるかが判定できるとともに、色替領域定義テクスチャＴＹの各テクセルのＧ値をチェックすることで、当該各テクセルと同じ座標にある元テクスチャＴＸのテクセルが第２の色替領域と第２の非色替領域のいずれに含まれるかが判定できるようになっている。
【０１７９】
そして、色替テクスチャＴＸ’では、花の模様以外の領域（元テクスチャＴＸの第１の色替領域かつ第２の非色替領域）については元テクスチャＴＸの色と第１の色指定情報ＣＬ１により指定される色を合成した色になり、花の模様の領域（第２の色替領域かつ第１の非色替領域）については元テクスチャＴＸの色と第２の色指定情報ＣＬ２により指定される色を合成した色になっている。より詳細には、色替テクスチャＴＸ’の各テクセルの色（ｒ’，ｇ’，ｂ’）は、元テクスチャＴＸの同じ座標にあるテクセルの色（ｒ，ｇ，ｂ）に対して、当該テクセルが花の模様以外の領域（第１の色替領域かつ第２の非色替領域）に含まれる場合は、例えばｒ’＝（１−α１）・ｒ＋α１・Ｒ１，ｇ’＝（１−β１）・ｇ＋β１・Ｇ１，ｂ’＝（１−γ１）・ｂ＋γ１・Ｂ１で計算され、当該テクセルが花の模様の領域（第２の色替領域かつ第１の非色替領域）に含まれる場合は、例えばｒ’＝（１−α２）・ｒ＋α２・Ｒ２，ｇ’＝（１−β２）・ｇ＋β２・Ｇ２，ｂ’＝（１−γ２）・ｂ＋γ２・Ｂ２で計算される。
【０１８０】
図１５の破線で示すように、シェーダ２０により生成された色替テクスチャＴＸ’は、必要に応じてフォーマット変換されてコピー領域ＣＸにコピー（上書き）される。
【０１８１】
なお、キャラクターにＮ個のパーツオブジェクトが関連付けられている場合には、Ｎ個のパーツオブジェクトＰＯ（１）〜ＰＯ（Ｎ）について上記と同様の処理を行い、Ｎ個の色替テクスチャＴＸ’（１）〜ＴＸ’（Ｎ）を生成する。この色替テクスチャＴＸ’（１）〜ＴＸ’（Ｎ）の生成処理の全体フローチャートは、図６のフローチャートと同様であるので、その図示及び説明を省略する。
【０１８２】
次に、変形例２における、各色替テクスチャＴＸ’（ｎ）の生成処理（図６のステップＳ１４０の処理）の詳細について、図１６のフローチャートを用いて説明する。図１６において、図８のフローチャートと同じステップには同じ符号を付しており、その説明を省略又は簡略する。
【０１８３】
まず、ｊを１に設定し（ステップＳ３００）、元テクスチャＴＸ（ｎ）のテクセルｔＴＸ（ｊ）に対応する（座標が同じ）色替領域定義テクスチャＴＹ（ｎ）のテクセルｔＴＹ（ｊ）のＲ値とＧ値を判定する（ステップＳ３１２）。変形例２では、テクセルｔＴＹ（ｊ）のＲ値が０でなければｔＴＸ（ｊ）は第１の色替領域に含まれ、テクセルｔＴＹ（ｊ）のＲ値が０であればｔＴＸ（ｊ）は第１の非色替領域に含まれる。また、テクセルｔＴＹ（ｊ）のＧ値が０でなければｔＴＸ（ｊ）は第２の色替領域に含まれ、テクセルｔＴＹ（ｊ）のＧ値が０であればｔＴＸ（ｊ）は第２の非色替領域に含まれる。
【０１８４】
色替領域定義テクスチャＴＹ（ｎ）のテクセルｔＴＹ（ｊ）のＲ値≠０かつＧ値≠０であれば（ステップＳ３２２のＹ）、元テクスチャＴＸ（ｎ）のテクセルｔＴＸ（ｊ）は第１の色替領域かつ第２の色替領域に含まれるので、第１の係数情報Ｋ１（ｎ）と第２の係数情報Ｋ２（ｎ）を用いて、テクセルｔＴＸ（ｊ）の色と第１の色指定情報ＣＬ１（ｎ）により指定される色と第２の色指定情報ＣＬ２（ｎ）により指定される色を合成した色を計算し（ステップＳ３４２）、計算した色を色替テクスチャＴＸ’（ｎ）の対応する（座標が同じ）テクセルｔＴＸ’（ｊ）の色としてＶＲＡＭ３０の作業領域Ｗに書き込む（ステップＳ３５０）。例えば、テクセルｔＴＸ’（ｊ）の色（ｒ’，ｇ’，ｂ’）は、テクセルｔＴＸ（ｊ）の色（ｒ，ｇ，ｂ）、第１の色指定情報ＣＬ１（ｎ）＝（Ｒ１，Ｇ１，Ｂ１）、第２の色指定情報ＣＬ２（ｎ）＝（Ｒ２，Ｇ２，Ｂ２）、第１の係数情報Ｋ１（ｎ）＝（α１，β１，γ１）、第２の係数情報Ｋ２（ｎ）＝（α２，β２，γ２）を用いて、ｒ’＝（１−α１／２−α２／２）・ｒ＋α１／２・Ｒ１＋α２／２・Ｒ２，ｇ’＝（１−β１／２−β２／２）・ｇ＋β１／２・Ｇ１＋β２／２・Ｇ２，ｂ’＝（１−γ１／２−γ２／２）・ｂ＋γ１／２・Ｂ１＋γ２／２・Ｂ２で計算される。
【０１８５】
また、色替領域定義テクスチャＴＹ（ｎ）のテクセルｔＴＹ（ｊ）のＲ値≠０かつＧ値＝０であれば（ステップＳ３２４のＹ）、元テクスチャＴＸ（ｎ）のテクセルｔＴＸ（ｊ）は第１の色替領域かつ第２の非色替領域に含まれるので、第１の係数情報Ｋ１（ｎ）を用いて、テクセルｔＴＸ（ｊ）の色と第１の色指定情報ＣＬ１（ｎ）により指定される色を合成した色を計算し（ステップＳ３４４）、計算した色を色替テクスチャＴＸ’（ｎ）の対応する（座標が同じ）テクセルｔＴＸ’（ｊ）の色としてＶＲＡＭ３０の作業領域Ｗに書き込む（ステップＳ３５０）。例えば、テクセルｔＴＸ’（ｊ）の色は、ｒ’＝（１−α１）・ｒ＋α１・Ｒ１，ｇ’＝（１−β１）・ｇ＋β１・Ｇ１，ｂ’＝（１−γ１）・ｂ＋γ１・Ｂ１で計算される。
【０１８６】
また、色替領域定義テクスチャＴＹ（ｎ）のテクセルｔＴＹ（ｊ）のＲ値＝０かつＧ値≠０であれば（ステップＳ３２６のＹ）、元テクスチャＴＸ（ｎ）のテクセルｔＴＸ（ｊ）は第１の非色替領域かつ第２の色替領域に含まれるので、第２の係数情報Ｋ２（ｎ）を用いて、テクセルｔＴＸ（ｊ）の色と第２の色指定情報ＣＬ２（ｎ）により指定される色を合成した色を計算し（ステップＳ３４６）、計算した色を色替テクスチャＴＸ’（ｎ）の対応する（座標が同じ）テクセルｔＴＸ’（ｊ）の色としてＶＲＡＭ３０の作業領域Ｗに書き込む（ステップＳ３５０）。例えば、テクセルｔＴＸ’（ｊ）の色は、ｒ’＝（１−α２）・ｒ＋α２・Ｒ２，ｇ’＝（１−β２）・ｇ＋β２・Ｇ２，ｂ’＝（１−γ２）・ｂ＋γ２・Ｂ２で計算される。
【０１８７】
また、色替領域定義テクスチャＴＹ（ｎ）のテクセルｔＴＹ（ｊ）のＲ値＝０かつＧ値＝０であれば（ステップＳ３２６のＮ）、元テクスチャＴＸ（ｎ）のテクセルｔＴＸ（ｊ）は第１の非色替領域かつ第２の非色替領域に含まれるので、テクセルｔＴＸ（ｊ）の色を色替テクスチャＴＸ’（ｎ）の対応する（座標が同じ）テクセルｔＴＸ’（ｊ）の色としてＶＲＡＭ３０の作業領域Ｗに書き込む（ステップＳ３３０）。すなわち、テクセルｔＴＸ’（ｊ）の色はテクセルｔＴＸ（ｊ）の色と等しい（ｒ’＝ｒ，ｇ’＝ｇ，ｂ’＝ｂ）。
【０１８８】
そして、すべてのテクセルの処理が終了するまで（ステップＳ３６０でＹになるまで）、ｊを１だけ増やして（ステップＳ３７０）ステップＳ３１２〜Ｓ３５０の処理を繰り返し行う。すべてのテクセルの処理が終了すると（ステップＳ３６０のＹ）、作業領域Ｗに色替テクスチャＴＸ’（ｎ）が完成する。
【０１８９】
なお、変形例２におけるその他の処理については上述した本実施形態の処理と同様であるため、その図示及び説明を省略する。
【０１９０】
このように、変形例２によれば、１枚の色替領域定義テクスチャＴＹにおいて、ＲチャネルとＧチャネルを用いて２つの色替領域を独立して定義し、第１の色替領域の色を第１の色指定情報ＣＬ１で指定される色に基づいて変更するとともに第２の色替領域の色を第２の色指定情報ＣＬ２で指定される色に基づいて変更することで、より複雑な色替えを実現することができる。
【０１９１】
（３）変形例３
変形例３では、色替領域定義テクスチャＴＹにおける色替領域の設定に関係なく、元テクスチャＴＸにおける色をそのまま反映する領域（不変領域）を定義するためのテクスチャ（以下、不変領域定義テクスチャという）を追加する。
【０１９２】
図１７に、変形例３における、プレーヤキャラクタに関連付けられるテーブルデータの一例を示す。図１７に示すように、変形例３におけるテーブルデータ１４では、キャラクタＡに関連付けられる各パーツオブジェクトＰＯＡ（ｎ）（ｎ＝１〜ＮＡ）に、元テクスチャＴＸＡ（ｎ）、色替領域定義テクスチャＴＹＡ（ｎ）、不変領域定義テクスチャＴＺＡ（ｎ）、色指定情報ＣＬＡ（ｎ）、係数情報ＫＡ（ｎ）が対応づけられている。
【０１９３】
元テクスチャＴＸＡ（ｎ）、色替領域定義テクスチャＴＹＡ（ｎ）、色指定情報ＣＬＡ（ｎ）、係数情報ＫＡ（ｎ）については、上述した本実施形態と同様であるため、その説明を省略する。
【０１９４】
不変領域定義テクスチャＴＺＡ（ｎ）は、元テクスチャＴＸＡ（ｎ）と同じサイズのテクスチャであり、元テクスチャＴＸＡ（ｎ）における不変領域を定義する。不変領域定義テクスチャＴＺＡ（ｎ）は、テクセル毎に色情報（ＲＧＢ値）（α値を含んでもよい）が定義され、不変領域を示すテクセルのＲ値には０以外の値（例えば２５５）が設定され、不変領域以外の領域を示すテクセルのＲ値には０が設定されている。すなわち、不変領域定義テクスチャＴＺＡ（ｎ）のテクセルのＲ値が０以外の値であれば、そのテクセルの座標と同じ座標にある元テクスチャＴＸＡ（ｎ）のテクセルは不変領域に含まれ、不変領域定義テクスチャＴＺＡ（ｎ）のテクセルのＲ値が０であれば、そのテクセルの座標と同じ座標にある元テクスチャＴＸＡ（ｎ）のテクセルは不変領域に含まれない。
【０１９５】
他のキャラクタについても同様のテーブルデータが定義されており、例えばキャラクタＢに関連付けられる各パーツオブジェクトＰＯＢ（ｎ）（ｎ＝１〜ＮＢ）には、元テクスチャＴＸＢ（ｎ）、色替領域定義テクスチャＴＹＢ（ｎ）、不変領域定義テクスチャＴＺＢ（ｎ）、色指定情報ＣＬＢ（ｎ）、係数情報ＫＢ（ｎ）が対応づけられている。
【０１９６】
図１８は、変形例３における、パーツオブジェクトＰＯに対応づけられる色替テクスチャＴＸ’の生成手法について説明するための図である。
【０１９７】
図１８に示すように、元テクスチャＴＸ、色替領域定義テクスチャＴＹ、色指定情報ＣＬ、不変領域定義テクスチャＴＺ、係数情報Ｋがシェーダ２０に入力され、シェーダ２０は、これらの情報を元に各テクセルの色を計算し、ＶＲＡＭ３０の作業領域Ｗに色替テクスチャＴＸ’を生成する。
【０１９８】
図１８では、色替領域定義テクスチャＴＹにおいて、元テクスチャＴＸの花の模様以外の領域が色替領域、花の模様の領域が非色替領域として定義されている。
【０１９９】
また、不変領域定義テクスチャＴＺにおいて、元テクスチャＴＸの鳥の模様の領域が不変領域として定義されている。具体的には、不変領域定義テクスチャＴＺでは、例えば、元テクスチャＴＸの鳥の模様の領域は白色（（ｒ，ｇ，ｂ）＝（２５５，２５５，２５５））に、鳥の模様以外の領域は黒色（（ｒ，ｇ，ｂ）＝（０，０，０））に設定されている。従って、不変領域定義テクスチャＴＺの各テクセルのＲ値、Ｇ値、Ｂ値のいずれかをチェックすることで、当該各テクセルと同じ座標にある元テクスチャＴＸのテクセルが不変領域に含まれるか否かが判定できるようになっている。
【０２００】
そして、色替テクスチャＴＸ’では、鳥の模様の領域（元テクスチャＴＸの不変領域）については元テクスチャＴＸと同じ色であり、鳥の模様以外の領域については、花の模様領域（非色替領域）か否かによって、元テクスチャＴＸと同じ色、又は元テクスチャＴＸの色と色指定情報ＣＬで指定される色を合成した色になっている。より詳細には、色替テクスチャＴＸ’の各テクセルの色（ｒ’，ｇ’，ｂ’）は、元テクスチャＴＸの同じ座標にあるテクセルの色（ｒ，ｇ，ｂ）に対して、当該テクセルが鳥の模様の領域（不変領域）に含まれる場合はｒ’＝ｒ，ｇ’＝ｇ，ｂ’＝ｂであり、当該テクセルが鳥の模様の領域（不変領域）に含まれない場合は、花の模様の領域（非色替領域）に含まれるならｒ’＝ｒ，ｇ’＝ｇ，ｂ’＝ｂであり、花の模様以外の領域（色替領域）に含まれるなら例えばｒ’＝（１−α）・ｒ＋α・Ｒ，ｇ’＝（１−β）・ｇ＋β・Ｇ，ｂ’＝（１−γ）・ｂ＋γ・Ｂで計算される。
【０２０１】
図１８の破線で示すように、シェーダ２０により生成された色替テクスチャＴＸ’は、必要に応じてフォーマット変換されてコピー領域ＣＸにコピー（上書き）される。
【０２０２】
なお、キャラクターにＮ個のパーツオブジェクトが関連付けられている場合には、Ｎ個のパーツオブジェクトＰＯ（１）〜ＰＯ（Ｎ）について上記と同様の処理を行い、Ｎ個の色替テクスチャＴＸ’（１）〜ＴＸ’（Ｎ）を生成する。
【０２０３】
次に、変形例３における、色替テクスチャＴＸ’（１）〜ＴＸ’（Ｎ）の生成処理（図５のステップＳ２０の処理）について、図１９のフローチャートを用いて説明する。図１９において、図６のフローチャートと同じステップには同じ符号を付しており、その説明を省略又は簡略する。
【０２０４】
まず、図２０に示すように、作業領域Ｗ、元テクスチャＴＸ（１）〜ＴＸ（Ｎ）のコピー領域ＣＸ（１）〜ＣＸ（Ｎ）、色替領域定義テクスチャＴＹ（１）〜ＴＹ（Ｎ）のコピー領域ＣＹ（１）〜ＣＹ（Ｎ）、不変領域定義テクスチャＴＺ（１）〜ＴＺ（Ｎ）のコピー領域ＣＺ（１）〜ＣＺ（Ｎ）をＶＲＡＭ３０に確保する（ステップＳ１０２）。
【０２０５】
次に、元テクスチャＴＸ（１）〜ＴＸ（Ｎ）をコピー領域ＣＸ（１）〜ＣＸ（Ｎ）にそれぞれコピーし（ステップＳ１１０）、色替領域定義テクスチャＴＹ（１）〜ＴＹ（Ｎ）をコピー領域ＣＹ（１）〜ＣＹ（Ｎ）にそれぞれコピーする（ステップＳ１２０）。
【０２０６】
さらに、不変領域定義テクスチャＴＺ（１）〜ＴＺ（Ｎ）をコピー領域ＣＺ（１）〜ＣＺ（Ｎ）にそれぞれコピーする（ステップＳ１２２）。
【０２０７】
次に、ｎを１に設定し（ステップＳ１３０）、元テクスチャＴＸ（ｎ），色替領域定義テクスチャＴＹ（ｎ），不変領域定義テクスチャＴＺ（ｎ），色指定情報ＣＬ（ｎ），係数情報Ｋ（ｎ）を用いて作業領域Ｗに色替テクスチャＴＸ’（ｎ）を生成する（ステップＳ１４４）。このステップＳ１４４の処理の詳細については後述する。
【０２０８】
次に、元テクスチャＴＸ（ｎ）と色替テクスチャＴＸ’（ｎ）のフォーマットをチェックし、両者のフォーマットが異なる場合は（ステップＳ１５０のＹ）、ステップＳ１４４で生成した色替テクスチャＴＸ’（ｎ）のフォーマットを元テクスチャＴＸ（ｎ）のフォーマットに変換し（ステップＳ１６０）、フォーマット変換後の色替テクスチャＴＸ’（ｎ）をコピー領域ＣＸ（ｎ）にコピーする（ステップＳ１７０）。
【０２０９】
一方、両者のフォーマットが一致する場合は（ステップＳ１５０のＮ）、ステップＳ１４４で生成した色替テクスチャＴＸ’（ｎ）をそのままコピー領域ＣＸ（ｎ）にコピーする（ステップＳ１７０）。
【０２１０】
ステップＳ１４４〜Ｓ１７０の処理が終了すると、色替領域定義テクスチャＴＹ（ｎ）と不変領域定義テクスチャＴＺ（ｎ）は不要になるので、コピー領域ＣＹ（ｎ）とコピー領域ＣＺ（ｎ）を解放する（ステップＳ１８２）。
【０２１１】
そして、ｎ＝Ｎになるまで（ステップＳ１９０でＹになるまで）、ｎを１だけ増やして（ステップＳ２００）ステップＳ１４４〜Ｓ１８２の処理を繰り返し行う。ｎ＝Ｎになると（ステップＳ１９０のＹ）、色替テクスチャＴＸ’（１）〜ＴＸ’（Ｎ）の生成処理が終了したので、作業領域Ｗを解放し（ステップＳ２１０）、処理を終了する。
【０２１２】
次に、変形例３における、各色替テクスチャＴＸ’（ｎ）の生成処理（図１９のステップＳ１４４の処理）の詳細について、図２１のフローチャートを用いて説明する。図２１において、図８のフローチャートと同じステップには同じ符号を付しており、その説明を省略又は簡略する。
【０２１３】
まず、ｊを１に設定し（ステップＳ３００）、元テクスチャＴＸ（ｎ）のテクセルｔＴＸ（ｊ）に対応する（座標が同じ）不変領域定義テクスチャＴＺ（ｎ）のテクセルｔＴＺ（ｊ）のＲ値を判定する（ステップＳ３０２）。変形例３では、テクセルｔＴＺ（ｊ）のＲ値が０でなければｔＴＸ（ｊ）は不変領域に含まれ、テクセルｔＴＺ（ｊ）のＲ値が０であればｔＴＸ（ｊ）は不変領域に含まれない。
【０２１４】
不変領域定義テクスチャＴＺ（ｎ）のテクセルｔＴＺ（ｊ）のＲ値が０でなければ（ステップＳ３０４のＮ）、元テクスチャＴＸ（ｎ）のテクセルｔＴＸ（ｊ）は不変領域に含まれるので、テクセルｔＴＸ（ｊ）の色を色替テクスチャＴＸ’（ｎ）の対応する（座標が同じ）テクセルｔＴＸ’（ｊ）の色としてＶＲＡＭ３０の作業領域Ｗに書き込む（ステップＳ３３０）。すなわち、テクセルｔＴＸ’（ｊ）の色（ｒ’，ｇ’，ｂ’）は、テクセルｔＴＸ（ｊ）の色（ｒ，ｇ，ｂ）と等しい（ｒ’＝ｒ，ｇ’＝ｇ，ｂ’＝ｂ）。
【０２１５】
一方、不変領域定義テクスチャＴＺ（ｎ）のテクセルｔＴＺ（ｊ）のＲ値が０であれば（ステップＳ３０４のＹ）、元テクスチャＴＸ（ｎ）のテクセルｔＴＸ（ｊ）は不変領域に含まれないので、色替領域定義テクスチャＴＹ（ｎ）の対応する（座標が同じ）テクセルｔＴＹ（ｊ）のＲ値を判定する（ステップＳ３１０）。
【０２１６】
色替領域定義テクスチャＴＹ（ｎ）のテクセルｔＴＹ（ｊ）のＲ値が０であれば（ステップＳ３２０のＹ）、元テクスチャＴＸ（ｎ）のテクセルｔＴＸ（ｊ）は非色替領域に含まれるので、テクセルｔＴＸ（ｊ）の色を色替テクスチャＴＸ’（ｎ）の対応する（座標が同じ）テクセルｔＴＸ’（ｊ）の色としてＶＲＡＭ３０の作業領域Ｗに書き込む（ステップＳ３３０）。すなわち、テクセルｔＴＸ’（ｊ）の色は、テクセルｔＴＸ（ｊ）の色と等しい（ｒ’＝ｒ，ｇ’＝ｇ，ｂ’＝ｂ）。
【０２１７】
一方、色替領域定義テクスチャＴＹ（ｎ）のテクセルｔＴＹ（ｊ）のＲ値が０でなければ（ステップＳ３２０のＮ）、元テクスチャＴＸ（ｎ）のテクセルｔＴＸ（ｊ）は色替領域に含まれるので、係数情報Ｋ（ｎ）を用いて、テクセルｔＴＸ（ｊ）の色と色指定情報ＣＬ（ｎ）により指定される色を合成した色を計算し（ステップＳ３４０）、計算した色を色替テクスチャＴＸ’（ｎ）の対応する（座標が同じ）テクセルｔＴＸ’（ｊ）の色としてＶＲＡＭ３０の作業領域Ｗに書き込む（ステップＳ３５０）。例えば、テクセルｔＴＸ’（ｊ）の色は、色指定情報ＣＬ（ｎ）＝（Ｒ，Ｇ，Ｂ）、係数情報Ｋ（ｎ）＝（α，β，γ）を用いて、ｒ’＝（１−α）・ｒ＋α・Ｒ，ｇ’＝（１−β）・ｇ＋β・Ｇ，ｂ’＝（１−γ）・ｂ＋γ・Ｂで計算される。
【０２１８】
そして、すべてのテクセルの処理が終了するまで（ステップＳ３６０でＹになるまで）、ｊを１だけ増やして（ステップＳ３７０）ステップＳ３０２〜Ｓ３５０の処理を繰り返し行う。すべてのテクセルの処理が終了すると（ステップＳ３６０のＹ）、作業領域Ｗに色替テクスチャＴＸ’（ｎ）が完成する。
【０２１９】
なお、変形例３におけるその他の処理については上述した本実施形態の処理と同様であるため、その図示及び説明を省略する。
【０２２０】
このように、変形例３によれば、元テクスチャＴＸにおいて不変領域に含まれるテクセルについては、色替領域に含まれるか否かに関係なく、そのままの色にしてオブジェクトを描画することができる。例えば、元テクスチャＴＸの一部に色替えをしたくない模様があるような場合には、不変領域定義テクスチャＴＺを用いることで、容易にその模様の色をそのまま反映してオブジェクトを描画することができる。
【０２２１】
（４）変形例４
前述した本実施形態の手法では、元テクスチャＴＸの色替領域の色と色指定情報ＣＬで指定される色とを係数情報Ｋで決定される一定の比で合成している。例えば、係数情報Ｋ＝（α，β，γ）とすると、元テクスチャＴＸの色替領域の色と色指定情報ＣＬで指定される色との合成比は、Ｒ，Ｇ，Ｂの各チャネルについて１−α：α，１−β：β，１−γ：γであった。
【０２２２】
これに対して変形例４の手法では、元テクスチャＴＸの色替領域の色と色指定情報ＣＬで指定される色との合成比を、色替領域定義テクスチャＴＹの対応する（座標が同じ）テクセルの色に応じて変更する。
【０２２３】
具体的には、色替領域定義テクスチャＴＹの各テクセルの色（Ｒ’，Ｇ’，Ｂ’）に対して、Ｒ’≠０（Ｒ＝１〜Ｌ：Ｌは例えば２５５）であれば、元テクスチャＴＸの対応する（座標が同じ）テクセルの色と色指定情報ＣＬで指定される色との合成比を、Ｒ，Ｇ，Ｂの各チャネルについて、例えば１−α・Ｒ’／Ｌ：α・Ｒ’／Ｌ，１−β・Ｒ’／Ｌ：β・Ｒ’／Ｌ，１−γ・Ｒ’／Ｌ：γ・Ｒ’／Ｌに設定する。すなわち、色替テクスチャＴＸ’のテクセルの色（ｒ’，ｇ’，ｂ’）は、元テクスチャＴＸの対応する（座標が同じ）テクセルの色（ｒ，ｇ，ｂ）と色替領域定義テクスチャＴＹの対応する（座標が同じ）テクセルの色（Ｒ’，Ｇ’，Ｂ’）に対して、色指定情報ＣＬ＝（Ｒ，Ｇ，Ｂ）、係数情報Ｋ＝（α，β，γ）を用いて、例えばｒ’＝（１−α・Ｒ’／Ｌ）・ｒ＋α・Ｒ’／Ｌ・Ｒ，ｇ’＝（１−β・Ｒ’／Ｌ）・ｇ＋β・Ｒ’／Ｌ・Ｇ，ｂ’＝（１−γ・Ｒ’／Ｌ）・ｂ＋γ・Ｒ’／Ｌ・Ｂで計算される。
【０２２４】
この場合、Ｒ’＝０であればｒ’＝ｒ，ｇ’＝ｇ，ｂ’＝ｂとなり、Ｒ’＝Ｌであればｒ’＝（１−α）・ｒ＋α・Ｒ，ｇ’＝（１−β）・ｇ＋β・Ｇ，ｂ’＝（１−γ）・ｂ＋γ・Ｂとなる。つまり、前述した本実施形態の手法は、変形例４の手法において色替領域定義テクスチャＴＹのすべてのテクセルについてＲ’＝０又はＬ（例えば２５５）が設定されているケースに対応する。
【０２２５】
なお、変形例４におけるその他の処理については上述した本実施形態の処理と同様であるため、その図示及び説明を省略する。
【０２２６】
この変形例４によれば、例えば、元テクスチャＴＸの所定の模様のエッジ付近を色が徐々に変化する色替領域として定義することで、描画されるオブジェクトにおいてその模様のエッジ付近の色の変化にグラデーションをかけることができ、これによりオブジェクトのよりリアルな表現を実現することができる。
【０２２７】
（５）変形例５
前述した本実施形態の手法では、パーツオブジェクトＰＯに対して色替テクスチャＴＸ’を生成した後、この色替テクスチャＴＸ’をパーツオブジェクトＰＯにマッピングしてキャラクタを描画している。これに対して変形例５の手法では、図２２に示すように、キャラクタのポリゴンデータ、元テクスチャＴＸ、色替領域定義テクスチャＴＹ、色指定情報ＣＬ、係数情報Ｋがシェーダ２０に入力され、シェーダ２０は色替テクスチャＴＸ’を生成せずに直接的にキャラクタを描画する。
【０２２８】
次に、変形例５のキャラクタの描画処理について図２３のフローチャートを用いて説明する。図２３のフローチャートは、プレーヤキャラクタに関連付けられたＮ個のパーツオブジェクトの色をプレーヤの好みに応じて変更して描画するフローチャートである。
【０２２９】
まず、プレーヤが、プレーヤキャラクタのパーツオブジェクトＰＯ（１）〜ＰＯ（Ｎ）にそれぞれ対応づけて色指定情報ＣＬ（１）〜ＣＬ（Ｎ）を指定する（ステップＳ４００）。
【０２３０】
次に、図２４に示すように、元テクスチャＴＸ（１）〜ＴＸ（Ｎ）のコピー領域ＣＸ（１）〜ＣＸ（Ｎ）、色替領域定義テクスチャＴＹ（１）〜ＴＹ（Ｎ）のコピー領域ＣＹ（１）〜ＣＹ（Ｎ）をＶＲＡＭ３０に確保する（ステップＳ４１０）。
【０２３１】
次に、元テクスチャＴＸ（１）〜ＴＸ（Ｎ）をコピー領域ＣＸ（１）〜ＣＸ（Ｎ）にそれぞれコピーする（ステップＳ４２０）。
【０２３２】
次に、色替領域定義テクスチャＴＹ（１）〜ＴＹ（Ｎ）をコピー領域ＣＹ（１）〜ＣＹ（Ｎ）にそれぞれコピーする（ステップＳ４３０）。
【０２３３】
次に、ｎを１に設定し（ステップＳ４４０）、シェーダ２０により、元テクスチャＴＸ（ｎ），色替領域定義テクスチャＴＹ（ｎ），色指定情報ＣＬ（ｎ），係数情報Ｋ（ｎ）を用いてパーツオブジェクトＰＯ（ｎ）の各ピクセルの色を計算し、パーツオブジェクトＰＯ（ｎ）を描画する（ステップＳ４５０）。このステップＳ４５０の処理の詳細については後述する。
【０２３４】
そして、ｎ＝Ｎになるまで（ステップＳ４６０でＹになるまで）、ｎを１だけ増やして（ステップＳ４７０）ステップＳ４５０の処理を繰り返し行う。ｎ＝Ｎになると（ステップＳ４６０のＹ）、当該フレームにおけるパーツオブジェクトＰＯ（１）〜ＰＯ（Ｎ）の描画が終了する。
【０２３５】
そして、プレーヤキャラクタの描画がすべて終了するまで（ステップＳ４８０でＹになるまで）フレームを更新し（ステップＳ４９０）、プレーヤキャラクタの描画処理（ステップＳ４５０〜Ｓ４７０）を継続する。
【０２３６】
プレーヤキャラクタの描画がすべて終了すると（ステップＳ４８０のＹ）、元テクスチャＴＸ（１）〜ＴＸ（Ｎ）と色替領域定義テクスチャＴＹ（１）〜ＴＹ（Ｎ）は不要になるので、コピー領域ＣＸ（１）〜ＣＸ（Ｎ）とコピー領域ＣＹ（１）〜ＣＹ（Ｎ）を解放し（ステップＳ５００）、処理を終了する。
【０２３７】
次に、各パーツオブジェクトＰＯ（ｎ）の描画処理（図２３のステップＳ４５０の処理）の詳細について、図２５のフローチャートを用いて説明する。
【０２３８】
まず、ｉを１に設定し（ステップＳ６００）、パーツオブジェクトＰＯ（ｎ）のピクセルｐ（ｉ）に対応づけられる元テクスチャＴＸ（ｎ）のテクセルｔＴＸ（ｉ）を求める（ステップＳ６１０）。
【０２３９】
次に、元テクスチャＴＸ（ｎ）のテクセルｔＴＸ（ｉ）に対応する（座標が同じ）色替領域定義テクスチャＴＹ（ｎ）のテクセルｔＴＹ（ｉ）のＲ値を判定する（ステップＳ６２０）。色替領域を示すテクセルｔＴＹ（ｉ）は白色（（ｒ，ｇ，ｂ）＝（２５５，２５５，２５５））に、非色替領域を示すテクセルｔＴＹ（ｉ）は黒色（（ｒ，ｇ，ｂ）＝（０，０，０））に設定されているので、テクセルｔＴＹ（ｉ）のＲ値が０でなければｔＴＸ（ｉ）は色替領域に含まれ、テクセルｔＴＹ（ｉ）のＲ値が０であればｔＴＸ（ｉ）は非色替領域に含まれる。
【０２４０】
色替領域定義テクスチャＴＹ（ｎ）のテクセルｔＴＹ（ｉ）のＲ値が０であれば（ステップＳ６３０のＹ）、元テクスチャＴＸ（ｎ）のテクセルｔＴＸ（ｉ）は非色替領域に含まれるので、テクセルｔＴＸ（ｉ）の色をパーツオブジェクトＰＯ（ｎ）のピクセルｐ（ｉ）の色としてフレームバッファに書き込む（ステップＳ６４０）。すなわち、ピクセルｐ（ｉ）の色（ｒ’，ｇ’，ｂ’）は、テクセルｔＴＸ（ｉ）の色（ｒ，ｇ，ｂ）と等しい（ｒ’＝ｒ，ｇ’＝ｇ，ｂ’＝ｂ）。
【０２４１】
一方、色替領域定義テクスチャＴＹ（ｎ）のテクセルｔＴＹ（ｉ）のＲ値が０でなければ（ステップＳ６３０のＮ）、元テクスチャＴＸ（ｎ）のテクセルｔＴＸ（ｉ）は色替領域に含まれるので、係数情報Ｋ（ｎ）を用いて、テクセルｔＴＸ（ｉ）の色と色指定情報ＣＬ（ｎ）により指定される色を合成した色を計算し（ステップＳ６５０）、計算した色をパーツオブジェクトＰＯ（ｎ）のピクセルｐ（ｉ）の色としてフレームバッファに書き込む（ステップＳ６６０）。例えば、ピクセルｐ（ｉ）の色（ｒ’，ｇ’，ｂ’）は、テクセルｔＴＸ（ｉ）の色（ｒ，ｇ，ｂ）、色指定情報ＣＬ（ｎ）＝（Ｒ，Ｇ，Ｂ）、係数情報Ｋ（ｎ）＝（α，β，γ）を用いて、ｒ’＝（１−α）・ｒ＋α・Ｒ，ｇ’＝（１−β）・ｇ＋β・Ｇ，ｂ’＝（１−γ）・ｂ＋γ・Ｂで計算される。
【０２４２】
そして、すべてのピクセルの処理が終了するまで（ステップＳ６７０でＹになるまで）、ｉを１だけ増やして（ステップＳ６８０）ステップＳ６１０〜Ｓ６６０の処理を繰り返し行う。すべてのピクセルの処理が終了すると（ステップＳ６７０のＹ）、パーツオブジェクトＰＯ（ｎ）の描画処理が終了する。
【０２４３】
このように、変形例５によれば、プレーヤキャラクタの描画処理において、シェーダにより毎フレーム色替えの計算をするため処理負荷が増えるが、色替テクスチャＴＸ’を生成するための作業領域をＶＲＡＭ３０に確保する必要がない。
【０２４４】
（６）その他の変形例
上述した本実施形態において、常に、元テクスチャＴＸのすべてのテクセルの色を色指定情報ＣＬで指定される色と合成して色替テクスチャＴＸ’を生成する場合は、元テクスチャＴＸの色替領域と非色替領域を区別する必要がないので、色替領域定義テクスチャＴＹを省くことができる。
【０２４５】
また、上述した本実施形態において、色指定情報ＣＬだけでなく係数情報Ｋもプレーヤが指定できるようにしてもよい。
【０２４６】
また、上述した本実施形態において、複数の色替領域定義テクスチャＴＹ１、ＴＹ２、・・・を用意し、その各々を複数の色指定情報ＣＬ１、ＣＬ２、・・・の各々と対応づけて、変形例２と同様の処理で少なくとも１つの色替領域に含まれる基本テクスチャＴＸの各テクセルの色を変更して色替テクスチャＴＸ’を生成するようにしてもよい。
【０２４７】
また、上述した本実施形態において、プレーヤキャラクタのパーツオブジェクトの代わりに、又は、これに追加して、同様の手法で敵キャラクタ、建物等の背景を構成するオブジェクト等の種々のオブジェクトの色替え処理を行うようにしてもよい。
【０２４８】
また、上述した変形例１〜５及びその他の変形例を、矛盾のない範囲で任意に組み合わせた変形例を考えることもできる。
【０２４９】
なお本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。例えば、明細書又は図面中の記載において広義や同義な用語として引用された用語は、明細書又は図面中の他の記載においても広義や同義な用語に置き換えることができる。
【０２５０】
本発明は、実施の形態で説明した構成と実質的に同一の構成（例えば、機能、方法及び結果が同一の構成、あるいは目的及び効果が同一の構成）を含む。また、本発明は、実施の形態で説明した構成の本質的でない部分を置き換えた構成を含む。また、本発明は、実施の形態で説明した構成と同一の作用効果を奏する構成又は同一の目的を達成することができる構成を含む。また、本発明は、実施の形態で説明した構成に公知技術を付加した構成を含む。
【符号の説明】
【０２５１】
ＴＸ  元テクスチャ、ＴＸ’  色替テクスチャ、ＴＹ  色替領域定義テクスチャ、ＴＺ  不変領域定義テクスチャ、ＣＬ  色指定情報、ＣＬ１  第１の色指定情報、ＣＬ２  第２の色指定情報、Ｋ  係数情報、Ｋ１  第１の係数情報、Ｋ２  第２の係数情報、
Ｗ  作業領域、ＣＸ，ＣＹ，ＣＺ  コピー領域、１０，１２，１４  テーブルデータ、２０  シェーダ、３０  ＶＲＡＭ、１００  処理部、１１０  オブジェクト空間設定部、１１２  移動・動作処理部、１１４  仮想カメラ制御部、１２０  描画部、１２２  色替テクスチャ生成部、１２４  色替テクスチャマッピング部、１２６  色指定情報生成部、１３０  音生成部、１６０  操作部、１７０  記憶部、１７２  主記憶部、１７４  描画バッファ、１７６  オブジェクトデータ記憶部、１７８  テクスチャ記憶部、１７９  Ｚバッファ、１８０  情報記憶媒体、１９０  表示部、１９２  音出力部、１９６  通信部
【図１】
2012027699.tif 000003
【図２】
2012027699.tif 000004
【図３】
2012027699.tif 000005
【図４】
2012027699.tif 000006
【図５】
2012027699.tif 000007
【図６】
2012027699.tif 000008
【図７】
2012027699.tif 000009
【図８】
2012027699.tif 000010
【図９】
2012027699.tif 000011
【図１０】
2012027699.tif 000012
【図１１】
2012027699.tif 000013
【図１２】
2012027699.tif 000014
【図１３】
2012027699.tif 000015
【図１４】
2012027699.tif 000016
【図１５】
2012027699.tif 000017
【図１６】
2012027699.tif 000018
【図１７】
2012027699.tif 000019
【図１８】
2012027699.tif 000020
【図１９】
2012027699.tif 000021
【図２０】
2012027699.tif 000022
【図２１】
2012027699.tif 000023
【図２２】
2012027699.tif 000024
【図２３】
2012027699.tif 000025
【図２４】
2012027699.tif 000026
【図２５】
2012027699.tif 000027