《虚拟现实脚本与策划》教案-项目3:场景架构与搭建_第1页
《虚拟现实脚本与策划》教案-项目3:场景架构与搭建_第2页
《虚拟现实脚本与策划》教案-项目3:场景架构与搭建_第3页
《虚拟现实脚本与策划》教案-项目3:场景架构与搭建_第4页
《虚拟现实脚本与策划》教案-项目3:场景架构与搭建_第5页
已阅读5页,还剩94页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

任务1架构设计任务描述适配岗位与职责完成项目技术选型,搭建环境,导入相关SDK。安装PicoSimulator,能够在没有Pico头显的情况下测试项目。岗位:VR开发工程师职责:VR项目开发学习目标知识目标:掌握包管理器的使用方式,能够通过本地Json文件方式导入对应的资源。掌握PicoSimulator模拟器插件的导入和使用,能够独立在没有设备的情况下完成项目预览和测试。能力目标:掌握包管理器的使用方式,能够通过本地Json文件方式导入对应的资源。掌握PicoSimulator模拟器插件的导入和使用,能够独立在没有设备的情况下完成项目预览和测试。素质目标:能够独立完成Pico项目环境搭建。能够熟练完成VR项目环境设置工作,确保开发工作顺利进行。学习重难点重点:VR开发环境搭建和设置。不同类型光源的参数内容与参数调试。难点:熟练使用XRI中的DeviceSimulator。修复SDK导入后可能产生的错误,对齐SDK版本,完成打包流程。操作步骤职业知识模拟器的使用场景中添加模拟器工具这个模拟器可以方便我们在后续的开发过程中及时发现自己制作时候出现的问题,预览场景中的效果。步骤1:打开包管理器Window-PackageManager。包管理器是UPM是Unity官方统一组件/插件管理系统,用来统一管理引擎内置模块、官方工具、第三方SDK、自定义插件。确认XRI已安装。页签注意选择成unityregister。选中之后下拉。在下面需要找到模拟器所要使用到的包xriinteractiontoolkit。版本是2.4.1。确认XRDeviceSimulator已导入,如果未导入,可以点击Import。在点击import之后,它会进入一个短暂的下载过程。步骤2:打开DemoScene在Project窗口中搜索DemoScene,打开场景。搜索Simulator预制体。在project窗口中搜索。simulator.找到这里的预制体XRDeviceSimulator。将预制体拖拽到场景中。按CtrlS保存场景。场景名称右上角,原来有一个星号,保存成功后星号消失。调整设置与模拟器使用步骤1:调整设置设置面板XRPlug-inManagement中勾选OpenXR和LivePreview。由于模拟器是在PC的环境中进行运行的,所以这里选中电脑图标页签。勾选Openxr。如果后续想使用PDC,连接设备和电脑进行串流的话,需要注意勾选PicoLivePreview。运行项目,查看效果。点击Camera。场景中的右下角出现了一个MainCamera的小窗口。这个窗口我们可以预览当前物体所能看到的真正的视角。步骤2:操作方式平移头部:WASD键。场景中的摄影机会随着按键进行移动。可以在Camera的小窗口中进行查看。移动人物:左Shift+WASD。左Shift和空格可以分别控制左右手手柄,使用组合按键的方式来控制。按下左Shift+点击鼠标左键:点击左手柄扳机键按下左Shift+移动鼠标:转动左手柄角度按下左Shift+移动鼠标到物体上,按下空格键+G:右手柄抓握物体。按下左Shift+移动鼠标射线指向物体+点击左键:可以模拟左手柄扳机键,和场景上的UI进行交互。工作任务验收步骤1:检查是否完成插件和对应场景的导入。步骤2:检查是否能够熟练使用Simulator完成场景交互。知识点1:模拟器操作模拟器操作复杂程度比较高,在测试的时候优先使用设备进行测试。任务1学习成果自测知识自测(可以是习题或其他,含答案/自测标准)自测内容:新建空项目,能够独立完成VR项目开发的环境搭建。自测标准:打包XRI示例中的DemoScene场景,打包安装后能使用即可。职业能力自测(可以是作业等,含自测标准)自测内容:能够解决在环境配置过程中发现的问题。自测标准:独立完成环境搭建,打包XRI中的示例场景,并能VR头盔流畅运行。职业素质自测(职业素质自测标准)自测内容:能够预估个人完成知识和能力测试过程中的工时,完成开发环境配置。自测标准:工时消耗预测准确(±1h),工程目录命名和结构合理。能力拓展训练能力拓展任务:了解环境配置过程中的设置错误可能会导致的问题。拓展任务操作职业知识参考:4.完成项目配置|PICO开发者平台。参考SDK文档中的步骤完成配置。项目新建以及环境配置是整个开发工作的前提。

模块三设计阶段模块描述该模块要求从架构、场景、光照三个方面对项目进行设计。包括项目的技术选型、VR项目的SDK选择、所需场景及对应的美术资源导入、Pico模拟器的使用、Unity项目资产整合、VR交互设计、井下场景光照效果控制等内容。该阶段是整个项目的设计阶段,是把控项目开发方向的重要部分。模块要求要求该阶段中:技术路线选择合理,难度适中,方便实现和制作,项目制作所有相关的SDK导入完成。场景环境设计与制作合理,符合项目要求。项目文件结构完整,项目目录以及重要文件夹命名正确。井下的光照条件真实合理。模块目标知识目标:能够对开发环境进行搭建、完善和检测。能够理解UnityTransform组件的原理,将场景中的物体修改到合理的位置、大小、旋转参数,顺利完成井下环境搭建。实现井下场景复原。能够理解光照原理和光照性能优化的策略,调整井下实际光照环境。能力目标:能够独立搭建该项目的开发环境。能够熟练使用Unity组件修改场景中的物体,实现环境的静态调整。能够熟练使用Light组件搭建真实的井下环境,并了解Realtime和Baked的区别与使用场景。素质目标:能够将该阶段学习到的组件应用到其他类似项目中去,并实现较好的画面表现。能在解决相关问题时,应用本阶段的知识内容,推进项目顺利进行。任务1架构设计任务描述适配岗位与职责完成项目技术选型,搭建环境,导入相关SDK。安装PicoSimulator,能够在没有Pico头显的情况下测试项目。岗位:VR开发工程师职责:VR项目开发学习目标知识目标:掌握UnityPico项目新建的方式和注意事项,能独立新建空项目。明确在开发Pico项目时需要导入的各种SDK,能解决SDK导入后产生的报错和修复对应的设置。能力目标:掌握包管理器的使用方式,能够通过本地Json文件方式导入对应的资源。掌握PicoSimulator模拟器插件的导入和使用,能够独立在没有设备的情况下完成项目预览和测试。素质目标:能够独立完成Pico项目环境搭建。能够熟练完成VR项目环境设置工作,确保开发工作顺利进行。学习重难点重点:VR开发环境搭建和设置。不同类型光源的参数内容与参数调试。难点:熟练使用XRI中的DeviceSimulator。修复SDK导入后可能产生的错误,对齐SDK版本,完成打包流程。操作步骤职业知识搭建开发环境新建项目工程步骤1:确认编辑器版本确认Module点击NewProject确认版本和模板修改项目名称,修改保存路径,确保不要有中文路径。步骤2:点击Create点击CreateProject等待新建项目完成新建完成SDK导入步骤1:导入PicoUnityIntegration打开包管理器从本地资源中添加包,选择fromdisk找到本地资源路径,粘贴到包导入的路径中找到资源的json文件点击打开,等待导入完成

