Esempio n. 1
0
 IZ_INT CSysUtil::GetExecuteFilePath(char* path, size_t pathBufSize)
 {
     // 実行プログラムのフルパスを取得
     DWORD result = ::GetModuleFileName(
                     IZ_NULL,
                     path,
                     pathBufSize);
     VRETURN_VAL(result > 0, 0);
     
     return result;
 }
Esempio n. 2
0
    // 指定した接続先にデータを送信.
    IZ_INT Udp::sendTo(
        const void* data,
        IZ_UINT size,
        IPv4Endpoint& remoteEp)
    {
        IZ_ASSERT(isValidSocket(m_socket));
        VRETURN_VAL(remoteEp != m_host, 0);

        sockaddr_in addr;
        remoteEp.get(addr);

        IZ_INT ret = sendto(
            m_socket,
            (const char*)data,
            size,
            0,
            (sockaddr*)&addr,
            sizeof(addr));

        return ret;
    }
Esempio n. 3
0
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;
}