A collection of tools for managing and converting NcEngine assets, or .nca files.
NcTools consists of two projects: the NcAsset library for importing .nca
asset files, and the nc-convert command line utility for converting asset
files to the .nca format.
To use NcAsset, simply call the appropriate import function, and provide the
path to the .nca file you want to import:
#include "ncasset/Import.h"
auto myTexture = nc::asset::ImportTexture("path/to/texture.nca");nc-convert is used to convert various file types to the .nca format, which is
required by NcAsset. Here's an example of converting a single file to an .nca:
> nc-convert -t mesh -s path/to/input.fbx -n myMesh -o outDir
The asset type, source file, and output asset name must be supplied with the -t, -s, and -n flags, respectively. Optionally, and output directory may be given with -o.
You can also use a JSON manifest file to convert many files at once:
{
"globalOptions": {
"outputDirectory": "./",
"workingDirectory": "./"
},
"mesh": [
{
"sourcePath": "path/to/mesh1.fbx",
"assetNames": [
{
"subResourceName" : "mesh1head",
"assetName" : "head"
},
{
"subResourceName" : "mesh1shoulders",
"assetName" : "shoulders"
}
]
},
{
"sourcePath": "path/to/mesh2.fbx",
"assetName": "mesh2"
}
],
"texture": [
{
"sourcePath": "path/to/texture.png",
"assetName": "myTexture"
}
]
}> nc-convert -m manifest.json
nc-convert will skip files that are already up-to-date when using a manifest.
Relative paths within globalOptions are interpreted relative to the manifest.
For more information, see the help text for nc-convert and the docs on input file
requirements and .nca formats
NcCommon is a public dependency of NcAsset. The following third-party libraries are used internally by nc-convert: Assimp, AudioFile, and stb.
Default: OFF
Build the nc-convert executable.
Default: OFF
Build tests
Default: OFF
Enable static analysis (MSVC Only)