3DCGゲームで使われるテクスチャとはただの絵なの?
前回ポリゴンのお話をしたので、今回は、テクスチャのお話です。
ポリゴンのお話でも少し触れましたが、テクスチャは、ポリゴンに貼る『絵』だと思っていただければいいです。
ポリゴンのときにお話しした点がテクスチャの座標を持っており、この位置情報を元にテクスチャ(絵)が貼られていきます。
この情報のことを『UV』情報と呼びます。
ゲームではテクスチャのサイズは重要です
上記のような岩のテクスチャをポリゴンに使用する場合は、テクスチャサイズを、2のべき乗(2,4,8,16,32,64,128,256,512,1024,2048,4096)にする必要があります。
3Dツール上では、テクスチャのサイズを好きに指定したものを使用することができますが、ゲーム世界では、2のべき乗のサイズのものを使うことが求められます。これは、データを効率的扱うために必要なことなので、守りましょう。
テクスチャのサイズがいい加減に作成されるとプログラム上で、2のべき乗で収まるサイズが選ばれる可能性ができてしまい、テクスチャに無駄が発生しますので、揃えておいたほうがよいです。
例えば、600×600というテクスチャを使った場合、1024×1024のサイズのテクスチャが内部では確保されてしまため、無駄な領域が増えてしまいます。
なぜ2のべき乗?
プログラムは、0と1の集合体であるため、この二つの数字で構成されます。
なので、2のべき乗で作成すると効率が良いのです。
と、もっと詳しく知りたい場合は、3Dモデルなどを担当するプログラマーに聞いてみてください。それでわからなければ、そういうものだと理解してもらうだけでも良いです。
キャラクターとオブジェクト(背景)のテクスチャについて
キャラクターと背景テクスチャは、持ち方や作成方法に違いがある場合があります。
キャラクターのテクスチャ
キャラクターの場合は、そのキャラクターだけの読み込みとなるので、テクスチャをなるべく一枚に抑える傾向にあります。そのキャラクターが登場する際に読み込ませる形にします。
検索でよく調べるとキャラクターモデルのテクスチャがアジの開きのような形になっている画像があると思いますが、あれは、キャラクターのテクスチャを最適化した最終形態と思ってくれればいいと思います。
オブジェクト(背景)のテクスチャ
オブジェクト(背景)のテクスチャに関しては、そのオブジェクトが複数存在する場合があるため、テクスチャを一枚にする必要がない場合があります。(使いまわしを行うなどする場合があるため。)
例えば、木の板があり木目のテクスチャがある場合、このテクスチャを別のテーブルのテクスチャに使って、テクスチャの容量を削減することができたりします。
オブジェクト(背景)のものに関していえば、キャラクターのような作りをする場合もなくはないので、そのゲームに合わせたものになると思います。
テクスチャは大きければいいものでもない
最近では、4Kテレビように4096のテクスチャも使われるようになりましたが、基本的には、このサイズは、使うデザイナー次第でもあるかなと思います。
大きいテクスチャはそれだけ、見栄えが良くなりますがその分作り込みも激しくなります。
コンシューマーゲーム機、携帯ゲーム機の開発に関わっていましたが、やはり、スペックが低いゲームほど、このテクスチャ、ポリゴンなどの作り方を工夫しなければならなかったので、小手先の技術というか、数ピクセルの画像データでこれが作れる!とか、データを無駄にしない精神がすごかったです。
現在のゲーム機は、スペック的にもかなり上がったため、表現自体の差があるので、今のテクスチャの使い方が勿体ない使う方をする人が多いというのを言いたいわけではありませんが、昔と比べてテクスチャの空いた隙間を使うような玄人が減っていった感じがします。
コメント