コンテンツにスキップ

Unity Windows

Hive SDK Unity Windowsアプリ開発には、開発後にアプリをビルドする際に以下の設定が必要です。

ビルドの事前設定

Windowsプロジェクトをビルドする前に、エディタのファイル > ビルド設定...で以下の設定を構成してください:

  1. ビルドの設定:
    • 対象OS: Windows
    • アーキテクチャ: x86_64
    • Visual Studioソリューションを生成 (ビルド方法は選択されているかどうかによります)
  2. プレイヤーの設定: ビルド設定ウィンドウの左下にあるPlayer Settings...ボタンを押すか、インスペクタウィンドウのPlayerカテゴリで設定できます。
    • スクリプトバックエンド: IL2CPP
    • API互換性レベル: .NET Standard 2.1
    • Windows用自動グラフィックスAPI: Direct3D11またはOpenGLCore
  3. HIVE_PLUGIN.dllファイルの設定: 下の画像を参照し、インスペクタウィンドウのAssets\Hive_SDK_v4\Plugins\WindowsフォルダにHIVE_PLUGIN.dllファイルを設定します。

ビルド構成

ビルド構成中にVisual Studio ソリューションを生成が選択されているかどうかに応じて、以下のオプション 1.またはオプション 2.のいずれかに進んでください。

オプション 1. Visual Studio ソリューション生成: 偽

  1. エディタのプロジェクト内にAssets\Plugins\Windows\res\hive_config.xmlファイルを準備します。
  2. Hive SDKの追加ファイル(.dll, .pak, .binなどのリソースファイル)は、Assets\Hive_SDK_v4\Editor\HivePostprocess.csによって、Unity Buildによって生成された実行可能ファイルがあるフォルダにコピーされます。コピーされない場合は、以下のように手動でコピーしてください:
    • Assets\Hive_SDK_v4\Plugins\desktop\hive_string → [Executable Folder]\resources\hive_string
    • Assets\Hive_SDK_v4\Plugins\Windows\additional → [Executable Folder](.metaファイルを除く)
    • Assets\Plugins\Windows\res\hive_config.xml → [Executable Folder]\resources\hive_config.xml
  3. 前のステップでファイルを手動でコピーした場合は、[Executable Folder]\hive-sdk-resフォルダ内の内容を[Executable Folder]\resourcesフォルダに移動します。
    • [Executable Folder]\hive-sdk-resからすべての内容を移動した場合は、hive-sdk-resフォルダを削除できます。
  4. Assets\Hive\SDK\v4\Editor\HivePostprocess.csスクリプトは、プロジェクトで指定されたバージョンを使用してバージョンを設定します。実行可能ファイルのバージョンが変更されていない場合は、CMDまたはPowerShellからAssets\Hive\SDK\v4\Plugins\Windows\postBuildUtil\rcedit.exeを実行して手動で変更します
    • 例のコマンドライン: rcedit.exe "D:\Hive\SDK\UnityPlugin\Sample\b\Hive\SDK\v4\Unity.exe" --set-product-version 1.0.3 --set-file-version 1.0.3
    • 例の結果:

オプション2. Visual Studioソリューションの生成: True

希望するフォルダーにWindowsターゲットのUnityビルドを実行し、ビルド前の設定で構成された環境を使用します。

ビルド後の設定

このセクションでは、Hive SDK Unity Windows アプリをビルドした後に必要な設定について説明します。Unity ビルドが完了すると、次のファイルが生成されます。

  • ビルド
  • Il2CppOutputProject
  • [プロジェクト名] フォルダー
  • UnityPlayerStub
  • [プロジェクト名].sln
  • UnityCommon.props
  • locales
  • resources
  • swiftshader
  • .dll
  • cef.subprocess.exe
  • .pak
  • .bin
  • icudtl.dat

バージョン設定

バージョンは、WindowsPlayerVersion.rcファイル内のFILEVERSIONPRODUCTVERSIONを変更することで設定できます。変更されたバージョンは、Hiveサーバーとの通信時にappversion情報として使用されます。