步骤2:导入完成导入完成后重启编辑器重启后勾选配置,点击应用导入完成后显示项目中已有Package步骤3:导入PreviewPlugin找到本地文件中的Pico串流功能的SDK,同样的方式导入导入VR插件步骤1:导入XRI打开包管理器切换页签找到包管理器中的XRI,点击Install步骤2:导入Samples导入StartAssets和XRDevicesSimulator导入XRHandsProjectSettings步骤1:串流设置Edit-ProjectSettings找到XRPlug-inManagement切换到电脑,勾选PICOLivePreview步骤2:Fix切换到ProjectValidation点击FixAll等待完成打包设置File-BuildSettings确认设置内容,如图即为设置完毕。工作任务验收步骤1:检查是否完成所有SDK导入,检查是否配置完成所有ProjectSettings。步骤2:检查是否将SDK中的Samples导入完成。知识点1Pico环境配置:现在的Pico的SDK都是一键配置的。也可以使用手动配置的方式进行设置。

任务2场景设计任务描述适配岗位与职责使用光照组件、场景资源、着色器等,设计场景,使符合井下真实环境。使用自发光材质,了解静态环境下的烘焙。岗位:VR开发工程师职责:VR项目开发学习目标知识目标:熟练掌握平行光、点光源、聚光灯等各类光源的参数配置与调试方法,可依托光影搭建还原井下真实作业环境氛围。明晰不同光源的光影呈现特征,掌握各类光源的视觉效果差异及典型应用场景。掌握自发光材质编剧。掌握粒子系统中Emission的使用。具备项目性能优化认知,深刻理解性能管控的必要性,熟练掌握Unity常用性能优化方法与实施策略。能力目标:能够熟练使用光照组件调整参数,独立完成课程中所涉及的参数调整。能够实现与课程中相同的井下表现效果,同时保证项目性能稳定。能够独立创建自发光材质的材质球,了解静态物体的灯光影响。素质目标:能熟练使用光照组件制作,使场景呈现真实效果。能够以点及面,发散思考,灵活利用各类灯光组件的特征,将其应用到典型的场景中去。保证场景光照合理,画面真实。学习重难点重点:自发光材质与井下场景中灯光的烘焙。不同类型光源的参数内容与参数调试。不同类型光源的应用场景。难点:掌握着色器代码编写、调用与修改。掌握uv贴图的偏移控制。操作步骤职业知识资源导入格式Unity支持的模型资源步骤1:模型资源查看支持的主流三维模型格式Fbx-最推荐、最通用,支持网格、材质、动画、骨骼Obj-简单模型、无动画用途:矿井巷道、支架、管道、矿工、消防员、避难室设备等场景模型演示步骤2:查看场景中的模型查看AddModel找到模型Shuiliu02_zhi,右键点击ShowinExplore查看模型在本地文件夹中的位置Unity支持的图片资源步骤1:查看场景中的图片资源UI图片资源找到Canvas-Normal-首页找到背景.png,右键-ShowinExplore查看本地文件步骤2:Unity推荐的图片格式.png-带透明通道,UI、特效首选.jpg/.jpeg-场景纹理,无透明用途:巷道墙面,岩石,金属,UI面板等Unity支持的音频资源步骤1:查看项目中的音频资源搜索编号1-1右键-ShowInExplore查看本地文件步骤2:Unity支持的其他格式.wav-无损,短音效推荐.mp3-通用,体积小,背景音乐.ogg-跨平台好,安卓推荐使用用途:火灾声,矿工对话,报警,旁白,生命探测,敲帮问顶Unity支持的视频资源步骤1:查看项目中的视频资源定位火灾视频查看本地文件步骤2:Unity可使用的视频格式.mp4-最通用,Pico项目选择该格式.ogv-不能直接用在pico上,需要转格式Unity支持的其他资源步骤1:字体资源首页面板上的字体查看本地文件中的内容步骤2:着色器文件搜索UVMoveX查看该文件步骤3:.unitypackage文件该文件是Unity特定的资源格式步骤4:dll文件工作任务验收步骤1:检查是否明确Unity中可以导入的音频、视频、模型、字体等各种文件。步骤2:检查是否了解各类文件在Unity中的使用位置和使用方式。知识点1:模型资源Unity中使用的模型资源一般是FBX。而且要求美术一般导出的资源也是FBX。知识点2:图片资源图片用在Ui上时,首先要对图片进行处理,将它转换为Sprite知识点3:音频资源本项目中大量使用的音频格式是.wav格式的。知识点4:视频资源本项目中使用的视频格式均为.mp4格式。

