# 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。

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