Visual StudioビルドとHive SDKコピー

  1. Visual Studioでslnを開くと、ビルド中にbuild\bin\x64\Debug(またはMaster)フォルダーに実行可能ファイルが作成されます。
  2. Visual Studio 2019でUnity 2018.4.17の結果を実行する場合、Retarget Solutionプロセスが必要です。
  3. Unityビルド中に作成されたフォルダーから、実行可能ファイルと同じフォルダーにファイルをコピーします。ただし、[プロジェクト名_Data].slnUnityCommon.propsは除きます。
  4. 同様にlocalesresources、およびswiftshaderフォルダーをコピーします。
  5. プロジェクトに合わせてhive_config.xmlの内容を修正し、実行可能ファイルの下にあるresourcesフォルダー内の場所を指定します。(Appid、Google関連、Facebook関連)
  6. ゲームがhive_config.xmlに入力された市場値を必要とする場合、Hiveストアの市場コードであるHSを入力します。(ただし、hive_config.xmlに入力された市場値は実際のサービスには影響しません。)
  7. build\bin\プロジェクト名_Dataフォルダーを実行可能ファイルがあるフォルダーにコピーします。

  8. build\bin[プロジェクト名_データ]\plugins内のファイル(.dll)は重複しているため、削除できます。

  9. 追加の.dllやリソースをbuild\bin[プロジェクト名_データ]\pluginsに配置することは部分的に可能ですが、動作しない機能があるため、実行可能ファイルがあるフォルダーにコピーして使用します。
Note

Redistributable packages は、開発者のPC以外の環境で必要です。
デバッグモードでビルドする場合、再配布可能パッケージのデバッグ版DLLが必要です:vccorlib140d.dll, vcruntime140d.dll, cruntime140_1d.dll, ucrtbased.dll, msvcp140d.dll, concrt140d.dl

使用されていないXMLファイルの削除

もしUnityパッケージを介してHive SDK Unityをインストールまたは更新した場合は、Hive SDKマネージャーではなく、アプリをビルドする前に以下のパスにあるすべてのHIVESDK_{library_name}Dependencies.xmlファイルを削除する必要があります。

  • Assets/Hive_SDK_v4/Dependencies
  • Assets/Hive_SDK_v4/Editor

削除されるファイルの例は以下の通りです:

  • HIVESDK_DefaultDependencies.xml
  • HIVESDK_HerculesDependencies.xml
  • HIVESDK_HiveAnalyticsConsentModeDependencies.xml
  • HIVESDK_HiveDataStoreDependencies.xml
  • HIVESDK_HiveDeviceManagementDependencies.xml
  • HIVESDK_HiveGoogleInAppReviewDependencies.xml
  • HIVESDK_HiveGoogleInAppUpdateDependencies.xml
  • HIVESDK_HivePromotionDependencies.xml
  • HIVESDK_HiveRealNameVerificationDependencies.xml
  • HIVESDK_MarketAmazonDependencies.xml
  • HIVESDK_MarketAppleDependencies.xml
  • HIVESDK_MarketGoogleDependencies.xml
  • HIVESDK_MarketHiveStoreDependencies.xml
  • HIVESDK_MarketHuaweiDependencies.xml
  • HIVESDK_MarketLebiDependencies.xml
  • HIVESDK_MarketOneStoreDependencies.xml
  • HIVESDK_MarketSamsungDependencies.xml
  • HIVESDK_ProviderAdjustDependencies.xml
  • HIVESDK_ProviderAppleDependencies.xml
  • HIVESDK_ProviderAppleSignInDependencies.xml
  • HIVESDK_ProviderAppsFlyerDependencies.xml
  • HIVESDK_ProviderFacebookDependencies.xml
  • HIVESDK_ProviderFirebaseDependencies.xml
  • HIVESDK_ProviderGoogleDependencies.xml
  • HIVESDK_ProviderGooglePlayGamesDependencies.xml
  • HIVESDK_ProviderHiveMembershipDependencies.xml
  • HIVESDK_ProviderHuaweiDependencies.xml
  • HIVESDK_ProviderLineDependencies.xml
  • HIVESDK_ProviderQQDependencies.xml
  • HIVESDK_ProviderRecaptchaDependencies.xml
  • HIVESDK_ProviderSingularDependencies.xml
  • HIVESDK_ProviderVKDependencies.xml
  • HIVESDK_ProviderWechatDependencies.xml
  • HIVESDK_ProviderWeverseDependencies.xml
  • HIVESDK_PushAmazonAdmDependencies.xml
  • HIVESDK_PushGoogleFcmDependencies.xml