## 第4章　リファレンス

LIGHTWAVE 3D関連のツールの全機能の詳細なリファレンスです。

### 4-1　Ninja Export for LIGHTWAVE 3D

LIGHTWAVE 3DからNinja形式のデータ（モデル、テクスチャ、カメラ、ライト、モーションなど）を出力します。

LIGHTWAVE 3Dモデラーのプラグインとして動作します。

####

4-1-1　動作環境

LIGHTWAVE 3DがインストールされているPC(Windows95/NT)

現在、LIGHTWAVE 3D Ver.5.6に対応しています。

####

4-1-2　起動方法

［オブジェクト］タブの［Custom］メニューから「Ninja_Export」を選択する事で起動します。

LIGHTWAVEモデラーに現在読み込まれているモデルを変換するのではなく、既に保存されているファイル（.lws）を変換して出力します。

####

4-1-3　オプション設定

#### Scene file

選択したシーンファイル（.lws）が表示されます。

#### Option Resource

リソースファイル（.nre）に関するオプションです。

リソースファイル（.nre）には、コンバータで使用する変換オプションなどが記載されます。

ファイルのコンバート時に読み込まれ、以前に行った設定を活かすことができます。

以下、リソースファイル(.nre)をNREファイルもしくはNREと記述します。

NREファイルの扱い方には2種類のモードがあります。

#### for Scene

LWSファイルの存在する場所にLWSファイルと同名のNREを作成します。

Ninja Exportは、変換するシーンに対して既にオプションが保存されていれば、自動的にそれを読み込んで設定します。

そうでない場合はデフォルトの設定がなされます。

SAVE | 現在のシーンに対する変換オプションを保存します。LWSファイルと同じディレクトリにLWSファイルと同名のNREファイルが作成されます。
Delete | 現在のシーンに対してNREファイルがあればそれを削除します。
Import | 他のシーンに対して保存されたNREファイルを読み込んで使用します。

#### form List

一つのNREファイルに複数のオプション設定リストを持つことができます。NREファイルの位置はどこでもかまいません。

この形式でNREファイルを保存する際、初期状態ではC:\にLWExport.nreが保存されます。これは環境変数NINJAPATHを定義することで変更できます（環境変数に関してはWindowsのマニュアルを参照してください）。

Load | 読み込みたいNREファイルを選択します。存在しないファイル名を入力した場合、その名前のNREファイルが新たに作成されます。
Select | 希望するオプション設定をリストから選択します。
Delete | 不要になったオプション設定リストを削除します。
Regist | 現在のオプション設定をリストに登録します。表示されるダイアログの[Entry Name]欄にわかりやすい名前を入力して[OK]を押してください。

#### Output Path

変換後のファイルを出力するパスを指定します。

何も入力しなければLWSファイルと同じディレクトリに出力されます。

#### Options

#### File

ファイル全般に関するオプションです。

##### Binary format

チェックされていると、モデル、モーション、シェイプモーション、カメラ、ライトの各ファイルをバイナリ形式で出力します。

チェックされていなければアスキー形式で出力します。

それぞれの拡張子は以下のようになります。

| アスキー形式 | バイナリ形式

モデル.NJA.NJ
モーション.NAM.NJM
シェイプ.NAS.NJS
カメラ.NAC.NJC
ライト.NAL.NJL

##### MRS File

モーションを基本姿勢からの差分として出力したいとき、使用するモーションリソースファイルをこのフィールドに入力します（もしくは［MRS File］ボタンを押して、ブラウザからファイルを選択します）。

これにより、モーションリソースファイル(.mrs)のデータを基本姿勢とし、これと差が無いモーションを削除することができます。

モーション関係のファイルのみが出力されます。

##### Create MRS file

チェックされていると、モーションリソースファイル（.mrs）を出力します。

##### No auto search path

デフォルトの設定では、LWOファイルや、テクスチャファイルが指定されている場所にない場合、同じドライブ内で自動検索しますが、ここをチェックすると、自動検索しません。

##### No auto select path

コンバータのパス自動検索検索時の問い合わせを無効とします。パス自動検索した場合に、デフォルトの設定では、ディレクトリ内で検索したファイル群から使用するファイルを問い合わせます。この問い合わせを省略して、最初に見つかったファイルを使用します。「No auto search path」が優先で、同時に設定はできません。

