生活小常识

位置:首页 > 生活小常识 > 十万个为什么

vr编程培训就业前景好吗

发布时间:2022-04-23 21:30:14

  VR技术分为三大类,以及kickstarter上面各种五花八门的交互设备。VR 行业这么热,想加入的vr行业前就要搞清vr前景好不好的问题。以下是生活日记小编整理的vr编程培训的内容,一起来看看vr就业前景和薪资吧!

vr编程培训就业前景好吗

  vr培训的就业前景可观,主要原因有以下几点:

  1、工信部发布了《虚拟现实产业发展白皮书》并提出了相关政策,从国家层面上充分肯定了虚拟现实行业,值得VR从业者认真研读。

  2、根据《国家中长期科学和技术发展规划纲要》(2006~2020)的内容,虚拟现实技术属于前沿技术中信息技术部分三大技术之一。

  3、艾媒咨询数据显示,2015年中国虚拟现实行业市场规模 为15.4亿元,预计2016年将达到56.6亿元,2020年国内市场规模预计将超过550亿元。

  而根据从国际各种资本涌动的方向来看,VR已成为未来10年内的快速发展阶段,未来15年内VRAR将成为主流。

VR工程师须知的编程核心技术

  诺亦腾 项目经理 邓思渊这么说

  “虚拟现实”(Virtual Reality)快要成为现在科技行业里最火的词汇。自从 Facebook 以 20 亿美元的价格收购了 Oculus,大家都认为虚拟现实将是未来的电子消费产业的浪潮。这个行业目前的状况,有点像 2005年 的智能移动产业:基本技术都已经齐备,但是大家并不知道未来会是什么样子,直到苹果 2007年 发布 iPhone 一锤定音。当然很多人希望投身于虚拟现实产业。在 VR 产业工作,有可能在 5年 之后你就会成为热门行业中的大牛,拿到极高的工资水平;但是行业中有些事情你必须得知道。

  如果你是硬件工程师

  在虚拟现实浪潮之前,我们面对的是智能硬件和物联网的 hype;似乎只要将生活中的任何一个物件加上一个显示屏和一个安卓系统,它就瞬间变得智能起来。当然,我们知道事情并不是这样的,所以智能硬件的创业现在已经进入了一个低潮期。我们在认真的思考我们到底需要怎样的智能硬件的同时,很多厂商看到了虚拟现实的机会,并一拥而上开始做虚拟现实头显——毕竟从硬件上来看,VR 头显的技术含量并没有智能手机高。但是事情并不是这样:虚拟现实头显涉及到的是人的视觉认知系统,所需要的体验的门槛是极高的。消费者或许会买一个智能音响而只是觉得它” 不太好用 “罢了;但是 VR 头显如果不能满足一些硬性的标准(比如低于 20ms 的延迟,60Hz 以上刷新率,2K 低余晖(Low Persistence)屏幕,高精度的定位跟踪系统等等),那么它给予消费者的体验是非常糟糕的。所以如果你之前在硬件领域,现在有心开发 VR 头显,VR 头显的体验门槛可能要比你想象得要高的多。

  所以作为一个硬件工程师,无论是论是传统的电子电路设计还是传感器设计还是光学设计都在 VR 行业中有涉及。所以也需要你有比方说嵌入式电路设计的相关背景和经验,掌握 C/C 语言,熟悉 ARM 等嵌入式系统开发流程,有电路设计,PCB 设计能力。VR 也包括结构设计,光学和传感器设计,如果你有相关的背景,同样也可以加入 VR 硬件设计的行列中来。

  如果你是软件工程师的话

  VR 作为一个新兴产业,它的很多部分还没有定型。比方说 VR 交互如何设计,图形界面如何设计,如何将 2D 的界面设计扩展到 3D,这都是需要解决的问题。所以,作为一个 VR 软件开发者和界面设计师,你需要知道你现在的工作范围已经从一个平面的系统扩展到了一个三维的系统,所以整个 UI 的设计思路需要完全改变。而作为软件开发者,同样要适应这样的改变。

  VR 对于软件开发的要求是深入底层的,所以掌握 C/C 语言是很基本的,而且需要有比较强的数理背景,对算法实现,Matlab 都比较熟悉,根据领域的不同,有一些需要对图形图像领域,比方说 SLAM 和 OpenCV 比较熟悉,有一些需要对传感器,IMU 等算法比较熟悉,有一些则需要对 DSP/Bluetooth/WiFi 开发比较熟悉,在移动 VR 领域则需要对 Android 开发有了解。

  如果你是游戏开发者的话

  你是一个游戏设计师,觉得 VR 将会是未来的游戏的浪潮,于是打算开发 VR 游戏。但是,必须说明的是,VR 游戏并不是仅仅将传统的游戏加上双目分屏和可以自由转动的视角就可以的——VR 游戏将会是一种完全不同的东西。这其中有两个层面。

  在技术上,开发 VR 游戏与传统游戏有很多的不同之处。比方说由于晕动症(Motion Sickness)的原因,在 VR 中,如果用户的身体运动与视野运动不匹配,就会导致强烈的晕眩,所以传统的主视角游戏不再适用于 VR。

  在一些具体的技术细节上,VR 游戏也与传统的平面游戏相差很大——比方说 VR 游戏注重于帧数的稳定性更胜于画面华丽,双眼视差也让很多传统的 3D 图形手段不再实用,等等,这些都是一个 VR 游戏开发者所需要知道的细节。

  而更重要的恐怕是中国特色的游戏产业——长久以来这个产业都与欧美主流游戏产业距离甚远。中国的游戏产业更加注重于移动端游戏,从玩家角度来讲,中国游戏产业更加注重于多人、F2P、休闲和 pay-to-win 模式,而欧美游戏产业更加注重于主机,强调画面技术和重度体验。而 VR 游戏天然的是强调体验依赖于技术水平的游戏——虽然在技术上,VR 游戏需要新的手段和技术,但是欧美大厂有足够多的技术和设计沉淀让他们能够很快的转换到 VR 游戏里来,而中国的游戏从业者就没有这样的积累。

  所以,如果开发者要开发 VR 游戏,VR 游戏是不能照搬传统游戏的。作为 VR 游戏开发者,需要能够开发 3D 游戏的能力,还需要对目前主流的 3D 引擎比方说 Unity/Unreal 比较了解。如果对 3D 美术工具,比方说 3Ds Max、Maya、Zbrush 等有了解,并且熟悉脚本语言比如 MaxScript、UnrealScript 等都会大大加强你的竞争力。

