Version: 2019.2
トラブルシューティング
カスタムパッケージの作成

ネットワーク問題

ファイアウォールの設定

Unity Package Manager が HTTPS を使用して以下のドメイン名にアクセスできることを確認します。

  • packages.unity.com
  • download.packages.unity.com
  • upm-cdn.unity.com (中国内では、upm-cdn-china.unitychina.cn)

ファイアウォールの許可ドメインリストに上記のドメイン名を追加します。

プロキシサーバーの設定

プロキシサーバーを使用する場合は、Unityパッケージレジストリに対して要求を実行するときに使用するUnity Package ManagerのHTTP_PROXYおよびHTTPS_PROXY環境変数を構成します。

オペレーティングシステムに応じて、これらの変数(システム変数またはユーザー変数)をグローバルに設定できます。 または、起動時に Unity Hub に対してのみ設定できます。

ファイアウォールの内側の環境に対して、自己署名証明書 の SSL 認証局を設定できます。

自己署名証明書

一部の企業や機関では、ユーザーはファイアウォールに保護されプロキシ経由でのみインターネットにアクセスできます。一部のプロキシは、HTTPS コンテンツを解凍し、独自の自己署名証明書を使って再度パックします。Unity Package Manager の根底にある HTTPS レイヤーはこれらの自己署名証明書を認識しないため拒否し、接続を中間者攻撃の可能性があるものとして扱います。つまり、追加の SSL 認証局を設定してこれらの証明書を許可しない限り、パッケージマネージャーを含む Unity の多くの機能を使用できません。

追加の SSL 認証局を設定するには、以下の手順を行います。

  1. 1 つ以上のカスタム認証局を使用してテキストファイルを作成します。ファイルは、Privacy-Enhanced Mail (PEM) 形式の 1 つ以上の信頼できる証明書で構成する必要があります。以下はその例です。

    -----BEGIN CERTIFICATE-----
    MIIC+zCCAeOgAwIBAgIJAO0U6hVJnbvjMA0GCSqGSIb3DQEBBQUAMBQxEjAQBgNV
    BAMMCWxvY2FsaG9zdDAeFw0xOTAzMTIwMTIxMzRaFw0yOTAzMDkwMTIxMzRaMBQx
    EjAQBgNVBAMMCWxvY2FsaG9zdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
    ggEBAKNh0EM7j57pXorGs5OHzlk9TYeUqITtXXdWfY1fbqRdj+a8qLNs4m/nDsDW
    KgibHYG3FUqIidjPL61DLQuWUPY9Zo+uQaccIe0E5wb+To9mwMlLuhMD6iCPFRpe
    jcDhNj4vG1RVARMO1jupeZqdb+xHBZqtmMJmtiDOBxt662Z4hvoH8mdqNEuSkozz
    HqXmcdigrTO37DspGRBx08GJlHFHUs7C+hYOsOdNjME3dH/8uihjKYiqQb1E12dN
    PNL7jYm3AZv+qUmDFM3BJE0hSmAP00GuTJxbe31Kh4e7N5/XSiLsnqwircOj/Hfi
    eWjtsoXbCNDIiWUQtXBeLD/BdvkCAwEAAaNQME4wHQYDVR0OBBYEFDFw8VDkgMne
    mDjgo+b1iaPfUkdVMB8GA1UdIwQYMBaAFDFw8VDkgMnemDjgo+b1iaPfUkdVMAwG
    A1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAFEjUWGz1r3xSsbwUJsRhbMc
    M7Jjf9/r833H7eq31mbl/JbXPnpo8IctMuWyw42ccMtgq7i+coQeKwvWnHtI5rhe
    vshEkIqNPAoCnpW5NLprYDDTG1PDEhv6FYpW8Alq65i03tptzaoHlH3sH+97E/h0
    qSYI7yNHWMC5u0r1DB0BR+lZsj6RnwWPySMSuXx5sSiKIS/HkkMVwwmxKa4ZwuwS
    LFwHSUdqk0lJK4b0mCwyTHNvYO1IDziE5EKwfuaKVgOa62iCHVahgIVa+een4EfS
    hCCr3M3cq11Mi+mnRi1scxxrOno4OEEChWg2szZLlxBrkVJllrrq620XJ6RLB/8=
    -----END CERTIFICATE-----
    -----BEGIN CERTIFICATE-----
    MIIDtzCCAp+gAwIBAgIQDOfg5RfYRv6P5WD8G/AwOTANBgkqhkiG9w0BAQUFADBl
    MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
    d3cuZGlnaWNlcnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJv
    b3QgQ0EwHhcNMDYxMTEwMDAwMDAwWhcNMzExMTEwMDAwMDAwWjBlMQswCQYDVQQG
    EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNl
    cnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJvb3QgQ0EwggEi
    MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCtDhXO5EOAXLGH87dg+XESpa7c
    JpSIqvTO9SA5KFhgDPiA2qkVlTJhPLWxKISKityfCgyDF3qPkKyK53lTXDGEKvYP
    mDI2dsze3Tyoou9q+yHyUmHfnyDXH+Kx2f4YZNISW1/5WBg1vEfNoTb5a3/UsDg+
    wRvDjDPZ2C8Y/igPs6eD1sNuRMBhNZYW/lmci3Zt1/GiSw0r/wty2p5g0I6QNcZ4
    VYcgoc/lbQrISXwxmDNsIumH0DJaoroTghHtORedmTpyoeb6pNnVFzF1roV9Iq4/
    AUaG9ih5yLHa5FcXxH4cDrC0kqZWs72yl+2qp/C3xag/lRbQ/6GW6whfGHdPAgMB
    AAGjYzBhMA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQW
    BBRF66Kv9JLLgjEtUYunpyGd823IDzAfBgNVHSMEGDAWgBRF66Kv9JLLgjEtUYun
    pyGd823IDzANBgkqhkiG9w0BAQUFAAOCAQEAog683+Lt8ONyc3pklL/3cmbYMuRC
    dWKuh+vy1dneVrOfzM4UKLkNl2BcEkxY5NM9g0lFWJc1aRqoR+pWxnmrEthngYTf
    fwk8lOa4JiwgvT2zKIn3X/8i4peEH+ll74fg38FnSbNd67IJKusm7Xi+fT8r87cm
    NW1fiQG2SVufAQWbqz0lwcy2f8Lxb4bG+mRo64EtlOtCt/qMHt1i8b5QZ7dsvfPx
    H2sMNgcWfzd8qVttevESRmCD1ycEvkvOl77DZypoEd+A5wwzZr8TDRRu838fYxAe
    +o0bJW1sj6W3YQGx0qMmoRBxna3iw/nDmVG3KwcIzi7mULKn+gpFL6Lw8g==
    -----END CERTIFICATE-----
    
  2. Unity はファイルシステム上のすべての場所をサポートしていますが、可能であれば、このファイルを upm-config.json と同じ場所に置きます。

  3. システムレベルの Unity 設定フォルダーに upm-config.json という名前の空の JSON ファイルを作成します。

    • Windows: %ALLUSERSPROFILE%Unity/config
    • macOS: /Library/Application Support/Unity/config
    • Linux: /usr/share/unity3d/config
  4. upm-config.json ファイルで、caFile 属性を加えると、PEM ファイルの絶対パスを設定します。以下はその例です。

    {
      "caFile": "C:\\ProgramData\\Unity\\config\\cert.pem"
    }
    

