1. 先与sony的开发者关系部建立联系,展示工作室/公司制作PSVR游戏的构想和计划以及制作实力,如果对方觉得你提供的信息具有说服力,则会提供开发者资格,和你签署NDA,给你租借开发机和测试机(免费)。
  2. 安装PS4 SDK

    从官方提供的Playstation DevNet上下载PS4 SDK。因大陆可能墙了PS的IP,可以租用境外的服务器(该服务器ip必须告知sony的联系人,列入其白名单)进行此操作,下载后安装,有5个选项,Install SDK, Uninstall SDK, Switch SDK or Copy Samples, Download Files for Offline Installation, Configuration,选择Download Files for Offline Installation.制作离线安装包

    进去以后选择第一个选项Standalone Installer,选择所有选项,设置好输出位置,等待下载完成,就会生成一个离线安装包,把这个安装包放置到任何pc上都可以离线安装PS4 SDK了。

  3. 连接硬件

    连接好devkit/testkit,注意devkit有两个网线接口,都要插上网线。

    设置好devkit/testkit的ip地址,注意用于开发的PC和devkit要在同一个局域网

  4. 激活硬件

    根据PS4 Dev net(需要从列入sony白名单的ip地址才能注册和访问)上的帮助文档(Getting Started>Development Kit Setup Guid>Activation),先注册开发机和测试机,Hardware>Active hardware,选择所有的硬件,点下面的激活按钮。获取到一个注册码文件,将其名称改一下(去掉后面的日期),拷贝到u盘根目录,插在开发机/测试机的USB接口上(注意,devkit要插后方的usb接口)。在devkit上选择”*Debug Settings>Activation>Activate from USB”,进行激活

    最后在Neighbourhood(PS4SDK安装时一起安装的工具)里连接开发机,如果无法自动发现,就手动输入ip地址进行添加。

  5. 获取 UE4源码
    先在github获取UE4的最新版源码,过程比较容易,网上也有教程。
  6. 在PS4 Devnet上申请开发资格

    在PS4 Dev net上的Development > Tools & Middleware,点击最下方的Unreal Engine4 后面的Confirm developer status,如果提示没有权限,就提交一个private support申请,让sony的技术人员帮忙解决。

  7. 向Epic申请PS4的Console Source Code

    在虚幻的如下页面:

    http://help.epicgames.com/customer/en/portal/articles/2313998-how-do-i-get-access-to-ue4-console-source-code-?b_id=9727

    如果上述链接失效,先点击该链接:

    https://www.unrealengine.com/blog/playstation-4-and-xbox-one-now-supported

    然后点击Step2中提供的申请链接,打开的页面如果并没有任何表单,就换一个浏览器试试。表单的信息,公司名称要和sony那边注册的信息保持一致,如果顺利,很快epic就会回邮件与你联系,要求通过网络签署一份nda协议,然后就会发一个ftp链接和账户密码,下载与你的UE4源码匹配的UE4PS4源码。注意这些源码是受到nda限制和保护的,不要与其他人分享。

  8. 编译UE4的PS4版本

    下载的UE4 source code 和 UE4 PS4 source code解压在一起,先点击setup.bat 进行设置,可能需要比较漫长的等待,安装必要的环境。关于如何加快这个步骤,参考另外一篇.

    [更新] 这里不需要按照PS4.pdf上的指导(上面说的太麻烦了),直接把UE4设置为启动项目,确保Sulotion Configurations是Development Editor, Solution Platforms 是Win64,直接按F5(或者右键UE4>Debug>Start new instance)。等待大约四五十分钟会全部Build完成。

  9. [踩坑更新] 上一步完成后再右键UnrealLightmass>Build,编译Lightmass,不然后面没法烘焙灯光贴图!
  10. 编译好的编辑器的exe文件在Engine\Binaries\Win64\UnrealEditor.exe,这就是以后做ps4开发要用到的特殊版本的ue了。
    关于Build的Configuration可以参考官方文档:https://docs.unrealengine.com/latest/INT/Programming/Development/BuildConfigurations/index.html

  11. 创建测试工程,在PS4 devkit上测试

    之后可以打开这个编辑器,创建新的测试工程,后面的步骤可以参考UE4PS4里提供的pdf指导文档,但该指导文档写的比较离谱,很多都和现在的版本不一致,特别是cook 的过程写的很复杂,其实不需要,直接可以在编辑器里点击”Windows”菜单,Project Launcher,找到ps4,点击后面的Launch,经过漫长的等待,游戏就会自动发送到Neighbourhood中默认的开发机上进行运行了。
    关于如何在PS4上运行和测试,参考我的另外一篇文章:Best Practices For Running On the PS4

  12. PSVR的一些设置,直接参考Epic 论坛上的两篇篇帖子

    第一篇是设置头盔的:

    There are a few things to make sure in order to enable PSVR.
    First: You should navigate to your projects
    Build\PS4 folder. There should be the file sce_sys\param.sfo. If it isn't
    there, you should copy the Build\PS4 folder from your engine (custom source
    build with PS4 files) over to your projects directory and remove the read only
    flags from the files. Open the param.sfo file using Sony's tool
    (PS4SDK\ORBIS\Tools\Publishing Tools\bin or something like that it is) and go
    to the "Peripherals etc" section. Make sure that you check one of the
    "Support / Require PSVR" options there and save the param.sfo file.

    Second: Make sure that you enable the Morpheus
    plugin which you can find in the plugin list under Build-In \ Virtual Reality.
    Eventually restart the editor.

    Third: Now that the plugin is activated,
    navigate to your project settings. Down below, you should see the category
    "Morpheus" in the left list. Select it, and check the "Enable
    Morpheus" option in the right list.

    That's it! Launch your project and it should
    work (that worked for me on a blank project in 4.13).
    第二篇是设置Move的:

    Check the following and Launch your game to
    PS4 then PS VR and Move Controllers should work.

    1. Project Setting > Plugins >
    Morpheus > Enable Morpheus = true

    2. Edit > Plugins > Virtual Reality
    > Morpheus > Enabled = true

    3. Edit > Plugins > Input Devices
    > Move Controller Plugin > Enabled = true

    4. For Move Controllers check here

    https://docs.unrealengine.com/latest/INT/Platforms/VR/MotionController/index.html

  13. 在工程设置>General Settings里勾选上Start In VR

    关于Rendering Path 和 抗锯齿的组合,参考我的另外一篇文章 http://www.cnblogs.com/AnKen/p/6843007.html

