# Unreal平台SDK

# 前期准备

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

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

# SDK 介绍

本文档介绍如何使用 Pimax Unreal Platform SDK(以下简称 SDK)开发在 Pimax 头戴式设备上运行的 VR 应用程序。 此 SDK 提供的功能包括 DRM 和一些用户相关信息。 将支持成就、应用内支付、DLC 等。

# SDK结构介绍

SDK文件夹结构如下:

image1.png

文件夹 介绍
Binaries Unreal 自动生成。
Content Unreal 资源文件,包含蓝图和示例。
Intermediate Unreal 自动生成。
Resources Unreal 自动生成。
Source 主要代码
Tool test.json.
PimaxPlatform.uplugin Unreal 插件文件。

# 工具

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

# test.json

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

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

{  
    "appSecret": "TESTSECRET", //app secret id 
    "Entitlement": 1001,  //Result of CheckEntitlement().  
    "LoggedInUser": {
        "username": "json",
        "userid": 123456  
    }    //Result of GetLoggedInUser().
}

test.json在编辑器模式下使用,需要拷贝到引擎的安装目录下:

image7.png

test.json在打好包后使用,需要拷贝到对应的exe所在目录下:

image14.png

test.json在安卓设备上使用,需要拷贝到"/data/local/tmp/AppID/"目录下。

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

# PiPlatformService

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

# SDK 配置说明

# 开发环境要求

Windows :

  1. Unreal Engine 4.24 及以上(目前支持4.24、4.25、4.26、4.27)
  2. Pimax Client 1.3.0.17 或更高版本
  3. 建议使用 64 位架构

# 快速开始

# Step 1: 创建新的项目

打开 UnrealEngine 并创建一个新项目,如图所示:

image2.png

关闭项目

# Step 2: 导入 SDK

将 PimaxPlatform 文件夹(请选择对应版本文件夹下的PimaxPlatform)复制到项目Plugins文件夹(创建一个):

image3.png

双击 MyProject.uproject 打开项目

点击 Settings->Plugins,保证 PimaxPlatform 插件是启用的

image4.png

# Step 3: 设置 AppID

点击 Settings->Project Settings…->Plugins->Pimax Platform

image5.png

输入你的 App ID 后点击 Set as Default.

# Step 4: 运行示例

PimaxPlatform_Content/Example/ 中有一个简单的示例。 您可以双击 Example 来加载它。

image6.png

然后你可以探索 PimaxPlatform_BP 。

BeginPlay() 游戏开始时会被 Unreal 调用。 它将绑定所有 SDK 回调并初始化 PiPlatformService 和 SDK。

image8.png

PvrInstanceSubsystem 是一个单例,你可以在所有蓝图中获取它。这些请求是异步函数,结果将由含参数的回调函数返回。

image9.png

它将返回当前的网络连接和当前用户是否拥有该游戏,使用 Parse Int 检查 Ent Res Enum 可以得到结果。

如果用户没有此游戏,我们建议您退出游戏。这些回调函数是对信息的处理。

image10.png

如果用户注销 PimaxClient 您将收到它,您可能想现在退出游戏。

image11.png

这是一些其他错误,例如太多设备启动这个游戏。使用 Parse Runtime Error Enum 获取 Enum 信息。

点击 Unreal 顶部的 play 。

如果没有发生错误,您将看到:

image12.png

# 添加 SDK 到您的项目

首先,按照上面提到的方式导入sdk。

其次,创建一个蓝图并将其放入第一个场景中以绑定回调函数和初始化,具体操作如上。