任务2场景设计任务描述适配岗位与职责使用光照组件、场景资源、着色器等,设计场景,使符合井下真实环境。使用自发光材质,了解静态环境下的烘焙。岗位:VR开发工程师职责:VR项目开发学习目标知识目标:熟练掌握平行光、点光源、聚光灯等各类光源的参数配置与调试方法,可依托光影搭建还原井下真实作业环境氛围。明晰不同光源的光影呈现特征,掌握各类光源的视觉效果差异及典型应用场景。掌握自发光材质编剧。掌握粒子系统中Emission的使用。具备项目性能优化认知,深刻理解性能管控的必要性,熟练掌握Unity常用性能优化方法与实施策略。能力目标:能够熟练使用光照组件调整参数,独立完成课程中所涉及的参数调整。能够实现与课程中相同的井下表现效果,同时保证项目性能稳定。能够独立创建自发光材质的材质球,了解静态物体的灯光影响。素质目标:能熟练使用光照组件制作,使场景呈现真实效果。能够以点及面,发散思考,灵活利用各类灯光组件的特征,将其应用到典型的场景中去。保证场景光照合理,画面真实。学习重难点重点:自发光材质与井下场景中灯光的烘焙。不同类型光源的参数内容与参数调试。不同类型光源的应用场景。难点:掌握着色器代码编写、调用与修改。掌握uv贴图的偏移控制。操作步骤职业知识资源导入Assets菜单栏资源导入的方式步骤1:打开菜单栏选中Assets选中ImportPackage选中CustomPackage步骤2:找到本地资源存放路径打开文件夹点击打开,等待一段时间后,导入完成。PackageManager方式导入步骤1:打开包管理器选中Window选中PackageManager点击左上角AddPackagefromdisk步骤2:打开存放资源的路径选择资源存放路径选中对应的资源,点击打开,等待一段时间后导入成果。直接拖拽资源导入Unity步骤1:找到文件位置找到需要导入的资源直接拖拽到Prject窗口下对应的文件夹中步骤2:等到导入进度完成后出现导入资源菜单点击All选中所有资源(3)点击Import,等待导入其他资源导入音频资源导入位置Assets/Resources/Audio变换工具位移工具旋转工具缩放工具工作任务验收步骤1:资源是否完成导入,是否掌握资源导入的几种方式。步骤2:能否通过使用Transform工具完成场景简单编辑。知识点1:CustomPackage应用场景本地的.unitypackage文件知识点2:包管理器应用场景通过包名、git-url或者在线资源时,使用该方式导入资源知识点3:Resources.Load该方式通过Load方法加载Resources文件夹下的资源知识点4:TransformTool变换工具是编辑场景的基础,需要熟练使用

任务2场景设计任务描述适配岗位与职责使用光照组件、场景资源、着色器等,设计场景,使符合井下真实环境。使用自发光材质,了解静态环境下的烘焙。岗位:VR开发工程师职责:VR项目开发学习目标知识目标:熟练掌握平行光、点光源、聚光灯等各类光源的参数配置与调试方法,可依托光影搭建还原井下真实作业环境氛围。明晰不同光源的光影呈现特征,掌握各类光源的视觉效果差异及典型应用场景。掌握自发光材质编剧。掌握粒子系统中Emission的使用。具备项目性能优化认知,深刻理解性能管控的必要性,熟练掌握Unity常用性能优化方法与实施策略。能力目标:能够熟练使用光照组件调整参数,独立完成课程中所涉及的参数调整。能够实现与课程中相同的井下表现效果,同时保证项目性能稳定。能够独立创建自发光材质的材质球,了解静态物体的灯光影响。素质目标:能熟练使用光照组件制作,使场景呈现真实效果。能够以点及面,发散思考,灵活利用各类灯光组件的特征,将其应用到典型的场景中去。保证场景光照合理,画面真实。学习重难点重点:自发光材质与井下场景中灯光的烘焙。不同类型光源的参数内容与参数调试。不同类型光源的应用场景。难点:掌握着色器代码编写、调用与修改。掌握uv贴图的偏移控制。操作步骤职业知识XRI示例场景分析及应用DemoScene案例分析步骤1:打开DemoScene场景搜索场景名称步骤2:场景中的物体及其脚本组件展开TeleportationEnvironmentTeleportArea及其TeleportationArea组件TeleportAnchor及其TeleportationAnchorNon-TeleportableGround(无Teleport相关脚本)场景中的应用步骤1:场景概览切换场景,找到Origin美术资源概览步骤2:预制体的制作和使用新建几何体拖拽到Project中保存为预制体工作任务验收步骤1:检查场景中是否完成VR移动、传送、等功能的制作。是否完成功能对象上脚本添加。步骤2:是否将场景中静态的资源设置为合理的预制体,是否熟练掌握预制体的制作和修改。步骤3:分析后续制作过程中适合用到Prefab的地方。知识点1:XRI中的DemoScene场景该场景是XRI的示例场景,可以在工作场景中直接使用相关预制体。也可以挂载功能脚本进行使用。知识点2:TeleportationAnchorAnchor在使用时需要Collider来触发,当手柄射线进入到碰撞体后可以吸附射线到Anchor上。所以Collider体积和范围需要合理设置。知识点3:XRI中的XRSetup可以直接将该预制体应用到场景中。知识点4:Prefab的使用Prefab使用时要注意,若对Prefab进行修改,完成后需要Apply,撤回修改使用Revert。