Unity Hub の環境変数の設定

このセクションでは、WindowsコマンドプロンプトまたはmacOSまたはLinuxターミナルから実行できるコマンドファイルを作成する手順について説明します。 または、コマンドをコピーして、プロンプトウィンドウまたはターミナルウィンドウに直接貼り付けることもできます。

ノート コマンドファイルを実行する前に、Hub を完全に終了してください。Hub が既に実行されている場合、再起動せずに Hub にフォーカスを切り替えます。そのため、変更されたプロキシ設定は適用されません。

Windows

以下の手順で、Windows にコマンドファイルを作成します。

このファイルは、環境変数が設定された状態で Hub を起動します。ファイルをダブルクリックするか、コマンドプロンプトから呼び出すことができます。Unity はこれらの環境変数を、Hub から起動した Unity エディターの処理に渡します。

  1. メモ帳などのテキストエディターを開きます。

  2. 以下のテキストを入力し、proxy-url を正しいプロキシサーバー URL に置き換え、必要に応じて Hub インストールパスを変更します。

    @echo off
    set HTTP_PROXY=proxy-url
    set HTTPS_PROXY=proxy-url
    start "" "C:\Program Files\Unity Hub\Unity Hub.exe"
        
    

    ノート パスにスペースが含まれる場合は、パスを 2 重引用符 (") で囲む必要があります。

  3. ファイルを自分で容易に見つけられる場所 (例えば Desktop) に保存し、ファイルに .cmd 拡張子がついていることを確認します (例えば launchUnityHub.cmd)。

macOS

以下の手順で、macOS に launchUnityHub.command ファイルを作成します。

このファイルは、環境変数が設定された状態で Hub を起動します。ファイルをダブルクリックするか、Bash ターミナルから呼び出すことができます。Unity はこれらの環境変数を、Hub から起動した Unity エディターの処理に渡します。

ノート コマンドファイルをダブルクリックすると、ターミナルウィンドウ、またはタブが開き、スクリプトが終わっても開いたままの状態です。 この動作を Terminal.app の設定で変更できます。

  1. ターミナルウィンドウ を起動します。

  2. 以下のテキストを入力し、proxy-url を正しいプロキシサーバー URL に置き換え、必要に応じて Hub インストールパスを変更します。

    echo '#!/bin/bash
    export HTTP_PROXY=proxy-url
    export HTTPS_PROXY=proxy-url
    nohup "/Applications/Unity Hub.app/Contents/MacOS/Unity Hub" &>/dev/null &' > launchUnityHub.command
    chmod +x launchUnityHub.command
    

    ノート パスにスペースが含まれる場合は、パスを 2 重引用符 (") で囲む必要があります。

  3. 必要な場合は launchUnityHub.command ファイルを任意の場所 (例えば Desktop) に移動します。

トラブルシューティング
カスタムパッケージの作成