##### Create model file

チェックされていると、モデルファイル（.nj .nja）を出力します。

##### Create motion file

チェックされていると、モーションファイル（.njm .nam）を出力します。

#### Model

モデルファイルに関するオプションです。

##### Global freeze

各頂点をグローバル（ワールド座標）に展開します。　親子階層のない地形データなどのためのオプションです。

##### Ignore diffuse

テクスチャが貼られているマテリアル（サーフェイス）に対してDiffuseのRGB値をすべて255とします。よってマテリアルの色は白になります。

##### Print polygon normal

モデルファイルにポリゴン法線を出力します。

##### Use TEXN3 macro for Texlist

アスキー出力のテクスチャ・リストにおけるTEXNマクロをTEXN3マクロに変更します。

##### Create separated texlist file

チェックされていると、モデルファイル（.nj .nja）からテクスチャ・リストを分離して出力します。

出力されるファイルは以下のとおりです。

| モデルファイル | テクスチャリスト
バイナリ形式 | .njd | .njt
アスキー形式 | .nad | .nat

##### Global scale

ここに入力した値をモデル、モーションに対して掛け、スケールを変更します。

キャラクターを100倍でつくってモーションの精度を確保し、100分の1にして元のサイズに戻すなどのときに使います

##### Model Format

出力するモデル形式を

Chunk ： 新フォーマット

Basic ： 旧フォーマット

から選択します。

##### Chunk volume

コリジョン（衝突判定）用データ「Chunk Volume」の出力をします。

このデータは描画されない為、マテリアル情報を持ちません。

None | Chunk Volumeを出力しません。
Polygon3（三角形） | 独立三角形ポリゴンで構成されたボリュームのデータを出力します。コリジョン、モディファイアボリュームに利用します。
Polygon3,4（四角形） | 面間角度が0.1度以下の三角形同士を接続し、独立四角形ポリゴンを作り、コリジョン用のボリュームを出力します。
Strip（ストリップ） | 隣り合ったポリゴンの頂点を共有する「ストリップポリゴン」形式でデータを出力します。

モディファイアボリュームに関しては「Ninja Export for 3D Studio MAX」の「Chunk volume」の頁を参照してください。

##### Delete materials for

コンバータ出力時にマテリアルの削除ができます。同じモデルの描画（たとえば木）などすべてのマテリアルをなくし、ユーザーが外で設定することでデータの最適化が可能です。

All | すべてのマテリアルを削除します。
Texture | テクスチャを持つもののマテリアルを削除します。
None | マテリアルを削除しません。

##### Set polygon color to polygon userflag

マテリアルカラーをポリゴン側ユーザーフラグ領域に出力できるものです。

これはChunk Volumeで利用します。コリジョンデータ作成時にポリゴン単位で色を指定でき、それに対応するコリジョン属性を与えることができます。

Chunk Volume以外としてChunk Stripでも利用可能ですがマテリアルの色がそのまま出力されるのであまり意味がないかもしれません。

##### Vertex comment

各パラメータが16進表記の形式の場合、ここにチェックがあると、そのパラメータの横に10進表記のコメント文が出力されます。

##### Set ambient to materials

レイアウトで設定された環境光の設定値を、モデルのマテリアルに反映します。

##### Vertex format

Chunk Vertexの出力形式を指定します。

これにより、モデルの頂点に関する設定ができます。

略号の意味は以下のとおりです。

頂点法線あり

VN | 頂点法線あり。標準的な形式です。
VNX | 頂点法線あり。頂点法線データを削減し、データ量を少なくします。
D8 | 頂点法線なし。頂点カラーあり。(ARGB8888)
S5 | 頂点法線なし。頂点カラーあり。(RGB565)頂点カラーにスペキュラーの設定を予定。
S4 | 頂点法線なし。頂点カラーあり。(ARGB4444)頂点カラーにスペキュラーの設定を予定。
IN | 頂点法線なし。処理の高速なIntensityモードにおいて頂点カラーを与えます。
NF | 頂点法線なし。Ninja拡張フラグ領域を持ち、機能を拡張できます。
UF | 頂点法線なし。ユーザフラグ領域を持ちます。