任务2场景设计任务描述适配岗位与职责使用光照组件、场景资源、着色器等,设计场景,使符合井下真实环境。使用自发光材质,了解静态环境下的烘焙。岗位:VR开发工程师职责:VR项目开发学习目标知识目标:熟练掌握平行光、点光源、聚光灯等各类光源的参数配置与调试方法,可依托光影搭建还原井下真实作业环境氛围。明晰不同光源的光影呈现特征,掌握各类光源的视觉效果差异及典型应用场景。掌握自发光材质编剧。掌握粒子系统中Emission的使用。具备项目性能优化认知,深刻理解性能管控的必要性,熟练掌握Unity常用性能优化方法与实施策略。能力目标:能够熟练使用光照组件调整参数,独立完成课程中所涉及的参数调整。能够实现与课程中相同的井下表现效果,同时保证项目性能稳定。能够独立创建自发光材质的材质球,了解静态物体的灯光影响。素质目标:能熟练使用光照组件制作,使场景呈现真实效果。能够以点及面,发散思考,灵活利用各类灯光组件的特征,将其应用到典型的场景中去。保证场景光照合理,画面真实。学习重难点重点:自发光材质与井下场景中灯光的烘焙。不同类型光源的参数内容与参数调试。不同类型光源的应用场景。难点:掌握着色器代码编写、调用与修改。掌握uv贴图的偏移控制。操作步骤职业知识矿下巷道墙壁和地面制作可交互的井下矿道地面步骤1:找到矿道平面搜索Plane相关的物体,定位矿道平面的位置找到Plane(1)步骤2:使用TransformTool工具对物体进行修改选中物体使用快捷键进行调整将当前地面面积调整到合适的大小添加墙壁碰撞,在Plane下右键新建Cube步骤3:调整Cube的位置和大小使用TransformTool调整位置调整厚度和墙壁之间的相对位置限制出界的矿井下巷道地面步骤1:地板制作定位Plane(13)查看Plane(13)的区域查看可交互地板和限制出界两种地板的位置步骤2:添加小地图视角上的地板显示移动镜头到俯视角定位到小地图颜色下的Canvas添加灰色Image,放置在巷道顶部添加多个Image,组成巷道地图工作任务验收步骤1:检查是否完成井下移动范围限制地板制作,是否完成可交互地板制作,是否完成巷道墙壁遮挡制作。步骤2:检查是否制作大平面Plane保证用户不会穿过墙壁坠落。步骤3:检查是否完成小地图平面内容制作,包括巷道路线Image,巷道名称Text等。知识点1:异常穿透巷道内部的地板需要添加TeleportationArea。如果把可交互地面拉大到整个平面会导致传送到巷道外部。但是直接移动无法移动到外部。原因就是可交互的地面太大了,导致射线穿过墙壁直接传送到了外部。解决的方法是:将每条巷道独立制作成可交互的地板,将外侧和墙壁缝隙等位置添加范围限制的碰撞体。知识点2:小地图处理小地图是渲染在Canvas上的,需要专门的Camera。为了保证小地图比例正确,可以将Image以相同的大小覆盖在巷道上。同时需要注意的是,要将小地图的Camera渲染层级修改,保证不渲染巷道细节等,既能降低性能消耗,又能让画面更干净清晰。

任务2场景设计任务描述适配岗位与职责使用光照组件、场景资源、着色器等,设计场景,使符合井下真实环境。使用自发光材质,了解静态环境下的烘焙。岗位:VR开发工程师职责:VR项目开发学习目标知识目标:熟练掌握平行光、点光源、聚光灯等各类光源的参数配置与调试方法,可依托光影搭建还原井下真实作业环境氛围。明晰不同光源的光影呈现特征,掌握各类光源的视觉效果差异及典型应用场景。掌握自发光材质编剧。掌握粒子系统中Emission的使用。具备项目性能优化认知,深刻理解性能管控的必要性,熟练掌握Unity常用性能优化方法与实施策略。能力目标:能够熟练使用光照组件调整参数,独立完成课程中所涉及的参数调整。能够实现与课程中相同的井下表现效果,同时保证项目性能稳定。能够独立创建自发光材质的材质球,了解静态物体的灯光影响。素质目标:能熟练使用光照组件制作,使场景呈现真实效果。能够以点及面,发散思考,灵活利用各类灯光组件的特征,将其应用到典型的场景中去。保证场景光照合理,画面真实。学习重难点重点:自发光材质与井下场景中灯光的烘焙。不同类型光源的参数内容与参数调试。不同类型光源的应用场景。难点:掌握着色器代码编写、调用与修改。掌握uv贴图的偏移控制。操作步骤职业知识任务:井下主光源参数的设置任务描述:通过调整平行光的参数,熟练调整它的参数,将环境整体光照调整为合理状态。同时为后续代码控制光照打好基础。相关知识:同个场景中只允许存在一个平行光作为主照明。步骤1:平行光参数调整在Hierarchy窗口找到Lighting→DirectionalLight。光源类型设置为Directional。知识点1:平行光光照组件的使用(1)平行光特性是无衰减的、无范围限制的。(2)唯一的形态变换来自光照方向。(3)需要掌握光源通用的基础参数。渲染模式设置为Realtime。光照强度调整为1。阴影类型设置为NoShadows。确认场景基础照明正常。任务:巷道顶部聚光灯参数调试任务描述:修改巷道顶部的光源,熟悉聚光灯的参数,并能将巷道光照效果调整到合理的状态。相关知识:聚光灯常用来模拟展厅顶部滑轨的灯光或者手电筒。步骤1:聚光灯参数调整打开灯光资源→巷道灯光2→SpotLight并激活。类型设置为Spot。通过Range调整照射距离。知识点2:聚光灯光照组件的使用(1)是锥形定向的发射模式,仅照亮前方特定位置。(2)双重范围约束,同时受到Range和Angle的限制。(3)光斑边缘是有渐进过渡的,保证光斑层次真实自然。通过SpotAngle调整照射角度。按需调整颜色与强度避难室环境中的点光源参数调试任务描述:通过调整避难室中的点光源参数,了解点光源参数的作用。相关知识:点光源的光照强度随着Range进行衰减,所以需要将该参数保证在合理的范围内。步骤:点光源参数调整在Hierarchy搜索PointLight。知识点3:常见问题及处理方式(1)场景全黑看不见物体原因:无光源、强度为0、材质不接收光照处理:添加光源、提高强度、检查材质光照设置。(2)VR运行卡顿、掉帧原因:实时光过多、阴影开启过多处理:关闭阴影、减少光源数量、改用烘焙光。(3)聚光效果异常原因:照射范围/角度设置不当。处理:重新调整Range与SpotAngle参数。观察光照随距离衰减特性。设置强度、范围、颜色参数。关闭阴影和失活对象以优化性能。知识点4:点光源光照组件的使用(1)点光源是球形发散形式,向360°进行发射。(2)存在固定的照射范围,可以通过设置Range实现局部照明。(3)自然距离衰减,符合真实的物理光照规律。任务:自发光材质的制作任务描述:通过新建自发光材质,能够学会使用该类型材质,以及在其他项目中灵活使用该材质构建光照环境。相关知识:自发光物体可以将光源打到静态物体上。步骤:自发光材质参数调整永远都只有步骤1略怪,可看实际情况调整永远都只有步骤1略怪,可看实际情况调整在Project窗口右键→Create→Material。步骤2:选中材质,开启Emission参数。设置自发光颜色与强度。知识点5:自发光材质的使用(1)自发光是材质驱动发光,不受环境影响。(2)默认无物理光照投射状态,不产生阴影。(3)可以通过发光强度设置自发光材质的质感。知识点6:注意事项(1)调试完成后须失活巷道灯光1、巷道灯光2,两个对象。(2)禁止大量使用实时光照。(3)以性能稳定为第一原则。五、工作任务验收步骤1:光源激活与失活状态正确,无异常光。步骤2:光照强度、颜色、范围符合井下情况。步骤3:程序运行流畅,无卡顿、掉帧。步骤4:工程层级清晰,无多余对象。

