### 3-2　PVR Converter

次のフォーマットのテクスチャをPVR形式に変換します（PVR形式とは、Ninjaライブラリでテクスチャとして使用されるファイル形式です）。

.bmp | PCビットマップ
.pic | SOFTIMAGEテクスチャ
.pix .mask | Aliasテクスチャ。.maskはαイメージファイル
.tga | LIGHTWAVE、3D Studio MAXテクスチャ

####

3-2-1　動作環境

PC版（MS-DOSコマンドラインプログラム）と、SGI版（UNIXコマンドラインプログラム）があります。

コマンドファイル名 : pvrconv.exe（PC版） , pvrconv（SGI版）

####

3-2-2　インストール

#### PC版

SDK CD-ROMの「\dc_graph\pc\3dstudiomax\pvrconvpc」フォルダ下にある「pvrconv.exe」を任意のディレクトリにコピーします。

####

3-2-3　SGI版

SDK CD-ROMの「dc_graph/sgi/softimage」ディレクトリ下にあるファイルを使用します。
[ninjasgi____.tar.gz]があります。
「____」は作成日を表す数字です。
スーパーユーザーでログインして、アーカイブを展開し、Installを実行してください。
例
[ninjasgi0925.tar.gz]を例にとって説明します。
展開用のディレクトリ[/tmp]に移動します。

>     # cd /tmp

[ninjasgi0925.tar.gz]をCD-ROMから展開します(レイアウト上、2行になっていますが、改行はいれないでください)。

>     # zcat /cdrom/dc_graph/sgi/ninjasgi0925.tar.gz | tar xvf -

展開されたディレクトリに移動します。

>     # cd ninja

Installを実行します。

>     # Install

Installを実行すると、/usr/local/ninja/dsoにlibnjo.so、libsso.so、libtextool.soが、また、/usr/local/ninja/binに[pvrconv]が展開されます。

上記操作により[DscToNj],[gigen],[njaconv],[pvmconv],[pvrconv],[PvrResEdit]がインストールされます。従って、既にいずれかをインストールされている場合、この操作は必要ありません。

####

3-2-4　入力書式

#### 通常書式

pvrconv [<オプションコマンド>] <変換する画像ファイル> [<出力ディレクトリ>]
■［<オプションコマンド>］ : オプションを指定します。
■<変換する画像ファイル> : 変換元の画像ファイルを指定します。
■［<出力ディレクトリ>］ : 出力ディレクトリを指定します。指定が無い場合は、　現在のディレクトリに出力します。

例 : c:\pvrconv -gi 5 d:\data\picture.tga (PC版)

※コマンドの書式について

[ ]で括られたコマンドは省略できます。

システム環境変数に、ツールのPathを設定した場合は、コマンド入力時にツールのパスを省略できます。（詳細はWindowsのマニュアルを参照してください。）

#### αチャネルを付加する

pvrconv [<オプションコマンド>] <変換する画像ファイル> [<αチャンネル用のファイル>] [<出力するディレクトリ>]
■［<オプションコマンド>］ : オプションを指定します。

<変換する画像ファイル> : 変換元の画像ファイルを指定します。

■［<αチャンネル用のファイル>］ : αチャンネル用のファイルを指定します。
■［<出力ディレクトリ>］ : 出力ディレクトリを指定します。指定が無い場合　は、現在のディレクトリに出力します。
（PC版の例 c:\pvrconv -gi 0 d:\data\picture.bmp d:\data\alpha.bmp ）

bmpファイルおよびAliasテクスチャの場合に使用します。

BMPファイルの場合αチャンネルを持つことができないので、αチャネルありのPVRファイルに変換する場合にこの書式を使います。αチャネル用のファイルにもBMPファイルを指定します。

また、Aliasテクスチャではpixファイルをテクスチャとして、maskファイルをαチャネルとします。

αチャネルの指定をしない場合は、α用のファイルを入力する必要はありません。

####

3-2-5　コンバータのデフォルト・アクション

オプションを設定しない場合、コンバータは以下のような動作をします。

正方形テクスチャの場合 | Twiddledピクセルの並びが最適化され、メモリからの読み出しが高速になります。
長方形テクスチャの場合 | Rectangleピクセルの順番をイメージのままにします。表示がTwiddledに比べ低速、Mipmapが使えません。
Auto Mipmap | ON
Dither | OFF
Alpha Dither | OFF
Stride | OFF
αなしの場合 | RGB565
αありの場合 | ARGB4444
αが2値（白黒のみ）の場合 | ARGB1555
VQ Auto Mipmap | ON通常、VQはMipmapを使うと画質が落ちる為、VQとその他でMipmapオプションを分けています。

