零基础学习vr难吗?


如何步入VR的圈子?如何从零基础系统性的学习VR技术?此文 。希望能够帮助那些有相同疑惑的朋友
VR到底是什么 。
VR是Virtual Reality的缩写 。中文的意思就是虚拟现实 。
虚拟现实(VR)是近几年来国内外科技界关注的一个热点 。其发展也是日新月异 。简单地说 。VR技术就是借助于计算机技术及硬件设备 。实现一种人们可以通过视听触嗅等手段所感受到的虚拟幻境 。故VR技术又称幻境或灵境技术 。
虚拟现实是一门集成了人与信息的科学 。其核心是由一些三维的交互式计算机生成的环境组成 。这些环境可以是真实的 。也可以是想象的世界模型 。其目的是通过人工合成的经历来表示信息 。有了虚拟现实技术 。复杂或抽象系统的概念的形成可以通过将系统的各子部件以某种方式表示成具有确切含义的符号而成为可能 。虚拟现实是融合了许多人的因素 。且放大了它对个人感觉影响的工程 。虚拟现实技术是建立在集成诸多学科如心理学、控制学、计算机图形学、数据库设计、实时分布系统、电子学、机器人及多媒体技术等之上的 。
虚拟现实应具有以下三个方面的含义 。首先VR是通过计算机生成一个非常逼真的足以“迷惑”我们人类视觉的虚幻的世界 。这种“迷惑”是多方面的 。我们不仅可以看到而且可以听到、触到及嗅到这个虚拟世界中所发生的一切 。这种感觉是如此的真实 。以至于我们能全方位地浸没在这个虚幻的世界中 。这就是VR的首要功能 。即浸没感(Immersion)或临场参与感 。一般来说 。虚拟系统的输出设备应尽可能面向使用者的感觉器官以保证良好的浸没感 。如头盔式显示器(HMD) 。它将使用者的听觉视觉功能完全置于虚拟的环境之中并切断了所有外界信息 。使用者在虚拟的环境漫游可以通过跟踪使用者的头及身体的运动来完成 。与虚拟物体的接触通过戴在手上的传感装置检测来实现 。
虚拟现实与通常CAD系统所产生的模型是不一样的 。它不是一个静态的世界 。而是一个开放的环境 。它可以对使用者的输入(如手势 。语言命令)作出响应 。比如你可以拿起一虚拟的火炬并打开其开关 。你一推操纵杆 。仿佛可以在里面漫游 。你甚至可以用虚拟的手感触到虚拟物体存在 。虚拟现实环境可以通过控制与监视装置影响或被使用者影响 。这是VR的第二个特征 。即交互性(Interaction) 。
虚拟现实不仅仅是一个媒体 。一个高级用户界面 。它是为解决工程、医学、军事等方面的问题而由开发者设计出来的应用软件 。它以夸大的形式反映了设计者的思想 。比如当在盖一座现代化的大厦之前 。你首先要做的事是对这座大厦的结构做细致的构思 。为了使之定量化 。你还需设计许多图纸 。当然这些图纸只能内行人读懂 。正如这些图纸反映的是设计者的构思 。虚拟现实同样反映的是某个设计者的思想 。只不过它的功能远比那些呆板的图纸生动 。强大的多 。所以国外有些学者称VR为放大人们心灵的工具 。或人工现实(artifical reality) 。这是VR所具有的第三类特征 。即思想性(Imagation) 。
综上所述 。虚拟现实是人们可以通过视听触等信息通道感受到设计者思想的高级用户界面 。
《VR零基础学习开发》学习大纲
注意:算法、计算机图形学及GPU优化和编程 的系统性学习 及 长期的知识积累!
Unity引擎基础概述
行业知识汇总(引擎概念、游戏发展、VR AR的应用领域)
需求分析“概念”(对于提出的需求可以在逻辑上拆解成相应步骤);
开发工具介绍:VistualStudio IDE、MonoDevelop IDE
C#脚本语言基础:数据类型、数学运算、逻辑运算三大模块基础 。
C#脚本语言模块化开发
过程性模块化封装:方法定义 。理解形参、实参和返回值的意义;
面向对象模块化封装:类对象申请与使用、类对象继承、虚拟化类使用、结构体、枚举、宏;
C#脚本语言面向对象开发
C#语言OOP技术:类对象的创建和使用 。理解构造和析构函数的申请与释放过程、了解C#内存申请释放的处理过程;成员变量属性化操作、纯虚类继承设计方案、类抽象性变化、使用泛型完成任意类型对象、深度复制和浅复制的操作、Object基类的使用、集合应用;
高级数据结构(C#版本)
类对象的抽象接口开发 。
数据结构:单双向链表的构建与实际应用 。栈的构建与使用 。队列的构建与使用;
排序算法:冒泡排序、快速排序、插入排序;

推荐阅读