任务2场景设计任务描述适配岗位与职责使用光照组件、场景资源、着色器等,设计场景,使符合井下真实环境。使用自发光材质,了解静态环境下的烘焙。岗位:VR开发工程师职责:VR项目开发学习目标知识目标:熟练掌握平行光、点光源、聚光灯等各类光源的参数配置与调试方法,可依托光影搭建还原井下真实作业环境氛围。明晰不同光源的光影呈现特征,掌握各类光源的视觉效果差异及典型应用场景。掌握自发光材质编剧。掌握粒子系统中Emission的使用。具备项目性能优化认知,深刻理解性能管控的必要性,熟练掌握Unity常用性能优化方法与实施策略。能力目标:能够熟练使用光照组件调整参数,独立完成课程中所涉及的参数调整。能够实现与课程中相同的井下表现效果,同时保证项目性能稳定。能够独立创建自发光材质的材质球,了解静态物体的灯光影响。素质目标:能熟练使用光照组件制作,使场景呈现真实效果。能够以点及面,发散思考,灵活利用各类灯光组件的特征,将其应用到典型的场景中去。保证场景光照合理,画面真实。学习重难点重点:自发光材质与井下场景中灯光的烘焙。不同类型光源的参数内容与参数调试。不同类型光源的应用场景。难点:掌握着色器代码编写、调用与修改。掌握uv贴图的偏移控制。操作步骤职业知识着色器什么是着色器着色器代码就是告诉GPU:这个物体长什么样,什么颜色,亮不亮,透明不透明,怎么动,这一系列特点的代码。示例代码如下://Shader名称:Custom/ScrollingX//功能:UV横向滚动+自发光+透明+支持顶点色Shader"Custom/ScrollingX"{//材质面板可编辑的参数(Inspector显示)Properties{_Color("主颜色",Color)=(1,1,1,1)//主颜色(可叠加纹理颜色)_ScrollU("U方向滚动速度",Float)=1//水平方向(X)滚动速度_ScrollV("V方向滚动速度",Float)=1//垂直方向(Y)滚动速度(本Shader没使用)_MainTex("基础纹理",2D)="white"{}//主纹理}SubShader{//标签:透明队列+透明渲染类型//Transparent=开启透明混合Tags{"Queue"="Transparent""IgnoreProjector"="True""RenderType"="Transparent"}LOD200//细节等级,不影响功能//声明CG代码块CGPROGRAM//表面着色器:surf函数+Lambert光照+支持透明(alpha)#pragmasurfacesurfLambertalpha//变量链接(和Properties对应)sampler2D_MainTex;//纹理fixed4_Color;//颜色float_ScrollU;//U滚动速度float_ScrollV;//V滚动速度//输入结构:从网格/系统传递的数据structInput{float2uv_MainTex;//纹理UV坐标float4color:COLOR;//网格顶点颜色};//表面着色器函数(核心逻辑)voidsurf(InputIN,inoutSurfaceOutputo){//====================核心====================//UV坐标+时间偏移=纹理滚动//_Time是Unity内置时间变量//float2(-_ScrollU,0)表示只在X轴滚动//===============================================float2scrollUV=IN.uv_MainTex+(_Time*float2(-_ScrollU,0));//采样纹理×主颜色×顶点色→最终颜色fixed4c=tex2D(_MainTex,scrollUV)*_Color*IN.color;//自发光=纹理颜色(VR高亮、指引专用)o.Emission=c.rgb;//透明通道=纹理的Alphao.Alpha=c.a;}ENDCG}//备用FallbackFallback"Transparent/VertexLit"}编写Shader步骤1:定位传送带材质的小球uvSphere找到该小球的材质球点击该材质球选中该材质球,查看Inspector面板步骤2:偏移原理改变ScrollU/V搜索UVMoveX查看该着色器双击在IDE中打开步骤3:Shader代码结构Shader的名称Shader名称的内容会体现在Inspector的选择上步骤4:如何在材质球上使用着色器新建材质球新建Shader将Shader拖拽到Material上双击打开Shader文件,即可进行编辑步骤5:UVMoveX编写Properties代码块子着色器SubShader表面着色器表面着色器核心函数工作任务验收步骤1:检查能否熟练新建材质球使用Shdaer。步骤2:检查是否正常控制传送带uv的停止和播放知识点1:着色器着色器渲染画面是个非常复杂的过程,可以学习UnithShader和图形学相关的知识。知识点2:Properties着色器暴露在外面变量类型可以是Color、也可以是Float,变量种类比较多。还有:数据Fixed,贴图Sampler,向量Float3、4,或者是矩阵Float4*4。根据要取到的内容不同,使用不同的变量类型。知识点3:编写Shader方式和编写C#代码一样,都是在IDE中进行编辑。可以使用一些插件,方便代码补全和关键字高亮。知识点4:控制UV偏移可以使用SetFloat方法来控制UV的偏移