####

3-2-6　オプションコマンド

#### Texture Typeに関するオプション

#### -t or -twiddled : twiddled texutre

Twiddled形式で出力します。

正方形のテクスチャの場合、自動的にTwiddledになるため指定の必要はありません。長方形テクスチャに指定した場合は、Twiddledとして出力します

#### -r or -rectangle : rectangle texutre

Rectangle形式で出力します。

すべてRectangleとして出力します。

#### -v3 or -vq3 : VQ algorithm 3

VQ3形式で出力

VQ3圧縮されたテクスチャを出力します（VQ形式は正方形にのみ対応しています）。

32×32pixel以下のサイズは、VQ3圧縮すると逆にデータが大きくなる為、64×64pixel以上を対象とします。

正方形でないテクスチャはRectangleに変換されます。

#### -v3a or -vq3auto : VQ and smallVQ(32x32, 16x16) algorithm 3

VQ3とSmallVQ3を自動判別します。

32×32pixel以下のテクスチャを自動的にsmallVQ3に、64×64pixel以上をVQ3に変換します（VQ形式は正方形にのみ対応しています）。

#### -sv3 or -smallvq3 : smallVQ algorithm 3

SmallVQ3形式で出力します。

SmallVQ3がサポートするサイズは64×64、32×32、32×32Mipmap、16×16、16×16Mipmapの5種類のみです。

64×64のMipmapには対応していません。

#### -v4 or -vq4 : VQ algorithm 4

VQ4形式で出力します。

VQ4圧縮されたテクスチャを出力します（VQ形式は正方形にのみ対応しています）。

32×32pixel以下のサイズは、VQ4圧縮すると逆にデータが大きくなる為、64×64pixel以上を対象とします。

正方形でないテクスチャはrectangleに変換されます。

#### -v4a or -vq4auto : VQ and smallVQ(32x32, 16x16) algorithm 4

VQ4とSmallVQ4を自動判別

32×32pixel以下のテクスチャを自動的にsmallVQ4に、64×64pixel以上をVQ4に変換します（VQ形式は正方形にのみ対応しています）。

#### -sv4 or -smallvq4 : smallVQ algorithm 4

SmallVQ4形式で出力

SmallVQ4がサポートするサイズは64×64、32×32、32×32Mipmap、16×16、16×16Mipmapの5種類のみです。

#### -v4p or -vq4pri : use priority data for VQ algorithm 4

VQ4形式にプライオリティ・プレーンを使用して出力

BMP、PIXファイルにおいて、αチャネル設定用の画像ファイルがある場合には3番目のファイル名として、そうでない場合は、2番目のファイル名として、プライオリティ・プレーンに使用する画像ファイルを指定します。VQ4アルゴリズムは、指定された画像ファイルをプライオリティ・プレーンとして使用します。

プライオリティ・プレーンとは、VQテクスチャ内の、クオリティを上げたい部分をユーザーが指定できるものです。VQ4アルゴリズムは、指定された画像のR値(Red)の高い部分を中心にコードブック（VQのパレット）を作成します。

（例）BMPファイルの例です。
αチャネルを使用する場合（3つのファイル名を入力します）。
pvrconv -v4 -v4p picture.bmp alpha.bmp priority.bmp
αチャネルを使用しない場合（2つのファイル名を入力します）。
pvrconv -v4 -v4p picture.bmp priority.bmp

#### Pixel Formatに関するオプション

#### -5 or -565 : pixel format RGB565

RGB565で出力します。

Red : 5bit 、 Green : 6bit 、 Blue : 5bit の階調で出力します。

#### -4 or -4444 : pixel format ARGB4444

ARGB4444で出力します。

Alpha、Red、Green、Blueをそれぞれ4bitの階調で出力します。

#### -1 or -1555 : pixel format ARGB1555

ARGB1555で出力します。

Alpha : 1bit 、 Red : 5bit 、 Green : 5bit 、 Blue : 5bit の階調で出力します。

#### -8 or -8888 : pixel format ARGB8888

ARGB8888で出力します。

