Go to file
2023-12-16 23:11:27 +03:00
.github/workflows Create build.yml 2022-11-17 04:22:06 +03:00
AssetStudio Update ver to v1.1.0 2023-12-16 23:11:27 +03:00
AssetStudio.PInvoke Update ver to v1.1.0 2023-12-16 23:11:27 +03:00
AssetStudioCLI Update ver to v1.1.0 2023-12-16 23:11:27 +03:00
AssetStudioFBXNative Add CMakeLists for cross platform FBXNative build 2023-08-31 21:03:07 +01:00
AssetStudioFBXWrapper Update ver to v1.1.0 2023-12-16 23:11:27 +03:00
AssetStudioGUI Update ver to v1.1.0 2023-12-16 23:11:27 +03:00
AssetStudioUtility Update ver to v1.1.0 2023-12-16 23:11:27 +03:00
Texture2DDecoderNative Texture2DDecoderNative - Linux/macOS compatibility fix 2021-12-15 02:49:28 +02:00
Texture2DDecoderWrapper Update ver to v1.1.0 2023-12-16 23:11:27 +03:00
.gitattributes Initial commit 2015-10-30 04:41:37 +02:00
.gitignore Add AssetStudioCLI project 2023-03-07 06:52:33 +03:00
AssetStudio.sln Add AssetStudioCLI project 2023-03-07 06:52:33 +03:00
CHANGELOG.md Update ver to v1.1.0 2023-12-16 23:11:27 +03:00
LICENSE [GUI] Add "About" window & update titles 2023-05-13 12:46:43 +03:00
README.md Merge branch 'AssetStudioMod' into ArknightsStudio 2023-12-16 22:57:32 +03:00

ArknightsStudio

Build status

ArknightsStudio is a modified version of AssetStudio designed for Arknights. Based on AssetStudioMod.

Neither the repository, nor the tool, nor the author of the tool, nor the author of the modification is affiliated with, sponsored, or authorized by Unity Technologies or its affiliates.

ArknightsStudio Features

  • CLI version (for Windows, Linux, Mac)
    • Animator and AnimationClip assets are not supported in the CLI version
  • Support of sprites with alpha texture
  • Support of portrait sprites
  • Correct support of avg character sprites
  • Correct support of character art sprites

Requirements

CLI Usage

You can read CLI readme here.

Run

  • Command-line: ArknightsStudioCLI <asset folder path>
  • Command-line for Portable versions (.NET 6+): dotnet ArknightsStudioCLI.dll <asset folder path>

Basic Samples

  • Show a list with a number of assets of each type available for export
ArknightsStudioCLI <asset folder path> -m info
  • Export assets of all supported for export types
ArknightsStudioCLI <asset folder path>
  • Export assets of specific types
ArknightsStudioCLI <asset folder path> -t sprite
ArknightsStudioCLI <asset folder path> -t tex2d,sprite,audio
  • Export portrait sprites
ArknightsStudioCLI <asset folder path> -t akPortrait
  • Export assets grouped by type
ArknightsStudioCLI <asset folder path> -g type
  • Export assets to a specified output folder
ArknightsStudioCLI <asset folder path> -o <output folder path>
  • Dump assets to a specified output folder
ArknightsStudioCLI <asset folder path> -m dump -o <output folder path>
  • Export assets and create a log file
ArknightsStudioCLI <asset folder path> --log-output both
  • Export all FBX objects (similar to "Export all objects (split)" option in the GUI)
ArknightsStudioCLI <asset folder path> -m splitObjects

When running in splitObjects mode you can only specify -o, --log-level, --log-output, --export-asset-list, --image-format, --filter-by-name and --unity-version options. Any other options will be ignored.

Advanced Samples

  • Export image assets converted to webp format to a specified output folder
ArknightsStudioCLI <asset folder path> -o <output folder path> -t sprite,akPortrait,tex2d --image-format webp
  • Export avg character sprites with aliases in their names
ArknightsStudioCLI <asset folder path> -t sprite --add-aliases
  • Export character art sprites without brightness change of semi-transparent shadow for 2048x2048 images
ArknightsStudioCLI <asset folder path> -t sprite --shadow-gamma 0
  • Show the number of audio assets that have "voice" in their containers
ArknightsStudioCLI <asset folder path> -m info -t audio --filter-by-container voice
  • Export audio assets that have "voice" in their containers
ArknightsStudioCLI <asset folder path> -t audio --filter-by-container voice
  • Export audio assets that have "music" or "voice" in their containers
ArknightsStudioCLI <asset folder path> -t audio --filter-by-container music,voice
ArknightsStudioCLI <asset folder path> -t audio --filter-by-container music --filter-by-container voice
  • Export audio assets that have "char" in their names or containers
ArknightsStudioCLI <asset folder path> -t audio --filter-by-text char
  • Export audio assets that have "loop" in their names and "music" in their containers
ArknightsStudioCLI <asset folder path> -t audio --filter-by-name loop --filter-by-container music
  • Export FBX objects that have "model" or "scene" in their names and set the scale factor to 10
ArknightsStudioCLI <asset folder path> -m splitObjects --filter-by-name model,scene --fbx-scale-factor 10
  • Load assets of all types and show them (similar to "Display all assets" option in the GUI)
ArknightsStudioCLI <asset folder path> -m info --load-all
  • Load assets of all types and dump Material assets
ArknightsStudioCLI <asset folder path> -m dump -t material --load-all

GUI Usage

Load Assets/AssetBundles

Use File->Load file or File->Load folder.

When ArknightsStudio loads AssetBundles, it decompresses and reads it directly in memory, which may cause a large amount of memory to be used. You can use File->Extract file or File->Extract folder to extract AssetBundles to another folder, and then read.

Extract/Decompress AssetBundles

Use File->Extract file or File->Extract folder.

Export Assets

Use Export menu.

Export Model

Export model from "Scene Hierarchy" using the Model menu.

Export Animator from "Asset List" using the Export menu.

With AnimationClip

Select model from "Scene Hierarchy" then select the AnimationClip from "Asset List", using Model->Export selected objects with AnimationClip to export.

Export Animator will export bound AnimationClip or use Ctrl to select Animator and AnimationClip from "Asset List", using Export->Export Animator with selected AnimationClip to export.

Build

  • Visual Studio 2022 or newer
  • AssetStudioFBXNative uses FBX SDK 2020.2.1, before building, you need to install the FBX SDK and modify the project file, change include directory and library directory to point to the FBX SDK directory

Open source libraries used

Texture2DDecoder