※略号の合わさったもの（例 VN_D8）は、頂点法線がない形式の特徴を引き継ぎながら、頂点法線を付加したものです。

#### Texture

テクスチャファイルに関するオプションです。

##### Force texture convert

チェックされていると、出力先に同じ名前のテクスチャがあっても上書きします（通常は出力先に同じ名前のテクスチャファイルがあると上書きしません）。

##### Create PVM

複数のテクスチャを一つのファイルに統合するPVM形式で出力します。

##### No texture

テクスチャを無効とします。

モデルにテクスチャのデータがあってもこれを無効とします。

##### Global index base

ここに数値を入力すると、テクスチャのGlobal Indexの開始番号を指定できます（Global Indexとは、プログラムが参照する各テクスチャ固有の通し番号です）。

初期値は0です。

##### Texture path

入力するテクスチャのパスを指定します。

このフィールドに入力があると、LWOで指定されたパスを無効にし、このオプションで指定されたパスが有効となります。

#### UV value format

UV値の精度を指定します。

8bit | 256分解能でテクスチャマッピングします。（テクスチャに512、1024のサイズを使用した場合は、ポリゴンの端部において、テクスチャとのズレが生じることがあります。その場合は精度を「10bit」にしてください。）
10bit | 1024分解能でテクスチャマッピングします。

##### Texture format

テクスチャのタイプを指定します。

Automatic | 自動的に「Twiddled」/「Rectangle」を切り替えます。
Twiddled | すべてのテクスチャを「Twiddled」で出力します。
Rectangle | すべてのテクスチャを「Rectangle」で出力します。
VQ3Automatic | すべてのテクスチャを「VQ Type3」圧縮形式で出力します。ただし、32x32以下は（SmallVQ3）圧縮形式で出力します。
VQ3 | すべてのテクスチャを「VQ Type3」圧縮形式で出力します。
SmallVQ3 | 32x32以下のテクスチャのみを「SmallVQ3」圧縮形式で出力します。ただし、Mipmapがoffになっていると64x64も「smallVQ3」圧縮形式で出力します。
VQ4Automatic | すべてのテクスチャを「VQ Type4」圧縮形式で出力します。ただし、32x32以下は「SmallVQ4」圧縮形式で出力します。
VQ4 | すべてのテクスチャを「VQ Type4」圧縮形式で出力します。
SmallVQ4 | 32x32以下のテクスチャのみを「SmallVQ4」圧縮形式で出力します。ただし、Mipmapがoffになっていると64x64も「smallVQ4」圧縮形式で出力します。

詳細は、「第3章 ファイルフォーマット」のテクスチャタイプを参照してください。

##### Pixel format

テクスチャの出力フォーマットを指定します。

Automatic | 自動的にフォーマットを選択します。
RGB565 | すべてのテクスチャを「RGB565」で出力します。
ARGB4444 | すべてのテクスチャを「ARGB4444」で出力します。
ARGB1555 | すべてのテクスチャを「ARGB1555」で出力します。
ARGB1555(t) | Translucent ARGB1555通常、アルファチャンネルが2値でなく、グレースケールが分布している場合、「ARGB4444」に変換されますが、これを「ARGB1555」で出力します。アルファチャンネルのグレースケールは2階調化されます。
ARGB4444(t) | Bilevel Translucent ARGB4444通常、アルファチャンネルが2値の場合、ARGB1555に変換されますが、これを「ARGB4444」で出力します。

※たとえば、「ARGB1555」は、アルファチャンネルに1bit、 RGB各チャンネルに5bitずつの階調を持つことをあらわします。

##### Reverse alpha

アルファ値を反転します。

テクスチャの「抜き」の部分が反転します。

##### Manual alpha

チェックされていると、αプレーンが存在していても自動でUseAlphaフラグを立てません。

その場合、UseAlphaフラグを立てるには、マテリアルネームで指定する必要があります。

##### Dither

ディザ処理します。

##### Alpha dither

アルファディザ処理します。

##### Ignore suffix

テクスチャの元データの拡張子を無視して読み込みます。

##### Flip texture

チェックされているとすべてのテクスチャを上下反転します。

##### Auto mipmap