Alpha : 8bit 、 Red : 8bit 、 Green : 8bit 、 Blue : 8bit の階調で出力します。

（ARGB8888はパレットテクスチャのみです。）

#### -y or -yuv : pixel format YUV422

YUV422で出力します。

YUV422形式で出力します。

8bit階調なので、ズームアップしてもきれいな階調が得られますが、横方向の解像度が低い為、斜線などはつぶれます。

#### -t1 or -t1555 : translucent pixel format ARGB1555

α値が2値でないテクスチャをARGB1555で出力します。

通常、α値が2値でない場合ARGB4444で出力しますが、これをARGB1555で出力します。（αチャネルは2値化されます。）

#### -b4 or -b4444 : bilevel translucent pixel format ARGB4444

α値2値のテクスチャをARGB4444で出力します。

通常、α値が2値の場合ARGB1555で出力しますが、これをARGB4444で出力します。

#### -s or -stride : stride texture

Strideテクスチャとして出力します。

StrideテクスチャはRectangleテクスチャの一部の領域を32pixel単位のサイズで横幅指定できます。

StrideテクスチャはStrideレジスタに値を書き込むことにより幅を指定するため一つのみです。

#### -bu or -bump : bump texture

Bumpテクスチャとして出力します。

ピクセル値の濃淡をBump法線値に変換してbumpテクスチャを生成します。

#### -p8 or -palette8 : palette format Source Image 8bpp 256 color

#### -p4 or -palette4 : palette format Source Image 4bpp 16 color

パレットタイプ・テクスチャとしてPVRファイルを出力します。

パレットデータはPVPファイルに格納されます。また、変換可能なソースイメージはBMPだけです。

BMPの色数は、あらかじめ変換後の色数と合わせておく必要があります（palette8 : 256色 、 palette4 : 16色）。

また、α用のBMPを使用することも可能です。画像として使用するBMPのファイル名の後に、α用のファイル名を入力します（α用のBMPもパレットタイプである必要があります）。この場合、パレットデータのRGB値の内、R値をαとして使用します。あくまでパレット値としてのα値が変るだけです。

#### -ps or -palsetting ,, : palette information setting

パレット情報の設定

パレットデータに必要なバンクナンバー、バンク内の開始パレット番号、登録パレット数を設定できます。

格納するパレットの位置、数を設定できる。デフォルトの設定値は

| バンク | 開始パレット | 格納パレット数
8bpp | 0番 | 0番 | 256個
4bpp | 0番 | 0番 | 16個

（設定例）
-ps 3,53,102 : バンク 3番 、 開始パレット 53番 、 格納パレット数 102個

#### その他のオプション

#### -gi or -globalIndex : set globalIndex chunk

Global Indexの書き込みを指定します。

このオプションがない場合、Global Indexが書き込まれません（Global Indexとは、プログラムが参照する各テクスチャ固有の通し番号です）。

#### -p or -path : output path

出力ディレクトリを指定します。

このオプションを使用しなくても、ファイル名の後ろにディレクトリ名を入力すれば同様の動作をします。

#### -out or -outname : output filename

出力ファイル名を指定します。

#### -ra or -ralpha : reverse alpha (0 -> FF, FF -> 0)

α値を反転して出力します。

抜きたい部分を逆にしてしまった場合に使用します。

#### -di or -dither : dither on

ディザ処理して出力します。

#### -adi or -adither : alpha dither on

αディザ処理して出力します。

#### -ns or -nosuffix : ignore suffix

入力テクスチャにおいて、拡張子を無視したファイル名を指定します。

外部ツールでテクスチャのフォーマットを変更した場合でも、モデルが持つテクスチャ名を変更なしで変換できます。

この場合テクスチャ名は拡張子なしにする必要があります。テクスチャサイズが1, 2, 4, 8, 16, 32, 64,128, 256, 512, 1024の場合、拡張子がなくてもpic, tga, bmp, pixを検出して自動で変換します。

#### -f or -flip : flip texture

テクスチャを上下反転して出力します。

#### -nm or -nomipmap : auto mipmap off

ミップマップの自動生成をOFFします。

#### -nvm or -novqmipmap : VQ auto mipmap off

VQコンバート時のミップマップ自動生成をしません。

#### -rep or -repeat : Repeat on

ミップマップ生成時に端部のつながりを考慮します。

[←] | [INDEX] | [→]