##### Ninjaライブラリ - テクスチャ構造体

# NJS_TEXNAME

テクスチャの名称を設定

### 定義

      typedef struct {
              void    *filename;
              Uint32  attr;
              Uint32  texaddr;
      } NJS_TEXNAME;

### メンバ

  *filename | ファイル名
  attr | アトリビュート
  texaddr | テクスチャアドレス

### 解説

  登録するテクスチャのファイル名、アトリビュート、グローバルインデックスを設定する構造体です。

  メンバ *filenameは、ファイルテクスチャの場合ファイル名が入りますが、メモリテクスチャの場合 NJS_TEXINFO構造体のアドレスが入ります。

  アトリビュートを示すメンバ attr の各ビットは次の意味を持ちます。

  31 | 0:キャッシュテクスチャ非登録／1:キャッシュテクスチャ登録
  30 | 0:ファイルからテクスチャロード／1:メモリからテクスチャロード
  29 | 0:テクスチャメモリのみ登録／1:キャッシュ、テクスチャメモリの両方に登録
  28〜25 | 予約領域
  24 | 1：パレットグローバルインデックスフラグ
  23 | 1：グローバルインデックスフラグ
  22〜21 | 予約領域
  16 | テクスチャコンティニューフラグ
  15〜0 | PVMエントリID保存に使用

  具体的には次のようになります。

  ・テクスチャメモリにのみロードする場合は31,29ビットを0にする。
  ・キャッシュメモリにのみロードする場合は31ビットを1にする。
  ・キャッシュ、テクスチャメモリの両方にロードする場合には 29ビットを1にする。

  メンバ texaddrは、テクスチャロード時にテクスチャアトリビュートにグローバルインデックスフラグ、 又はパレットグローバルインデックスフラグを指定する場合、 グローバルインデックス値、パレットバンク値が入ります。 通常、njSetTextureName()関数でセットされます。

  テクスチャロード後はNJS_TEXMEMLIST構造体へのアドレスが設定されます。 グローバルインデックスフラグ、パレットグローバルインデックス使用時に、 テクスチャリリース後にもう一度テクスチャをロードするような場合は、 グローバルインデックス値を再度設定する必要があります。

### 参照

  njCalcTexture()
  njDrawTexture()
  njDrawTextureMemList()
  njExitTexture()
  njInitCacheTextureBuffer()
  njInitTexture()
  njInitTextureBuffer()
  njLoadCacheTexture()
  njLoadCacheTextureNum()
  njLoadCacheTextureNumG()
  njLoadTexture()
  njLoadTextureNum()
  njLoadTexturePvmFile()
  njLoadTexturePvmMemory()
  njReleaseCacheTextureAll()
  njReleaseCacheTextureNum()
  njReleaseCacheTextureNumG()
  njReleaseTexture()
  njReleaseTextureAll()
  njReleaseTextureNum()
  njReleaseTextureNumG()
  njSetPvmTextureList()
  njSetTexture()
  njSetTextureInfo()
  njSetTextureName()
  njSetTextureNum()
  njSetTextureNumG()

NJS_TEXNAME

COPYRIGHT © SEGA ENTERPRISES, LTD., 1998