任务2场景设计任务描述适配岗位与职责使用光照组件、场景资源、着色器等,设计场景,使符合井下真实环境。使用自发光材质,了解静态环境下的烘焙。岗位:VR开发工程师职责:VR项目开发学习目标知识目标:熟练掌握平行光、点光源、聚光灯等各类光源的参数配置与调试方法,可依托光影搭建还原井下真实作业环境氛围。明晰不同光源的光影呈现特征,掌握各类光源的视觉效果差异及典型应用场景。掌握自发光材质编剧。掌握粒子系统中Emission的使用。具备项目性能优化认知,深刻理解性能管控的必要性,熟练掌握Unity常用性能优化方法与实施策略。能力目标:能够熟练使用光照组件调整参数,独立完成课程中所涉及的参数调整。能够实现与课程中相同的井下表现效果,同时保证项目性能稳定。能够独立创建自发光材质的材质球,了解静态物体的灯光影响。素质目标:能熟练使用光照组件制作,使场景呈现真实效果。能够以点及面,发散思考,灵活利用各类灯光组件的特征,将其应用到典型的场景中去。保证场景光照合理,画面真实。学习重难点重点:自发光材质与井下场景中灯光的烘焙。不同类型光源的参数内容与参数调试。不同类型光源的应用场景。难点:掌握着色器代码编写、调用与修改。掌握uv贴图的偏移控制。操作步骤职业知识资产整合设计原则分类按业务功能分类,不按文件类型乱堆同一场景、同一模块的模型、贴图、材质、脚本集中管理,不把所有贴图放一起、所有脚本放一起造成混乱。全英文命名,禁用中文、空格、特殊符号避免打包报错、路径乱码、版本控制冲突。层级标准化,控制在3级以内层级太深查找低效,层级太浅杂乱无章。代码与资源分离、正式资源与测试资源分离规范工程结构,便于多人协作、后期维护、资源删减与打包瘦身。统一命名格式,见名知意通过前缀区分资源类型,一眼识别模型、贴图、材质、特效、UI、脚本。特殊文件夹Assets根目录标准一级文件夹Scenes场景文件夹存放所有

.unity

场景文件,按业务模块分子目录:规范:存放所有.unity场景文件,按业务模块分子目录:scenes_mine井下实训场景scenes_uiUI登录、主页场景scenes_vrVR专属实训场景scenes_test测试场景规范:场景命名:scene_mine_main、scene_vr_escape不直接把场景扔在Scenes根目录Scripts脚本文件夹大驼峰命名,按功能分层:Manager全局管理器(灯光、音效、场景、交互管理器)UI所有UI面板、按钮、弹窗逻辑VRPico手势、VR交互、瞬移、视线聚焦Light灯光控制、自发光逻辑Particle粒子特效控制脚本Tool通用工具类、拓展方法、公共函数Config配置数据、常量定义规范:脚本名大驼峰:LightControl.cs、GestureInteract.cs工具类、单例管理器单独归类,不散落。Prefabs预制体文件夹存放外部导入FBX/OBJ三维模型:model_mine井下巷道、管道、支架场景模型model_device设备仪器、机械构件model_prop杂物、道具、装饰模型规范:模型自带贴图尽量剥离,统一放到Textures对应目录,不嵌在模型文件夹里。Textures贴图文件夹所有png/jpg/tga纹理,按用途分:tex_model模型纹理、漫反射、法线、高光贴图tex_uiUI图标、背景、边框tex_fx粒子贴图、光斑、烟雾、火焰贴图tex_terrain地形、地面、墙面重复贴图命名规范前缀:模型贴图:tex_wall_01UI贴图:ui_icon_setting粒子贴图:fx_texture_flameMaterial材质文件夹统一存放所有材质球,禁止散落在模型、贴图目录:mat_light灯光专用材质、自发光材质mat_model普通场景模型材质mat_fx粒子特效材质(叠加、发光、透明)mat_uiUI专用材质命名前缀:mat_开头,如mat_emission_blue。Audio音频文件夹bgm背景音乐、环境氛围音sfx按钮点击、碰撞、警报、设备音效voice旁白解说、人物语音FX特效文件夹专门存放粒子系统相关资源:fx_particle粒子预设、粒子配置fx_light光影光晕、镜头耀斑fx_preset做好的成套特效预制体UI文件夹完整UI资源归口:ui_atlas图集ui_font字体资源ui_panel面板背景、弹窗底图ui_icon各类功能图标Resources文件夹只有需要代码动态加载的资源放这里:如动态实例化的道具、音效、弹窗预制体。普通资源严禁随意放入,会增大打包体积、拖慢加载。Plugins文件夹存放第三方库、SDK:PICOXR插件第三方SDK、原生dll拓展工具插件Settings文件夹存放项目配置:渲染管线配置、输入设置、XR配置、图层标签配置、物理配置等。_Temp临时文件夹所有测试资源、临时模型、临时场景、未完工资源全部放这里。项目打包、提交版本前必须清空或删除。命名和其他规范脚本命名规范严格大驼峰,见名知意。如:VrGestureManager、ParticleEffectCtrl、LightAutoSwitch其他规范禁止任何资源直接放在

Assets

根目录;模型、贴图、材质一一对应归类,不跨目录乱放;导入第三方资源后,必须按本结构重新整理归档;废弃资源及时清理,不留在正式目录里堆积;测试内容统一放

_Temp,不混入正式业务目录。工作任务验收步骤1:了解各类文件夹的结构和作用,了解资源加载的特殊文件夹的命名。步骤2:查看脚本制作的时候的命名,保证符合脚本名称的命名规范。知识点1:特殊文件夹资源加载的文件夹有Resources和StreamingAssets,本项目中的音频文件放在了StreamingAssets中。