在Unreal PS4论坛上也发了一个英文版本(仅有相关权限用户可见),地址:https://forums.unrealengine.com/showthread.php?147275-Development-environment-setup-for-PS4-(and-PSVR)-step-by-step

UE4开发PSVR游戏流程的更多相关文章

  1. UE4开发PSVR游戏,使用RazorGPU进行调试的方法

    打开Project Launcher,如果没有需要的Devkit平台目标,就点下方的Device Manager,右键Claim 相应的目标.如果已经出现在Project Launcher中,点击上方 ...

  2. UE4开发PSVR游戏的常见问题

    Failed to connect to file server at xxx.xxx.xxx.xxx. RETRYING in 5s解决办法:PS4 Devkit 中 Settings->De ...

  3. cocos2d-x 3.11 游戏开发环境搭建流程

    cocos2d-x 3.11.1 游戏开发环境搭建流程 1. 准备下面的软件 1) Windows7 64Bit+ VS2013 (VC++) 这个不用多说. 2) cocos2d-x-3.11.1. ...

  4. 用canvas开发H5游戏小记

    自神经猫风波之后,微信中的各种小游戏如雨后春笋般目不暇接,这种低成本,高效传播的案例很是受开发者青睐.作为一名前端,随手写个这样的小游戏出来应该算是必备技能吧.恰逢中秋节,部门决定上线一个小游戏,在微 ...

  5. JS开发HTML5游戏《神奇的六边形》(三)

    近期出现一款魔性的消除类HTML5游戏<神奇的六边形>,今天我们一起来看看如何通过开源免费的青瓷引擎(www.zuoyouxi.com)来实现这款游戏. (点击图片可进入游戏体验) 因内容 ...

  6. C#开发Unity游戏教程之判断语句

    C#开发Unity游戏教程之判断语句 游戏执行路径的选择——判断 玩家在游戏时,无时无刻不在通过判断做出选择.例如,正是因为玩家做出的选择不同,才导致游戏朝着不同的剧情发展,因此一个玩家可以对一个游戏 ...

  7. JAVASCRIPT开发HTML5游戏--斗地主(网络对战PART4)

    继之前用游戏引擎(青瓷引擎)做了斗地主单机版游戏之后,这里分享下使用socket.io来实现网络对战,代码可已放到github上,在此谈谈自己整个的开发思路吧. 客户端代码 服务端代码 (点击图片进入 ...

  8. javascript开发HTML5游戏--斗地主(单机模式part3)

    最近学习使用了一款HTML5游戏引擎(青瓷引擎),并用它尝试做了一个斗地主的游戏,简单实现了单机对战和网络对战,代码可已放到github上,在此谈谈自己如何通过引擎来开发这款游戏的. 客户端代码 服务 ...

  9. javascript开发HTML5游戏--斗地主(单机模式part2)

    最近学习使用了一款HTML5游戏引擎(青瓷引擎),并用它尝试做了一个斗地主的游戏,简单实现了单机对战和网络对战,代码可已放到github上,在此谈谈自己如何通过引擎来开发这款游戏的. 客户端代码 服务 ...

随机推荐

  1. Week 9 - 638.Shopping Offers - Medium

    638.Shopping Offers - Medium In LeetCode Store, there are some kinds of items to sell. Each item has ...

  2. 剑指offer(2):字符串

    C语言中的字符串 C语言中字符串的存储方式和数组类似,都是连续定长的内存块.字符串数组以\0结尾,所以会比正常数组多一位,char str3[5] = "1234"; //此处赋值 ...

  3. Android安全测试(二)反编译检测

    1.测试环境 SDK: Java JDK, Android SDK. 工具: 7zip, dex2jar, jd-gui 2.操作步骤 第一步:把apk改后缀名为zip 第二步:将zip文件解压,得到 ...

  4. Spring003--Spring事务管理(mooc)

    Spring事务管理 一.事务回顾 1.1.什么是事务 事务指的是逻辑上的一组操作,这组操作要么全部成功,要么全部失败. 异常情况发生,需要保证:[1]张三将钱转出,李四收到钱.[2]张三钱未成功转出 ...

  5. 前端 CSS层叠性 CSS选择器优先级

    层叠性 层叠性:权重的标签覆盖掉了权重小的标签,说白了 ,就是被干掉了 权重:谁的权重大,浏览器就会显示谁的属性 我们现在已经学过了很多的选择器,也就是说在一个HTML页面中有很多种方式找到一个元素并 ...

  6. win10系统Mysql5.7服务启动报:"1053错误:服务没有及时响应启动或控制请求"

    win10安装Mysql5.7: MySQL压缩包解压后,在目录下增加my.ini配置文件 [mysqld] port = basedir=D:\Mysql datadir=D:\Mysql\data ...

  7. 触摸板PCB制作-TM12

    1.布局: 使 PSoC 与Sensor之间的距离保持最小化是一个不错的做法. 通常将 PSoC 与其他组件一起贴装到底层,而将 CapSense Sensor置于顶层上.  Sensor和栅格地层位 ...

  8. HDFS基本概念

    概念 HDFS,它是一个文件系统,用于存储文件,通过目录树来定位文件:其次,它是分布式的,由很多服务器联合起来实现其功能,集群中的服务器有各自的角色. 注意:HDFS的设计适合一次写入,多次读出的场景 ...

  9. ubuntu开机只有一条横杠在闪的解决办法

    1.制作U盘启动盘,并试用ubuntu 2.输入以下命令,根据提示完成修复 sudo add-apt-repository ppa:yannubuntu/boot-repair && ...

  10. Python 特性?

    1.Python 是强语言类型还是弱语言类型? Python 是强类型的动态脚本语言.强类型:不允许不同类型相加.动态:不使用显示数据类型声明,且确定一个变量的类型是在第一次给它赋值的时候.脚本语言: ...