Add support for Texture2DArray

This commit is contained in:
VaDiM
2024-02-27 22:17:24 +03:00
parent ec7f2c393d
commit 0f9afa60d7
20 changed files with 1321 additions and 134 deletions

View File

@ -349,7 +349,7 @@ namespace AssetStudioGUI
if (e.Control)
{
var need = false;
if (lastSelectedItem?.Type == ClassIDType.Texture2D)
if (lastSelectedItem?.Type == ClassIDType.Texture2D || lastSelectedItem?.Type == ClassIDType.Texture2DArrayImage)
{
switch (e.KeyCode)
{
@ -810,8 +810,12 @@ namespace AssetStudioGUI
switch (assetItem.Type)
{
case ClassIDType.Texture2D:
case ClassIDType.Texture2DArrayImage:
PreviewTexture2D(assetItem, assetItem.Asset as Texture2D);
break;
case ClassIDType.Texture2DArray:
PreviewTexture2DArray(assetItem, assetItem.Asset as Texture2DArray);
break;
case ClassIDType.AudioClip:
PreviewAudioClip(assetItem, assetItem.Asset as AudioClip);
break;
@ -870,6 +874,16 @@ namespace AssetStudioGUI
}
}
private void PreviewTexture2DArray(AssetItem assetItem, Texture2DArray m_Texture2DArray)
{
assetItem.InfoText =
$"Width: {m_Texture2DArray.m_Width}\n" +
$"Height: {m_Texture2DArray.m_Height}\n" +
$"Graphics Format: {m_Texture2DArray.m_Format}\n" +
$"Texture Format: {m_Texture2DArray.m_Format.ToTextureFormat()}\n" +
$"Texture count: {m_Texture2DArray.m_Depth}";
}
private void PreviewTexture2D(AssetItem assetItem, Texture2D m_Texture2D)
{
var image = m_Texture2D.ConvertToImage(true);