效果展示:
本文开发环境的测试基于Unity2022.3.15版本进行的,插件版本为当前商店最新版本Steamvr2.8.0 (sdk 2.0.10),正常导入之后,显示会有报错,本文主要记录插件的导入步骤和报错解决方法,导入之后的开发步骤可以参考示例场景即可。
首先导入插件,直接到商店里面下载安装就行
在导入之后,出现以下报错提示
报错内容:
InvalidOperationException: Insecure connection not allowed
UnityEngine.Networking.UnityWebRequest.SendWebRequest () (at <3a94c981a38444d3b3e2dd398a606a0a>:0)
UnityEngine.WWW…ctor (System.String url) (at <31b1af0c285f42c39139659b94874e90>:0)
Valve.VR.SteamVR_Update.Update () (at Assets/SteamVR/Editor/SteamVR_Update.cs:42)
UnityEditor.EditorApplication.Internal_CallUpdateFunctions () (at <95629d2ff14948b6a5940ca846a35421>:0)
报错分析:
InvalidOperationException,这是一个常见的异常,通常是由于代码试图执行一个不被允许的操作时触发的。特别是,错误消息“不允许不安全的连接”表明问题可能与尝试建立一个不安全(可能是非HTTPS)的网络连接有关。
UnityEngine.Networking.UnityWebRequest.SendWebRequest() 方法,这是Unity用于处理网络请求的标准方式。由于安全性的提高,很多现代的网络环境要求所有网络连接都必须是安全的(即使用HTTPS),而不是不安全的(HTTP)。
解决办法:
双击上文中Console窗口的错误提示,会定位到下图所示代码,在代码编辑器中指向代码里含有http的链接修改为https即可。
修改内容如下
const string currentVersion = "2.1";
const string versionUrl = "https://media.steampowered.com/apps/steamvr/unitypluginversion.txt";
const string notesUrl = "https://media.steampowered.com/apps/steamvr/unityplugin-v{0}.txt";
const string pluginUrl = "https://u3d.as/content/valve-corporation/steam-vr-plugin";
const string doNotShowKey = "SteamVR.DoNotShow.v{0}";
保存并返回UnityEditor中弹出 SteamVR_UnitySettingsWindow 成功解决问题