任务2场景设计任务描述适配岗位与职责使用光照组件、场景资源、着色器等,设计场景,使符合井下真实环境。使用自发光材质,了解静态环境下的烘焙。岗位:VR开发工程师职责:VR项目开发学习目标知识目标:熟练掌握平行光、点光源、聚光灯等各类光源的参数配置与调试方法,可依托光影搭建还原井下真实作业环境氛围。明晰不同光源的光影呈现特征,掌握各类光源的视觉效果差异及典型应用场景。掌握自发光材质编剧。掌握粒子系统中Emission的使用。具备项目性能优化认知,深刻理解性能管控的必要性,熟练掌握Unity常用性能优化方法与实施策略。能力目标:能够熟练使用光照组件调整参数,独立完成课程中所涉及的参数调整。能够实现与课程中相同的井下表现效果,同时保证项目性能稳定。能够独立创建自发光材质的材质球,了解静态物体的灯光影响。素质目标:能熟练使用光照组件制作,使场景呈现真实效果。能够以点及面,发散思考,灵活利用各类灯光组件的特征,将其应用到典型的场景中去。保证场景光照合理,画面真实。学习重难点重点:自发光材质与井下场景中灯光的烘焙。不同类型光源的参数内容与参数调试。不同类型光源的应用场景。难点:掌握着色器代码编写、调用与修改。掌握uv贴图的偏移控制。操作步骤职业知识项目文件整理文件夹整理脚本、预制体、模型资源步骤1:新建文件夹右键-Create-Folder移动场景文件到该文件夹中步骤2:移动Script文件夹到Scripts下步骤3:管理Prefabs文件夹新建FolderRename步骤4:管理Models的文件夹新建FolderRename其他文件管理步骤1:同样的方式进行管理运用资产整合-1课程中的文件夹管理相关知识,如果场景资源缺少对应的文件夹,则需要手动进行创建。Plugins管理,将BuskitFramework,BuskitPlugins移动到Plugins文件夹下。要使用的视频和音频文件保存在StreamingAssets下。步骤2:删除Project中的其他文件Assets根目录下不能放资源文件,需要将其移动到对应类型的资源文件夹下。新建_Temp临时文件夹,将临时脚本,测试场景等临时文件放到该文件夹下,避免打包体积过大。移动五大灾害模型文件夹到Models下确认将当前项目文件结构整理为:工作任务验收步骤1:检查是否按照资产整合-1中的要求,将当前导入到场景中的资产文件进行整理。步骤2:检查最终是否将文件夹结构整理为最终图片上的内容。知识点1:文件整理文件整理是软件工程项目管理思维的一部分。任务2学习成果自测知识自测(可以是习题或其他,含答案/自测标准)自测内容:新建空项目。按照本节任务中的要求对全场景中的灯光参数进行调整。自测标准:达到本任务中相似的画面表现和性能表现。灯光设计合理即可。职业能力自测(可以是作业等,含自测标准)自测内容:能够独立完成VR环境搭建,导入相关功能SDK。自测标准:独立完成环境搭建,打包XRI中的示例场景,并能VR头盔流畅运行。职业素质自测(职业素质自测标准)自测内容:能够预估个人完成知识和能力测试过程中的工时,完成项目目录文件夹整理。自测标准:工时消耗预测准确(±1h),工程目录命名和结构合理。能力拓展训练能力拓展任务:学习区域光(AreaLight)的使用拓展任务操作职业知识参考:光源-Unity手册

了解光照组件的其他信息。区域光常在模拟窗户光照、无影灯等光照的效果。

任务3光照设计任务描述适配岗位与职责了解VR项目中VR和UI的交互设计,能够理解交互设计的原因。制作物体光照效果控制的代码实现场景效果管理。了解特效制作的常用方式和本项目中使用的粒子系统。岗位:VR开发工程师职责:VR项目开发学习目标知识目标:能够了解VR交互设计和UI设计的原则以及如何适配项目的设备进行设计和优化。明确光照控制脚本的作用,如何编写,各个代码块的作用,以及光照控制的原理。理解不同特效制作方式的优缺点,能根据当前项目选择合适的粒子制作方式。能力目标:理解VR项目UI布局设计的规范,框架和硬件的适配。优化交互体验和防止眩晕的优化。能独立完成光照调整脚本编写,完成场景物体关联,明确光照控制脚本的原理。素质目标:能统一色彩设计的体系,搭建沉稳专业色调的UI界面。能够区分三大特效体系。了解拖尾和轨迹特效,了解全平台和VR项目特效的性能优化。学习重难点重点:理解交互的整体规划,体验优化的设计原则,硬件适配的设计。熟练使用光照控制API制作功能。难点:三种特效制作方式的适用场景和制作流程。操作步骤职业知识物体光照效果控制定位场景中的光照对象步骤1:激活巷道灯光1和2编辑器搜索名称找到巷道灯光对象,避免层级海量物体逐一翻找的低效操作,直接锁定灯光操控主体全选,激活灯光对象查看效果,激活灯光对象以及快速校验整体光照氛围、光影细节是否达标步骤2:调整灯光使用一键关闭巷道全部灯光,对照明暗两种场景效果搜索DirectionalLight,快速筛选出场景中的平行光对象,其为巷道整体环境光照的核心光源修改光照效果,精细化修改光源各项属性步骤1:定位到光源对象找到平行光调整Light步骤2:调整参数调整Intensity,巷道灯光的发光亮度,实现光照明暗效果的调校调整Color,可以通过设置Realtime的RenderMode来实时显示光照颜色。光照调整面板代码,定义关联对象的变量名,用于后续光照面板的交互控制。步骤1:全局变量和对象关联定义关联对象的变量名光源遍历搜索DirectionalLight,用FindObjectsOftvpe<Light>()获取场景所有灯光,再通过循环逐个判断灯光类型,找到Directional平行光后保存引用通过借助

transform.Find("控件名称")

依据物体层级名字找到面板上的滑块、按钮、开关,再用

GetComponent

拿到对应组件,完成脚本和UI控件的绑定。步骤2:添加UI监听Button的onClick监听,点击按钮就会执行该方法,把光照的颜色、强度恢复成初始默认值。Slider的onValueChanged监听:lambda匿名回调绑定点击事件,点击关闭按钮时,直接把当前光照控制面板隐藏,实现关闭面板的效果。ChangeColorSlider方法:监听颜色滑块拖动事件,低值时灯光固定白光兜底,基于HSV实现灯光色彩平滑渐变。工作任务验收步骤1:检查是否关闭场景中多余的光源,只保留一个平行光。步骤2:检查代码中组件的名称是否与面板上的名称统一,检查代码监听内容是否编写正确。检查监听是否添加绑定。知识点1:光源数量限制本项目是VR项目,对性能要求较为苛刻,避免使用过多实时光。知识点2:参数面板参数面板中使用比较多的是Intensity强度、Color颜色、Mode渲染模式。知识点3:关联方式这里也可以手动进行关联,省去了搜索的步骤。知识点4:改变颜色这里使用0.1-1的滑块值映射为360度的色调,保证色彩变化均匀。

