Official BIS tools: TexView 2

ArmA editing, missions, modeling, textures, terrains

Moderators: Lone Wolf, Snake Man

Snake Man
Commander-In-Chief
Posts: 9351
Joined: 2000-07-31 22:01:01
Gaming Interests: ArmA, ArmA 2, Falcon 4.0 and OFP.
Editing Interests: All, I (try) to edit everything.
Location: PMC

Official BIS tools: TexView 2

Post by Snake Man » 2007-07-02 12:24:34

Official BIS Tools: TexView 2

Download size 2.1mb zip (would be 1.1mb rar).
Executable installer with license agreement.

Install comes with new Pal2PacE.exe, readme.txt, TexConvert.cfg and TexView2.exe program itself.

TexConvert.cfg:

Code: Select all

convertVersion=6;
class TextureHints
{

  class ColorMap
  {
    name = "*_co.*";
    format = "DXT1";
    dynRange = 1;  
  };
  class ColorMapRaw
  {
    name = "*_raw.*";
    format = "ARGB1555";
    dynRange = 0;
  };
  class ColorAlphaMap
  {
    name = "*_ca.*";
    format = "DXT5";
    dynRange = 1;  
  };
  class ColorAlphaTest
  {
    name = "*_cat.*";
    format = "DXT5";
    dynRange = 1;  
    mipmapFilter = AlphaNoise;
  };
  class sky
  {
    name = "*_sky.*";
    format = "DXT5";
    // file (physical) = memory (logical)
    channelSwizzleR = "R";
    channelSwizzleG = "1-A";
    channelSwizzleB = "B";
    channelSwizzleA = "1-G";
    // we could prefer B by moving it to G
//    channelSwizzleR = "R";
//    channelSwizzleG = "B";
//    channelSwizzleB = "1-A";
//    channelSwizzleA = "1-G";
    dynRange = 0;
  };
  class detail
  {
    name = "*_detail.*";
    format = "DXT1";
    enableDXT = 1;
    // only alpha channel is used in detail texures
    channelSwizzleR = "A";
    channelSwizzleG = "A";
    channelSwizzleB = "A";
    channelSwizzleA = "1";
    dynRange = 0;
    mipmapFilter = FadeOut;
  };
  class color_detail
  {
    name = "*_cdt.*";
    format = "DXT1";
    enableDXT = 1;
    dynRange = 0;
    mipmapFilter = FadeOut;
  };
  class layer_color
  {
    autoreduce=1;
    name = "*_lco.*";
    format = "DXT1";
    enableDXT = 1;
    dynRange = 0;
  };
  class multiply_color
  {
    autoreduce=1;
    name = "*_mco.*";
    format = "DXT1";
    enableDXT = 1;
    dynRange = 0;
  };
  class layer_color_draft
  {
    name = "*_draftlco.*";
    enableDXT = 0;
    dynRange = 0;
  };
  class layer_color_alpha
  {
    name = "*_lca.*";
    format = "DXT5";
    enableDXT = 1;
    dynRange = 0;
  };
  class macro
  {
    name = "*_mc.*";
    format = "DXT5";
    enableDXT = 1;
    dynRange = 0;
  };
  class ambient_shadow
  {
    name = "*_as.*";
    format = "DXT1";
    enableDXT = 1;
    channelSwizzleR = "1"; 
    channelSwizzleG = "G"; 
    channelSwizzleB = "1";
    channelSwizzleA = "1"; 
    dynRange = 0;
  };
  class specular_map
  {
    name = "*_sm.*";
    format = "DXT1";
    enableDXT = 1;
    channelSwizzleR = "R"; 
    channelSwizzleG = "G"; 
    channelSwizzleB = "B";
    channelSwizzleA = "1"; 
    dynRange = 0;
  };
  class specular_diffuseinverse_map
  {
    name = "*_smdi.*";
    format = "DXT1";
    enableDXT = 1;
    channelSwizzleR = "1"; 
    channelSwizzleG = "G"; 
    channelSwizzleB = "B";
    channelSwizzleA = "1"; 
    dynRange = 0;
  };
  class detail_short: detail
  {
    name = "*_dt.*";
  };
  class normalmap
  {
    name = "*_normalmap.*";
    enableDXT = 1;
    // alpha channel can be used to contain opacity
    mipmapFilter = NormalizeNormalMapAlpha;
    dynRange = 0;
    errorMetrics=Distance;
  };

  class normalmap_short: normalmap
  {
    name = "*_no.*";
    format = "DXT1";
    channelSwizzleA = "1";
  };
  class normalmap_uncompressed: normalmap
  {
    name = "*_noex.*";
    enableDXT = 0;
  };

