- 联系我们
- 技术支持: vrsupport@qiyi.com
- 商务合作: business@iqiyismart.com
- 人才招聘: 查看职位 >
- 公司地址:北京市朝阳区宏泰东街绿地中心B座11层
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.XR.Interaction.Toolkit;
public class QiyuCanvasController : MonoBehaviour
{
Canvas canvas;
private void Awake()
{
canvas = GetComponent<Canvas>();
canvas.renderMode = RenderMode.WorldSpace;
canvas.worldCamera = Camera.main;
}
// Start is called before the first frame update
IEnumerator Start()
{
XRRayInteractor[] xRRayInteractor = FindObjectsOfType<XRRayInteractor>();
foreach (XRRayInteractor xrRay in xRRayInteractor)
{
xrRay.gameObject.SetActive(false);
yield return new WaitForEndOfFrame();
xrRay.gameObject.SetActive(true);
}
}
// Update is called once per frame
void Update()
{
}
}
奇遇Unity SDK v0.4版本及以前版本迁移到UnityXR SDK v1.0.0版本时,必须删除老的奇遇SDK所有文件(QYVRSDK、QIVR Sample、场景中引用的prefab),再通过Unity Package Manager导入新的XR插件。
1.0版本统一规范了XR接口名称,在删除掉老版本SDK、导入XR sdk后,如果出现unity Editor Log报错,需要根据本开发文档和UnityXR开发文档,替换相应的接口名称。
挂在原“QVR Camera”预制体及其子物体上的脚本、组件,请根据需要移至“XR Rig (opens new window)”预制体上。
解压sdk的zip包,通过PackageManager->Add package from disk... 菜单按钮直接导入新的package.json即可。
原QiyuBoundary里的实例方法修改为静态方法
QiyuBoundary boundary = new QiyuBoundary();
boundary.GetConfigured()
boundary.SetVisible(true)
boundary.GetVisible()
boundary.TestNode(QiyuBoundary.Node.HandRight)
boundary.TestPoint(Vector3 point)
boundary.GetGeometry()
boundary.GetDimensions()
QiyuPlugin.GetFloorLevel()
QiyuBoundary.GetConfigured()
QiyuBoundary.SetVisible(true)
QiyuBoundary.GetVisible()
QiyuBoundary.TestNode(QiyuBoundary.Node.HandRight)
QiyuBoundary.TestPoint(Vector3 point)
QiyuBoundary.GetGeometry()
QiyuBoundary.GetDimensions()
QiyuXRCore.GetFloorLevel()
如果需要不同系统语言下显示不同AppName,需要在打包的时候导入Android的多语言配置文件,在每个语言string.xml里配置不同app_name字段,多语言package例子可以从这里下载:
Multi Language Configuration (opens new window)
在SDK 1.0.0中,Unity2020以上的版本PackageManager内置了Newtonsoft插件,会与SDK中的Newtonsoft发生冲突,SDK1.0.2中已经修复了这个问题,如果项目中有如下报错:
可以将sdk目录下的JsonDotNet目录删除,如下
奇遇开发者平台对应用包名、签名、正式版、应用版本号、奇遇SDK版本号、Android SDK版本号等关键信息进行查验。开发者在上传APK之前,必须保证各项信息满足平台要求。
奇遇应用审核指南 (ARG) (opens new window)
OS 版本v5.0.10 及以上,加入了鉴权功能,对于已经上架到奇遇商店的游戏,需要打release包并运行在奇遇3设备上进行测试,必须将Project Settings ->Player -> Bundle Version Code 设置高于商店中应用的版本。
对于Unity开发者常用的音频插件,有些适配奇遇设备时,由于个别配置项默认值不兼容,导致系统录屏功能声音异常。下面列出了在奇遇设备上使用Fmod、Wwise插件时需要修改的配置项。
如果您用的是Fmod 插件来制作应用音频,请在Fmod Setting中将Output Mode设置成 ‘Java Audio Track’, 否则会出现录屏没有声音的问题。
如果您用的是Wwise插件来制作应用音频,请在Wwise Initialization中,将所有Audio API 设置成 ‘Open SL_ES’, 否则会出现录屏没有声音的问题。
如果您用的是Photon插件来制作应用音频,并且在语音交流过程中出现BGM与人声比例差异较大,例如BGM声音过大人声较小或BGM声音过小人声过大,请在 Audio Source 中通过配置本地播放端和接收远端Voice的Audio data mix,通过设置各自的增益比重来调整BGM或人声的大小,Photon音频插件原理见图 6.8.3.1,Audio Source配置见 6.8.3.2 。
从奇遇SDKv1.2.0开始,校准功能统一由系统管控,开发者无需在工程里必须添 “QiyuManager” 或 “QiyuRecenter” 实现校准功能了。
如果您在工程里修改过奇遇SDK提供的“QiyuManager”预制体,升级SDK到 1.2.0及以上版本后,长按手柄Home键校准,出现了多个校准 UI叠加的现象,请检查场景中,是否存在“QiyuRecenter”预制体,如果有,请删除。
如果您的工程运行,Recenter UI显示正常,请忽略此条。