VR以及相关编程技术解析

  VR技术分为三大类,建模、显示和交互,涉及到的硬件主要是PC/游戏主机/手机,HMD头戴设备,以及kickstarter上面各种五花八门的交互设备。

  1.引擎:跟普通3D游戏一样,多半用Unity(c#,javascript),Unreal(c ),还有Steam自家的source2,主要用于世界的构建和角色的基本交互(键盘鼠标手柄交互)。

  2.HMD SDK:Oculus自家有pc版和mobile版的sdk,htc vive不太了解,没申请到,sony playstation VR也没实物。国内的针对PC的HMD头戴设备目前没考虑,所以不清楚。

  3.交互技术相关的SDK: 如果是键鼠和手柄还好,如果是动作捕捉类的(不管是光学还是基于传感器的),就需要另外说了,比如leap motion, kinect,奥比中光,realsense这些都有自己对应的sdk。当然,如果你还用了什么万向跑步机,VRGO啥的就又不好说了。 话说苹果最近收购的faceshift也很NB,还有之前收购的primesense,如果不是为VR/AR做的准备就太说不过去了。

  个人觉得交互技术是虚拟现实目前最大的软肋,而且只有输入,输出类技术太少。比如能提供触觉反馈、嗅觉反馈、温度觉啥的太少,力反馈倒是有。

  VR编程可以让你在VR中写代码

  对开发者来说,进行VR内容创作时遇到的麻烦之一是需要反复戴上和摘掉头显,因此将编程界面VR化已经成为虚拟现实相关内容制作工具正在研究的一个方向。今天我们所报道的这款“RiftSketch”便是一个VR化的原生VR编辑器,开发者可以不用摘掉头显可以对编写的代码实时提供效果预览。

  RiftSketch由AltspaceVR开发者Brian Peiris开发,他表示RiftSketch是“实时的VR编程环境,它将你置身于一个虚拟的空间里,你可以在内置的编辑器上写代码,会实时看到代码所生成的物体,以及场景的变化。这是个简单的想法,不过在掌握了使用技巧后你会发现结果非常有趣。”

  同时,据Peiris介绍,RiftSketch基于跨平台WebVR开发,可以在PC、Mac、iOS和Android系统上运行,可兼容Oculus Rift DK1和DK2版本、HTC Vive与Google Cardboard,并且该VR编辑器是开源的,本身使用JavaScript代码编写,体积也不大。

  编辑器VR化一定程度上可以提升VR内容开发的工作效率,但也存在一些问题,Peiris指出在VR中文本编辑比较费力,由于分辨率的关系,即使在4K分辨率下,在VR中编写代码一屏只能看20行左右。另外编辑环境中是无法看到键盘的。

>>>下一页更多精彩“VR 时代如何编程”VR 时代如何编程

  Firefox联手Chrome合作开发网页VR标准 。文中提到:随着1.0版WebVR API的完成,Mozilla已经收到了许多开发者发回的反馈。值得注意的是,该公司已经改进了如下内容:

  —以虚拟现实为核心的设备渲染和显示标准;

  —WebVR页面之间的遍历链接能力;

  —能够枚举虚拟现实输入的输入处理机制,包括6轴动作手柄;

  —适应坐姿和站姿两种体验;

  —使用桌面和移动平台。

  在获得认可后,Mozilla还计划于今年上半年在Firefox Nightly中推出一个WebVR 1.0的工作版本。如果你勇于探索,可以从布兰登-琼斯那里下载几个实验版Chromium浏览器,体验这种API的概念验证效果。

  我们知道,Mozilla 的 WebVR API 早已在 2015年7月 推出草案,那么这篇没有任何引用的语焉不详的 WebVR 1.0 是啥?有趣的是,中文互联网上该文章大部分为转载,内容完全相同(甚至更少)。这让我开始质疑其内容的完整和正确性。

  稍微搜索一下,发现原文应该是这篇 Introducing the WebVR 1.0 API Proposal ,译者可能是偷懒,也可能是并非技术人员,仅仅翻译了新闻部分,没有翻译代码部分。看看 WebVR 草案 中的 Editors 信息,3 个 Mozilla 的人,1 个 Google 的人,我们就能了解到,目前暂时只有 Firefox 和 Chrome 陪玩了。

  回到本文的标题,身为开发者,我们该如何更新自己的技能,才能适应这个新的平台?更准确的说,我们应该学习什么编程语言/或3D引擎(3D Engine),才能适应 VR 时代的发展?

VR 设备分析

  让我们先来看看现在的 VR 设备。

  目前主要的 VR 设备有 Oculus , Sumsang Gear VR , HTC Vive , Microsoft HoloLens , Sony PlayStation VR ,国内的 VR 设备则太多,销量较高的有 蚁视 和 暴风魔镜 等等。

  Oculus

  代表产品: Oculus Rift

  简单介绍: 万众瞩目的 Oculus Rift 已经预售了。简单地说,Oculus Rift 是一个带有部分输入设备的虚拟现实显示器。这些输入设备包括一个遥控器,一个红外传感器,还有 Touch 控制器。Rift 的所有计算是在一台 PC 上进行的,在 Oculus Ready PCs 可以看到 Rift 要求的 PC 配置。由于显卡的性能问题,Rift 目前并不支持 Mac,只能下载到基于 Windows 的 Runtime。

  SDK支持: Oculus Rift 支持 Unity 5 、Unity 4 和 Unreal 。3月1日,Oculus 发布了 MobileSDK 1.0.0.1 升级,这个 SDK 提供了对 Oculus Remote Monitor 的支持,同时也让我们可以在 Mac OSX 上基于 MobileSDK 进行开发。

  Samsung

  代表产品: Gear VR

  简单介绍: Gear VR 是 Samsung 和 Oculus 共同开发的。它目前使用 Samsung 的 Galaxy S7/S7 edge, Note5, S6, 和 S6 edge 来代替头显中原来的显示器。Gear VR 还内置传感器用于和三星手机配对,并内置了触摸板用于操作。和 Oculus Rift 使用 PC 来进行计算不同,Gear VR 把计算放在了 Samsung 手机上。

  SDK支持: Oculus 的 MobileSDK 最开始就是为 Gear VR 提供的。

  HTC

  代表产品: Vive

  简单介绍: Vive 也已经预售了。它是目前呼声最高的消费级 VR 设备了。Base stations 设计,电子围栏,多功能操纵手柄,StreamVR,良好的体验都让它成为目前最好的 VR 设备。在 VIVE OPTIMIZED PCs 可以看到推荐的 PC 配置,和 Oculus 类似,但不要求 8G 内存

  SDK支持: Steam VR 、Unity 和 Unreal 。

  Microsoft

  代表产品:HoloLens

  简单介绍: M$ 的确是不差钱,一上来就搞出来一个 MR(Mixed Reality) 设备,还让 HeloLens 上了国际空间站 。简单的说,HoloLens 就是一台微型 Windows 10 一体机啊!和竞争对手们完全不是一个打法好么?不在一个纬度好么!硬件我就不说了,直接看 Hardware 好了,简直惊悚。

  SDK支持: 为 HoloLens 开发应用,其实就是为 Windows 10 开发 App ,目前官方页面并没有公布太多的开发信息。但你也知道,IDE 一定是宇宙最强的 Visual Studio,语言一定是 C# 。

  Sony

  代表产品: PlayStation VR

  简单介绍: Sony 大法虽然好,但 PSVR 和上面几家比起来会出来的比较晚,又从 2016 上半年跳票到下半年。它是和 PS4 共同使用的,目前我没有找到它的 SDK。但 Unity 提到了对 PlayStation VR 的支持。

  暴风魔镜

  代表产品: 魔镜4

  简单介绍: 暴风魔镜是目前在国内大肆宣传的一款产品。暂时还没有哪一款产品的宣传力度超过它。当然,它也是我唯一买过(主要是买得起)的产品。和 Google Cardboard 类似,它是一款把手机塞进去就能体验廉价 VR 的产品。具体的体验效果,取决于手机的高(tu)端(hao)程度。

  SDK支持:暴风魔镜提供了 Android/iOS/Unity/Unreal 的 SDK 。

VR 引擎分析

  从上面的设备分析可以看出,目前对 VR 支持最好的 3D 引擎就是 Unity 和 Unreal 了。它们两位可以说是 VR 的标配引擎。借用一句广告词: 2U ,你值得拥有!

  除了 2U 哥俩外,下面还有一些在 VR/AR 界十分活跃的引擎和软件:

  OSVR

  Open Source Virtual Reality 是一个全面开源的软件平台,支持多种设备和引擎,Blender/MonoGame/StreamVR/Unity/Unreal/CryEngine/WebVR 都在支持之列。在国内,OSVR 已经和 360 公司展开了合作。

  OSVR是全球的开源虚拟现实平台,由Razer(雷蛇)——全球高性能游戏硬件、软件与系统品牌,以及Sensics——全球专业级虚拟现实头戴式显示器品牌联合创立。该软件平台致力于为所有虚拟现实技术树立开放标准,使得各款支持OSVR的虚拟设备与支持OSVR的软件能够顺利交互、接合。

  OSVR软件 介绍了这套引擎的架构方式。

  OSVR能够提供简单而标准化的方式,助你探索、配置和操作数以百计的设备,包括VR眼镜、定位追踪、深度摄像头、眼动议、游戏控制器等等。

  VRPN

  Virtual Reality Peripheral Network 是学术圈搞起来的一套基于网络传输界面的开源 VR 库。允许大家共同建设,把自家的设备加进去。这个库支持非常多的设备,甚至直接包含了设备驱动 Supported hardware devices 。VRPN 已经在 PC/Win32, PC/Cygwin, PC/Linux, and Mac/OSX (32- and 64-bits on all), ARM Linux systems 和 Android 上测试过。

  MiddleVR

  MiddleVR 目前提供 Unity 插件 ,当然你也可以直接使用它的 SDK,它也支持目前大多数主流的 HMD (Head-mounted display)设备。虽然是由一家公司在维护,但目前是免费使用的。

VR 语言

  说起 VR 语言,其实还不如说是 3D 引擎的语言。VR 没有 3D 引擎支持是无法进行开发的。让我们看看上面提到的 3D 引擎和 SDK 主要使用什么语言。

  首当其冲的是 C/C ,这是毋庸置疑的。大多数 3D 引擎都使用 C 开发,Oculus 提供的 SDK 也是使用 C 进行开发的。 Gear VR 是在安卓设备上运行,需要使用 Android NDK 基于 C 进行开发。Unreal 引擎同样使用 C 进行开发。MiddleVR 提供了基于 C 的 SDK。

  其次是 C# 。 Unity 把 C# 当作脚本语言使用。在 VRPN 中可以使用 。NET bindings for VRPN 作为开发语言。不出意外的话, HoloLens 也一定使用的是 C# 。

  再次就是 Javascript 。它也是 Unity 的一种脚本语言(即使选择的人并不多)。但 WebVR 和 Javascript 程序员的基数(基友数?)一定会让 Javascript 继续在使用人数上占优(我真的不是黑啊)。即使不考虑 WebVR , three.js , Babylonjs 这类已经非常成熟的 HTML5 3D 引擎也足够证明 Javascript 在 3D 上的强大生命力。

  猜你喜欢:

  1.vr简介中英文版

  2.游戏赚钱最快的方法

  3.怎么设置vray for 3dmax光子图渲染参数

  4.3DMAX如何将vray材质类型和渲染设置为默认启动

  5.2017高薪职业排行榜

生活小常识相关阅读

生活小常识热点