ミップマップ可能なテクスチャを自動的にミップマップに変換します。

##### VQ auto mipmap

VQミップマップ可能なテクスチャを自動的にVQミップマップに変換します。

#### Motion

モーションファイルに関するオプションです。

##### Format

Type A（TRRR） | 総親のノードのみがTranslationを持ち、他のノードはRotationのみを出力するタイプです。
Type B（TRTR） | 全ノードがTransとRotateを持つ形式で出力します。
Type C（TRS） | 全ノードがTrans,Rotate,Scaleを持つ形式で出力します。

##### Keyframe motion

チェックされていると、キーフレームのみのモーションを出力します。

チェックされていない場合は、すべてのデータを出力します。

##### Interpolate discontinuous rotations

モーションデータのローテーションの不連続データを補間し、連続するものにします。

すべてのモーションが修正できるものではありません。

Interpolation | [keyframe motion]をチェックしたときに現われます。
Linear | モーションを線形補間します。
Spline | モーションをスプライン補間します。

##### Print translation data even if constant

##### Print rotation data even if constant

##### Print scale data even if constant

デフォルトでは、シーン中でまったく変化のないオブジェクトのリストにNULLが出力されます。

つまり、それ自体はモーションしないオブジェクトとなります（オブジェクト自体がなくなる訳ではありません。また、親子階層は維持されておりますので、親オブジェクトが動けば、子オブジェクトもそれにしたがいます）。

このオプションをチェックすると、モーションしないオブジェクトであってもモーションデータを出力します。

それぞれ、translation、rotation、scaleに対して独立して設定できます。

##### Print all translation keyframes

##### Print all rotation keyframes

##### Print all scale keyframes

デフォルトでは、モーションの各成分においてフレーム間の変化量が一定の場合、そのフレームのモーションををカットします。

このオプションをチェックすると、すべてのフレームを出力します。

それぞれ、translation、rotation、scaleに対して独立して設定できます。

##### Translation epsilon

##### Rotation epsilon

##### Scale epsilon

モーションを読み取る精度値を設定します。

初期値は0.001です。

連続するフレーム間での差が、この値より小さい場合、同じ値として処理されます（つまり、モーションが発生していないと判断されます）。

たとえば、各フレーム間でこの値よりも小さな変化であった場合、前記のオプションにより、そのフレームのモーションデータをカットすることができます。

また、細かなモーションを必要とする場合は数値を小さくすることにより精度を維持できます。

#### Strip

ストリップポリゴンに関するオプションです。

##### Strip Conversion

隣り合ったポリゴンの頂点を共有する「ストリップポリゴン」形式でデータを出力します。

None | ストリップ変換を行いません。
Trigon | 3頂点ポリゴンをストリップポリゴンに変換します。
Tetragon | 4頂点ポリゴンを3頂点ポリゴンに変換し、その変換したポリゴンを含めて3頂点ポリゴンをストリップポリゴンに変換します。
N-gon | N頂点ポリゴンを3頂点ポリゴンに変換し、その変換したポリゴンを含めて3頂点ポリゴンをストリップポリゴンに変換します。
Tetra & N-gon | 4とN頂点ポリゴンを3頂点ポリゴンに変換し、その変換したポリゴンを含めて3頂点ポリゴンをストリップポリゴンに変換します。

#### Shape

シェイプモーションファイルに関するオプション（頂点アニメーション）です。

##### Create shape file

シェイプモーションのデータがあるときに、シェイプファイル（.njs .nas）を出力します。

##### Output shape normal data

シェイプモーションの法線情報を出力します。

#### Scene

シーンファイルに関するオプションです。

##### Out scene information

オブジェクトツリーのルートモデルのtranslation、rotation、scaleがシーンファイル（.nsc）に出力されます。

これは、ワールドマップ用のモデル配置に使います。

#### Camera

カメラに関するオプションです。

##### Create camera file

カメラファイル（.njc .nac）を出力します。

##### Create camera motion file

カメラのモーションファイル（.njm .nam）を出力します。

##### SelectKeys

Keyframes | 設定したキーフレームを出力します。
Ignore Keys | フルフレームデータを出力します。

##### Interpolation

Linear | モーションの補間方法をリニア（直線）にします。
Spline | モーションの補間方法をスプライン（曲線）にします。

