本文整理汇总了C++中COption::IsValid方法的典型用法代码示例。如果您正苦于以下问题:C++ COption::IsValid方法的具体用法?C++ COption::IsValid怎么用?C++ COption::IsValid使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类COption
的用法示例。
在下文中一共展示了COption::IsValid方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: main
int main(int argc, char* argv[])
{
COption option;
// オプション解析
if (!option.Analysis(argc, argv)) {
_DispUsage();
return INVALID_RET_VAL;
}
// オプションチェック
if (!option.IsValid()) {
_DispUsage();
return INVALID_RET_VAL;
}
IImporter::SetEnableTexIdx(option.idxEnableTex);
IImporter::SetShaderName(option.nameShader.c_str());
// インポーター作成
IImporter* importer = IImporter::CreateImporter(option.modelType);
#ifdef ENABLE_FBX_IMPORT
if (importer == IZ_NULL && option.modelType == ModelType::ModelTypeFBX) {
importer = new CFbxImporter();
}
#endif
// 入力ファイルを開く
VRETURN_VAL(
importer->Open(option.in.c_str()),
INVALID_RET_VAL);
static IZ_CHAR tmp[MAX_PATH];
// マテリアル数を取得
IZ_UINT mtrlNum = importer->GetMaterialNum();
if (mtrlNum == 0) {
// 何もしない
// マテリアルが存在しないことを出力
printf("There is not material in %s\n", option.in.c_str());
}
else if (mtrlNum == 1) {
VRETURN_VAL(
CMtrlExporter::GetInstance().Export(
option.out.c_str(),
importer,
0),
INVALID_RET_VAL);
}
else {
// 出力ファイル名から拡張子を取り除く
VRETURN_VAL(
option.RemoveExtFromExportFileName(),
INVALID_RET_VAL);
for (IZ_UINT i = 0; i < mtrlNum; i++) {
// 出力ファイル名を作成
sprintf_s(tmp, sizeof(tmp), "%s_%d.mtrl\0", option.out.c_str(), i);
VRETURN_VAL(
CMtrlExporter::GetInstance().Export(
tmp,
importer,
i),
INVALID_RET_VAL);
}
}
return 0;
}