add support for DXGI_FORMAT_BC6H_UF16

This commit is contained in:
Timothy Baldridge 2019-10-06 20:14:51 -06:00
parent 817576d085
commit af05894ae3
3 changed files with 9 additions and 3 deletions

View File

@ -13,11 +13,11 @@ namespace Compression.BSA.Test
private static void Main(string[] args)
{
foreach (var bsa in Directory.EnumerateFiles(TestDir, "*.ba2", SearchOption.AllDirectories).Skip(1))
foreach (var bsa in Directory.EnumerateFiles(TestDir, "*.ba2", SearchOption.AllDirectories).Skip(0))
{
Console.WriteLine($"From {bsa}");
Console.WriteLine("Cleaning Output Dir");
//if (Directory.Exists(TempDir)) Directory.Delete(TempDir, true);
if (Directory.Exists(TempDir)) Directory.Delete(TempDir, true);
Directory.CreateDirectory(TempDir);
Console.WriteLine($"Reading {bsa}");

View File

@ -85,6 +85,8 @@ namespace Compression.BSA
case EntryType.DX10:
files.Add(new BA2DX10Entry(this));
break;
case EntryType.GNMF:
break;
}
}
@ -164,6 +166,7 @@ namespace Compression.BSA
case DXGI_FORMAT.DXGI_FORMAT_BC3_UNORM_SRGB:
case DXGI_FORMAT.DXGI_FORMAT_BC4_UNORM:
case DXGI_FORMAT.DXGI_FORMAT_BC5_SNORM:
case DXGI_FORMAT.DXGI_FORMAT_BC6H_UF16:
case DXGI_FORMAT.DXGI_FORMAT_BC7_UNORM:
case DXGI_FORMAT.DXGI_FORMAT_BC7_UNORM_SRGB:
return DDS_HEADER_DXT10.Size + DDS_HEADER.Size;
@ -251,6 +254,7 @@ namespace Compression.BSA
ddsHeader.dwPitchOrLinearSize = (uint)(_width * _height / 2); // 4bpp
break;
case DXGI_FORMAT.DXGI_FORMAT_BC3_UNORM_SRGB:
case DXGI_FORMAT.DXGI_FORMAT_BC6H_UF16:
case DXGI_FORMAT.DXGI_FORMAT_BC4_UNORM:
case DXGI_FORMAT.DXGI_FORMAT_BC5_SNORM:
case DXGI_FORMAT.DXGI_FORMAT_BC7_UNORM:
@ -298,6 +302,7 @@ namespace Compression.BSA
case DXGI_FORMAT.DXGI_FORMAT_BC3_UNORM_SRGB:
case DXGI_FORMAT.DXGI_FORMAT_BC4_UNORM:
case DXGI_FORMAT.DXGI_FORMAT_BC5_SNORM:
case DXGI_FORMAT.DXGI_FORMAT_BC6H_UF16:
case DXGI_FORMAT.DXGI_FORMAT_BC7_UNORM:
case DXGI_FORMAT.DXGI_FORMAT_BC7_UNORM_SRGB:
var dxt10 = new DDS_HEADER_DXT10()
@ -346,7 +351,7 @@ namespace Compression.BSA
private uint _align;
private BA2Reader _bsa;
private bool Compressed => this.Size != 0;
private bool Compressed => _size != 0;
public BA2FileEntry(BA2Reader ba2Reader)
{

View File

@ -62,6 +62,7 @@ namespace Compression.BSA
DXGI_FORMAT_BC5_SNORM = 84,
DXGI_FORMAT_B8G8R8A8_UNORM = 87,
DXGI_FORMAT_B8G8R8X8_UNORM = 88,
DXGI_FORMAT_BC6H_UF16 = 95,
DXGI_FORMAT_BC7_UNORM = 98,
DXGI_FORMAT_BC7_UNORM_SRGB = 99
}