##### Optimize

上記の「SelectKeys」で「Ignore Keys」を選択してフルフレームデータ出力を行うときに、フレーム間で変化量がほとんどない場合は、そのフレームのモーションデータをカットします。

カットの判断基準は下記の「Epsilon」値に依存します。

##### Camera Position Epsilon

##### Camera Vector Epsilon

##### Camera Angle Epsilon

上記のカメラモーションデータの「Optimize」において使用される「Epsilon」値を設定します。

#### Light

ライトに関するオプションです。

##### Create light file

ライトファイル（.njl .nal）を出力します。

##### Create light motion file

ライトのモーションファイル（.njm .nam）を出力します。

##### SelectKeys

Keyframes | 設定したキーフレームを出力します。
Ignore Keys | フルフレームデータを出力します。

##### nterpolation

Linear | モーションの補間方法をリニア（直線）にします。
Spline | モーションの補間方法をスプライン（曲線）にします。

##### Optimize

上記の「SelectKeys」で「Ignore Keys」を選択してフルフレームデータ出力を行うときに、フレーム間で変化量がほとんどない場合は、そのフレームのモーションデータをカットします。

カットの判断基準は下記の「Epsilon」値に依存します。

##### Light Position Epsilon

##### Light Vector Epsilon

##### Light Intensity Epsilon

##### Light Angle Epsilon

##### Light Fall Off Range Epsilon

上記のカメラモーションデータの「Optimize」において使用される「Epsilon」値を設定します。

#### ［OK］

エクスポート処理を開始します

#### ［Cancel］

エクスポート処理を行わずに、ダイアログを終了します。

####

4-1-4　出力可能なデータ形式

Ninja Export for LIGHTWAVE 3Dから出力されるファイルは以下のものがあります。

Ninjaライブラリで使用するファイル

（拡張子が2つある場合は、左がバイナリ・データ、右がアスキー・データです。）

ファイルの種類 | 拡張子 | 備 考
シーン・ファイル | .nsc | アスキーファイルで、パスとNJA、NAM、NAS、MRSファイル名で構成されています。このファイルはユーザ側で簡単に変更できます。
モデル・ファイル | .nj .nja | モデル構造体になっています。
モデル・ファイル | .njd .nad | テクスチャリストをセパレートしたものです。
テクスチャ・ファイル | .pvr |
テクスチャリスト・ファイル | .njt .nat | モデル・ファイルからセパレートされたテクスチャリストです。
ライト・ファイル | .njl .nal | ライト構造体になっています。
カメラ・ファイル | .njc .nac | カメラ構造体になっています。
モーション・ファイル | .njm .nam | モーション構造体になっています（モデル、ライト、カメラ共通）。
シェイプモーション・ファイル | .njs .nas | 頂点移動によるモーションです。シェイプ構造体になっています。

その他のファイル

モーションリソース・ファイル | .mrs | モデルの階層構造情報ファイルです。モデル階層構造、移動、回転、拡大などのデータが格納されています。
リソース・ファイル | .nre | 出力オプション設定などです。

出力されるファイルの種類、数は、作成データ、オプション設定によって異なります。

####

4-1-5　テクスチャの抜き

テクスチャによって、ポリゴンの任意の部分を透明、または半透明にできます。

テクスチャ画像作成時にアルファチャンネル（Photoshopの場合、#4を指定します。）にグレースケール、または白黒の２階調画像を含める事で「抜き」を表現できます。

グレースケールの場合は半透明を表現する事ができます。

※Photoshopアルファチャンネル上で、黒くなっている部分が抜けます。

できた画像は、PICまたは、TGA形式で32bitで保存する事により、「PVR Converter」や、「Photoshop PVR Converter」などで変換できます。

または、「Photoshop PVR Converter」で直接出力できますが、出力時に4bitや5bitの階調などに修正されますので、後で画像編集する事を考慮して、PICまたは、TGA形式でも保存しておく事をお勧めします。

このPVRファイルをポリゴンにテクスチャ・マッピングすると、「抜き」が表現できます。（PVRファイル単独のスプライト表示でも抜けます。）

以下の方法でシーンを作成し、「Ninja Export」で出力します。