  class NormalMapNoise
  {
    name = "*_non.*";
    format = "DXT5";
    // alpha channel can be used to contain opacity
    mipmapFilter = NormalizeNormalMapNoise;
    dynRange = 0;
    errorMetrics=Distance;
  };

  /// DXT5 compressed normal map
  class normalmap_hq
  {
    name = "*_nohq.*";
    format = "DXT5";
    // negate is used on B channel so that it can used in the same shader as DXT1
    channelSwizzleA = "1-R";
    channelSwizzleR = "1-A";
    channelSwizzleG = "G";
    channelSwizzleB = "B";
    dynRange = 0;
    errorMetrics=Distance;
    // alpha channel (before swizzle) can be used to contain opacity
    mipmapFilter = NormalizeNormalMapAlpha;
  };
  /// DXT5 2-component compressed normal map
  class normalmap_vhq
  {
    name = "*_novhq.*";
    format = "DXT5";
    // negate is used on B channel so that it can used in the same shader as DXT1
    channelSwizzleA = "1-R";
    channelSwizzleR = "1";
    channelSwizzleG = "G";
    channelSwizzleB = "1";
    dynRange = 0;
    errorMetrics=Distance;
    // alpha channel (before swizzle) can be used to contain opacity
    mipmapFilter = NormalizeNormalMapAlpha;
  };
  
  class normalmap_hq_fade: normalmap_hq
  {
    name = "*_nofhq.*";
    mipmapFilter = NormalizeNormalMapFade;
  };

  class normalmapFade
  {
    name = "*_nof.*";
    enableDXT = 1;
    mipmapFilter = NormalizeNormalMapFade;
    dynRange = 0;
    errorMetrics=Distance;
  };
  class normalmapFade_uncompressed : normalmapFade
  {
    name = "*_nofex.*";
    enableDXT = 0;
  };
  class normalmap_spec
  {
    name = "*_ns.*";
    enableDXT = 1;
    mipmapFilter = NormalizeNormalMap;
    dynRange = 0;
    errorMetrics=Distance;
  };
  class normalmap_parallax
  {
    name = "*_nopx.*";
    format = "DXT5";
    enableDXT = 1;
    mipmapFilter = NormalizeNormalMap;
    dynRange = 0;
    // negate is used on B channel so that it can used in the same shader as DXT1
    channelSwizzleA = "1-R"; // normal X
    channelSwizzleR = "A"; // height field
    channelSwizzleG = "G"; // normal Y
    channelSwizzleB = "1"; // discard normal Z
//    channelSwizzleA = "A"; // height field
//    channelSwizzleR = "R"; // normal X
//    channelSwizzleG = "G"; // normal Y
//    channelSwizzleB = "1"; // drop normal Z
    errorMetrics=Distance;
  };

  class normalmap_spec_uncompressed: normalmap_spec
  {
    name = "*_nsex.*";
    enableDXT = 0;
  };
  class normalmap_spec_hq: normalmap_hq
  {
    name = "*_nshq.*";
  };
  
  class grayscalealpha
  {
    name = "*_gs.*";
    format="AI88";
  };
  
};

/*
Possible format values:
Default, P8, ARGB4444, ARGB1555, AI88, DXT1, DXT2, DXT3, DXT4, DXT5

Possible mipmapFilter values:
Default, FadeOutAlpha, NormalizeNormalMap
*/
I find it unecessary to have such small util installed via executable installer, the old tools came out without any installers which was fine. This also modifies registry HKEY_LOCAL_MACHINE\Software\BIStudio\TextureConvert value.

Registry values:

Code: Select all

[HKEY_LOCAL_MACHINE\SOFTWARE\BIStudio]

[HKEY_LOCAL_MACHINE\SOFTWARE\BIStudio\TextureConvert]
"MAIN"="G:\\ArmA.edit\\Tools\\TexView2"
"configPath"="G:\\ArmA.edit\\Tools\\TexView2\\texconvert.cfg"
PMC Tactical Forum New User Registration please read new info here.

PMC since 1984

Editing knowledge, visit PMC Editing Wiki
The leading, most detailed and comprehensive modification made for the Vietnam War - Vietnam: The Experience homepage
View our videos in PMC Youtube channel

PMC Tactical forum Advanced Search is power.

"ALPHA BLACK TO PAPA BEAR. ALL RUSSIANS ARE TOAST. OVER."

Who is online

Users browsing this forum: ClaudeBot [Bot] and 0 guests