任务3光照设计任务描述适配岗位与职责了解VR项目中VR和UI的交互设计,能够理解交互设计的原因。制作物体光照效果控制的代码实现场景效果管理。了解特效制作的常用方式和本项目中使用的粒子系统。岗位:VR开发工程师职责:VR项目开发学习目标知识目标:能够了解VR交互设计和UI设计的原则以及如何适配项目的设备进行设计和优化。明确光照控制脚本的作用,如何编写,各个代码块的作用,以及光照控制的原理。理解不同特效制作方式的优缺点,能根据当前项目选择合适的粒子制作方式。能力目标:理解VR项目UI布局设计的规范,框架和硬件的适配。优化交互体验和防止眩晕的优化。能独立完成光照调整脚本编写,完成场景物体关联,明确光照控制脚本的原理。素质目标:能统一色彩设计的体系,搭建沉稳专业色调的UI界面。能够区分三大特效体系。了解拖尾和轨迹特效,了解全平台和VR项目特效的性能优化。学习重难点重点:理解交互的整体规划,体验优化的设计原则,硬件适配的设计。熟练使用光照控制API制作功能。难点:三种特效制作方式的适用场景和制作流程。操作步骤职业知识Unity特效体系在Unity项目开发中,特效是提升画面表现力、营造场景氛围、强化交互反馈的核心内容,无论是游戏场景、VR实训项目、仿真演示还是三维交互场景,都离不开各类视觉特效。Unity目前主流分为三大特效体系:传统粒子系统ParticleSystem、GPU可视化特效VFXGraph、全局屏幕后期特效,再搭配特效材质、贴图规范、性能优化、交互逻辑、项目规范整套体系,构成完整的Unity特效工作流程。内置粒子系统ParticleSystem这是Unity最早、使用最广泛、兼容性最强的CPU端粒子特效,也是项目中使用率最高的基础特效工具,适配所有渲染管线,低端设备、移动端、VR设备都能稳定运行。适用场景火焰、烟雾、水汽、落叶、雪花、雨滴、枪口火花、灰尘飘散、小范围爆炸碎屑、技能小光效、拖尾特效等中小型常规视觉效果。运行原理由CPU实时计算每一个粒子的生成位置、运动轨迹、生命周期、大小颜色变化,逐帧更新粒子状态后提交GPU渲染,计算压力集中在CPU。核心功能模块主模块控制粒子整体时长、初始生命周期、初始大小、初始速度、全局重力、粒子初始旋转与整体缩放;发射模块控制粒子持续发射速率与瞬间爆发数量,爆发模式多用于爆炸、冲击类瞬时特效;发射形状模块决定粒子从点、球形、锥形、立方体、模型表面等区域生成;生命周期速度模块实现粒子上升、飘散、下坠、回旋等动态运动;生命周期颜色模块制作颜色渐变效果,比如火焰由亮黄转为暗红再透明消散;生命周期大小模块实现粒子从小到大、从大收缩消失的动态变化;旋转模块控制粒子自身转动角度与转动速度;外力场模块可搭配风力、阻力模拟自然飘动效果;渲染模块决定粒子贴图、材质、渲染层级与透明叠加方式。优缺点总结优点参数简单易上手、调试直观、打包体积小、全平台兼容、VR项目运行稳定;缺点单场景粒子承载数量有限,大量密集特效容易造成CPU卡顿,复杂流体物理效果难以实现。VFXGraph可视化节点特效Unity为URP通用渲染管线、HDRP高清渲染管线推出的GPU端高性能特效系统,采用节点式可视化编辑,脱离传统参数面板操作。适用场景大范围火海、巨型爆炸、海量粒子洪流、流体流动、激光束、能量法阵、群体碎片、大范围沙尘等高密度、大场面炫酷特效。运行原理所有粒子生成、运动、受力、碰撞逻辑全部交由GPU并行计算,大幅度解放CPU性能,可同时承载数万甚至上百万数量粒子。核心逻辑整体分为四大固定流程节点,生成节点控制粒子生成时机、生成数量、生成间隔;初始化节点定义粒子出生瞬间的位置、朝向、大小、颜色、初始速度;更新节点编写粒子全程运动逻辑,添加重力、风力、碰撞反弹、轨迹偏移等物理效果;输出节点选择粒子渲染形态,支持面片粒子、条状粒子、网格模型粒子、点状粒子多种形态输出。使用前提必须项目切换至URP或HDRP渲染管线,内置渲染管线无法使用VFXGraph,低端移动端设备慎用,容易出现帧率下滑。屏幕后处理特效PostProcessing不属于场景内实体特效,是挂载在相机上的全局画面滤镜,作用于整个视图画面,统一整体画面风格与氛围质感。主流常用后期效果泛光光晕Bloom,让画面中高亮物体产生发光扩散效果,强化火光、灯光、技能光效真实感;色彩分级调色,统一场景冷暖色调、调整对比度、饱和度、明暗亮度,快速定义场景风格;暗角效果,压暗画面四周视觉,聚焦画面中心主体,提升沉浸感;镜头畸变模拟广角视野,多用于VR第一人称项目增强临场感;景深效果实现近实远虚,突出重点物体,VR项目谨慎使用容易引发视觉眩晕;胶片颗粒、色差偏移多用于写实影视风格场景。项目使用规范多余复杂后期全部关闭,保障运行帧率。特效必备材质与贴图知识点特效贴图规范特效贴图优先使用方形尺寸,常用尺寸256*256、512*512,禁止使用1024及以上大尺寸贴图,减少内存占用;所有透明特效贴图必须携带Alpha透明通道,边缘裁剪干净,杜绝黑边白边;特效贴图格式移动端选用ETC2格式,VR设备统一压缩贴图精度。专属特效材质Unity内置标准粒子材质、无光照粒子材质、URP专属轻快特效材质三大类;制作发光特效优先选用无光照材质,不受场景实时光照影响,效果更加纯净稳定;实景氛围特效选用受光材质,贴合场景光影环境。遮罩与序列帧特效序列帧动画特效是特效常用制作方式,将火焰爆炸、魔法动作拆分多张帧图拼接成图集,通过粒子播放速度切换帧图,实现流畅动画效果,是低成本制作动态特效的核心手段。工作任务验收步骤1:了解Untiy中特效制

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论