#### テクスチャに、32bitのTGAファイルを使う。

アルファチャンネルの黒い部分が抜けます。

このやり方では、LIGHTWAVEのレンダリングには反映されませんので注意してください。

#### [Surfaces Panel（色・質感）]の [Transparency]にグレースケール画像（BMP,TGA）を指定する。

グレースケール画像は24bitで使用してください。

白い部分が抜けます（グレースケール画像の階調を反転して、PVRファイルのアルファチャンネルに格納されます）。

このやり方では、LIGHTWAVEのレンダリングとDreamcast上の表示が一致します。

####

4-1-6　シェイプデータ作成方法

シェイプは、頂点移動によってモデルの形状を変えるモーションのことです。この機能はLIGHTWAVEではメタモーフに当たり、メタモーフを使用してシェイプデータを作成します。

LIGHTWAVE上でのシェイプデータ作成方法の詳細を以下に示します。

#### シェイプデータ作成方法

1. オブジェクトA→B→Cと移行するモーフィングを想定します。
2. オブジェクトA、B、Cを作成します。
3. オブジェクトパネルからCurrent objectにオブジェクトAを設定します。
4. Morph Target objectにオブジェクトBを設定します。
5. MorphAmountのE(エンベローブ)ボタンをクリックして、モーフエンベローブを設定します。
6. モーフを開始するキーフレームを作成し、値を0に設定します。
7. モーフを終了するキーフレームを作成し、値を100に設定します。
8. B→Cは、同様に3 〜7を繰り返して下さい。

#### 注意

Ninja-Exportで変換されるシーンは、レイアウト画面右下にある「最初のフレーム」と「最後のフレーム」とで指定されるフレーム範囲に限られます。シェイプを作成するにあたって、「Objects Panel」-「Deformations」でMorph Amountのエンベロープを設定する時に、6と7で作成するキーフレームは、必ず、フレーム範囲内のフレームに設定してください

例

最初のフレーム＝1、最後のフレーム＝30のときには、0と100％のキーを作成できるフレームは1から30までの間ということになります。
最初のフレーム ≦ 0%のキーフレーム ＜ 100%のキーフレーム ≦ 最後のフレーム

また、変形を始めるフレームを調節するためのFrame Offsetの設定は現在サポートされていませんので使用しないでください。代わりに、フレーム0に0％のキー値を設定し、変形を始めたいフレームにも0％の値を持つキーフレームを作成してください。このとき、変形を始めたいフレームはフレーム範囲内でなければなりませんが、フレーム0は、フレーム範囲外であってもかまいません。

フレーム10から変形を始めてフレーム30で完全に変形が完了するエンベロープの例
（フレーム範囲は1から40までとする）

#### Multiple Target/Single Envelopeについて

LIGHTWAVEでメタモーフを行う場合、オブジェクトパネルの「Multiple Target/Single Envelope」をチェックすることで、複数のオブジェクトにわたる変形に対して、先頭のオブジェクトに設定したエンベロープのみで、一連の変形を制御できるようになります。

####

4-1-7　注意事項

#### 全般

- 必ずLIGHTWAVE形式でセーブしてからコンバートしてください。
- 基本的に、特殊なプラグインのデータには対応していません。

#### モデル、モーション

- 凹多角形のポリゴンは使用しないでください。
- LIGHTWAVEでの回転の順番は Y→X→Zです。

#### テクスチャ、マテリアル

- テクスチャに使用できるファイル形式はBMPおよびTGAで、サイズが下記の正方形または長方形です。
  - （ 8，16，32，64，128，256，512，1024 ） pixel
  - （ 8，16，32，64，128，256，512，1024 ） pixel
  ただし、Mipmapにする場合は、1辺512pixel以下の正方形である必要があります。
- テクスチャのファイル名は、半角の英数字としてください。
- 対応しているテクスチャマッピングの種類は、以下の3つです。
  - プラーナーイメージマップ
  - シリンダリカルイメージマップ
  - スフェリカルイメージマップ
- LIGHTWAVEでのサーフェイス名にアンダーバー（＿）を使わないでください。
  詳細は「第3章 ファイルフォーマット」のNinjaアトリビュートを参照してください。

[←] | [INDEX] | [→]