# Unity平台SDK

# 前期准备

开始之前,你需要在开发者中心设置你的应用,然后你将获得一个App ID用来初始化 SDK。

Pimax Unity Platform SDK是一个工具包,它可以帮助将你的内容与Pimax商店进行集成,但你仍需要集成OpenVR才能在VR环境中渲染你的游戏。

# SDK 介绍

本文档介绍如何使用 Unity 中的 Pimax Unity Platform SDK(以下简称 SDK)开发在 Pimax 头戴式设备上运行的 VR 应用程序。此 SDK 提供的功能包括 DRM 和一些用户相关信息。将支持成就,应用内支付,DLC等。 SDK 以 UnityPackage 的格式提供。导入后,你可以看到以下目录:

文件夹 介绍
Platform\Editor Unity编辑器相关的脚本
Platform\Prefabs 预制体
Platform\Plugins 依赖的文件
Platform\Samples 简单的示例
Platform\Scripts 主要代码
Resources 配置文件

# 工具

你可以在“Tools”文件夹下找到一些有用的开发工具。

# 模拟合法性校验

test.json仅用于调试目的,你可以将此文件复制到你的工作目录,以在开发过程中模拟授权结果和其他平台功能,请确保在上传到Pimax商店之前将其删除。

在编辑模式运行时,将此文件放入项目路径,使其与Assets文件夹同级。构建之后运行时将此文件放至执行文件同路径。

注意:只有当 appSecret 正确时,才会读取 test.json 的内容。appSecret 需要从开发者中心获取,你可以从这里找到更多信息:test.json

{  
    "appSecret": "TESTSECRET", //appSecret of your app, Please remove comments when using
    "Entitlement": 1001,  //Result of CheckEntitlement(). Please remove comments when using 
    "LoggedInUser": {
        "username": "json",
        "userid": 123456  
    }    //Result of GetLoggedInUser().  Please remove comments when using
}

你可以在工作目录下修改 test.json 并重新启动以测试不同的结果。

# PiPlatformService

启动 PimaxClient与你的应用程序进行通信。如果你的应用尚未发布,则可以使用 test.json 来模拟开发。具体使用过程如上所示。

# SDK 配置说明

# 开发环境要求

Windows :

  1. Unity 5.6.6 及以上
  2. Pimax Client 1.3.0.17 或更高版本
  3. 建议使用 64 位架构

Android:

  1. 系统为0614及以后版本

# 快速开始

# Step 1: 创建新的项目

打开Unity并一个建立新的项目:

# Step 2: 导入 SDK

打开 Assets- Import Package - Custom Package

在弹出的对话框中单击打开 PimaxPlatform.unitypackage 文件 :

# Step 3: 设置 AppID

在弹出的另一个对话框中输入一个 AppID 然后点击Apply应用设置,或者点击Ignore忽略它. 你可以在 工具栏的 Pimax - PlatformSettings 再次打开此窗口.

# Step 4: 运行示例

Pimax/Platform/Samples/SimpleExample 里有一个简单的示例.双击SimpleScene打开它.

在运行前将 test.json 从 Tools 复制到工作目录的根目录。如果你使用 PimaxClient,请忽略此步骤。

然后,你可以浏览SimpleExample。

Awake() 将在脚本启动时由 Unity 调用。它将初始化 PiPlatformService 和 SDK。

Start() 将先检查用户权限,然后尝试获取一些信息。

这些请求是异步的函数,结果将由作为参数发送的回调函数返回。

CheckEntitlement:

它将返回当前网络连接状态以及当前用户是否拥有此游戏,如果用户没有此游戏,我们建议你退出游戏。

这些回调函数处理返回的信息。

Notify_LogOut 如果用户注销PimaxClient,你将收到此信息,你可以立即退出游戏或稍后退出。

Notify_RunningError 一些其他错误,例如,当前有多个设备启动此游戏。

单击 Unity 顶部的播放按键。

如果一切正常,你可以在Game窗口看到:

# 将SDK添加到你的现有项目

按照上述说明导入 SDK

Pimax\Platform\Prefabs 中找到预制体 PvrManager

将它放入你的第一个场景中

调用 SDK 接口时,请将回调函数作为参数传入。

为了接收PiPlatformService主动发送的消息,请订阅如下图中的事件。

# 为安卓平台设置

如果你的游戏需在安卓一体机运行,请执行以下设置:

  1. 打开Project Settings中的Player选项卡,

  2. 在下方的安卓平台设置中找到Scripting Backend一项,将其设置为IL2CPP

# 模拟合法性校验

你可以和PC平台一样模拟合法性校验结果,不同的是你需要把test.json放到以下目录中:

/data/local/tmp/{$your_app_id}/test.json